{"id":21423227,"url":"https://github.com/asyncapi/server-api","last_synced_at":"2025-08-15T16:30:32.794Z","repository":{"id":38355665,"uuid":"418476433","full_name":"asyncapi/server-api","owner":"asyncapi","description":"Server API providing official AsyncAPI tools","archived":false,"fork":false,"pushed_at":"2024-06-11T12:13:34.000Z","size":6201,"stargazers_count":30,"open_issues_count":2,"forks_count":33,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-10-29T22:38:04.618Z","etag":null,"topics":["asyncapi","docker","get-global-node-release-workflows","get-global-releaserc","hacktoberfest","nodejs"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/asyncapi.png","metadata":{"funding":{"github":"asyncapi","patreon":null,"open_collective":"asyncapi","ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":null},"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-10-18T11:47:29.000Z","updated_at":"2024-10-15T22:59:55.000Z","dependencies_parsed_at":"2023-12-15T22:42:32.920Z","dependency_job_id":"6e572d4d-8cc5-4753-9424-e36a6667dc14","html_url":"https://github.com/asyncapi/server-api","commit_stats":{"total_commits":328,"total_committers":17,"mean_commits":"19.294117647058822","dds":"0.12195121951219512","last_synced_commit":"241b124dce0ccba68b03340d1a2eb373bf785c2d"},"previous_names":[],"tags_count":164,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/asyncapi%2Fserver-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/asyncapi%2Fserver-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/asyncapi%2Fserver-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/asyncapi%2Fserver-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/asyncapi","download_url":"https://codeload.github.com/asyncapi/server-api/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":228810871,"owners_count":17975604,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["asyncapi","docker","get-global-node-release-workflows","get-global-releaserc","hacktoberfest","nodejs"],"created_at":"2024-11-22T21:15:10.011Z","updated_at":"2024-12-16T08:14:09.356Z","avatar_url":"https://github.com/asyncapi.png","language":"TypeScript","funding_links":["https://github.com/sponsors/asyncapi","https://opencollective.com/asyncapi"],"categories":[],"sub_categories":[],"readme":"[![AsyncAPI Server API](./.github/assets/banner.png)](https://www.asyncapi.com)\n\nServer API providing official AsyncAPI tools.\n\n\u003c!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section --\u003e\n[![All Contributors](https://img.shields.io/badge/all_contributors-6-orange.svg?style=flat-square)](#contributors-)\n\u003c!-- ALL-CONTRIBUTORS-BADGE:END --\u003e\n\n---\n\n## :loudspeaker: ATTENTION:\n\nThis package is still under development and has not published and reached version 1.0.0 yet. This means that its API may contain breaking changes until we're able to deploy the first stable version and begin semantic versioning.\n\n---\n\n\u003c!-- toc is generated with GitHub Actions do not remove toc markers --\u003e\n\n\u003c!-- toc --\u003e\n\n- [Requirements](#requirements)\n- [Using it locally](#using-it-locally)\n- [Using it via Docker](#using-it-via-docker)\n- [Development](#development)\n- [Deployment](#deployment)\n  * [How the GitHub workflow works](#how-the-github-workflow-works)\n- [Contribution](#contribution)\n- [Supported by](#supported-by)\n- [Contributors](#contributors)\n\n\u003c!-- tocstop --\u003e\n\n## Requirements\n\n- [NodeJS](https://nodejs.org/en/) \u003e= 14\n\n## Using it locally\n\nRun:\n\n```bash\nnpm install\nnpm run start:prod\n```\n\nserver is ready to use on [http://localhost:80](http://localhost:80).\n\n## Using it via Docker\n\nRun:\n\n```bash\ndocker run -it -p 80:80 asyncapi/server-api\n```\n\nserver is ready to use on [http://localhost:80](http://localhost:80).\n\n## Development\n\n1. Setup project by installing dependencies `npm install`\n2. Write code and tests.\n3. Make sure all tests pass `npm test`\n\n## Deployment\n\nThis project is deployed to [DigitalOcean App Platform](https://www.digitalocean.com/products/app-platform/) using [Terraform](https://www.terraform.io/) and [GitHub Actions](https://www.github.com/digitalocean/app_action/). To deploy it to your own account, follow these steps:\n\n1. Fork this repository.\n2. Create a [DigitalOcean Personal Access Token](https://cloud.digitalocean.com/account/api/tokens) with `read` and `write` permissions. For more information, see [DigitalOcean's documentation](https://docs.digitalocean.com/reference/api/create-personal-access-token/).\n3. Run `terraform init` to initialize the Terraform project as can be seen [here](./deployments/apps/main.tf). This should be run being located at ./deployments/apps directory preferably.\n4. Run `terraform apply` to create the necessary infrastructure. \n\n\u003e [!NOTE]\n\u003e You need to export the following environment variables before running `terraform apply`:\n\u003e - `DIGITALOCEAN_ACCESS_TOKEN`: Your DigitalOcean Personal Access Token.\n\n\n### How the GitHub workflow works\n\nThe [GitHub workflow](./.github/workflows/release-docker.yml) is triggered when a new tag is pushed to the repository. It will build a new Docker image and push it to the [Docker Hub](https://hub.docker.com/r/asyncapi/server-api) repository. Then the [DigitalOcean App Platform GitHub Action](https://www.github.com/digitalocean/app_action/) updates the application with the new image.\n\n## Contribution\n\nRead [CONTRIBUTING](https://github.com/asyncapi/.github/blob/master/CONTRIBUTING.md) guide.\n\n## Supported by\n\n\u003cp\u003e\n  \u003ca href=\"https://www.digitalocean.com/\"\u003e\n    \u003cimg src=\"https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg\" width=\"201px\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n## Contributors\n\nThanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):\n\n\u003c!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section --\u003e\n\u003c!-- prettier-ignore-start --\u003e\n\u003c!-- markdownlint-disable --\u003e\n\u003ctable\u003e\n  \u003ctbody\u003e\n    \u003ctr\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/magicmatatjahu\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/20404945?v=4?s=100\" width=\"100px;\" alt=\"Maciej Urbańczyk\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eMaciej Urbańczyk\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#maintenance-magicmatatjahu\" title=\"Maintenance\"\u003e🚧\u003c/a\u003e \u003ca href=\"https://github.com/asyncapi/server-api/commits?author=magicmatatjahu\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"https://github.com/asyncapi/server-api/commits?author=magicmatatjahu\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"https://github.com/asyncapi/server-api/issues?q=author%3Amagicmatatjahu\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e \u003ca href=\"#ideas-magicmatatjahu\" title=\"Ideas, Planning, \u0026 Feedback\"\u003e🤔\u003c/a\u003e \u003ca href=\"https://github.com/asyncapi/server-api/pulls?q=is%3Apr+reviewed-by%3Amagicmatatjahu\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e \u003ca href=\"https://github.com/asyncapi/server-api/commits?author=magicmatatjahu\" title=\"Tests\"\u003e⚠️\u003c/a\u003e \u003ca href=\"#infra-magicmatatjahu\" title=\"Infrastructure (Hosting, Build-Tools, etc)\"\u003e🚇\u003c/a\u003e \u003ca href=\"#mentoring-magicmatatjahu\" title=\"Mentoring\"\u003e🧑‍🏫\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://bolt04.github.io/react-ultimate-resume/\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/18630253?v=4?s=100\" width=\"100px;\" alt=\"David Pereira\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eDavid Pereira\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#maintenance-BOLT04\" title=\"Maintenance\"\u003e🚧\u003c/a\u003e \u003ca href=\"https://github.com/asyncapi/server-api/commits?author=BOLT04\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"https://github.com/asyncapi/server-api/commits?author=BOLT04\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"https://github.com/asyncapi/server-api/issues?q=author%3ABOLT04\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e \u003ca href=\"#ideas-BOLT04\" title=\"Ideas, Planning, \u0026 Feedback\"\u003e🤔\u003c/a\u003e \u003ca href=\"https://github.com/asyncapi/server-api/pulls?q=is%3Apr+reviewed-by%3ABOLT04\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e \u003ca href=\"https://github.com/asyncapi/server-api/commits?author=BOLT04\" title=\"Tests\"\u003e⚠️\u003c/a\u003e \u003ca href=\"#infra-BOLT04\" title=\"Infrastructure (Hosting, Build-Tools, etc)\"\u003e🚇\u003c/a\u003e \u003ca href=\"#mentoring-BOLT04\" title=\"Mentoring\"\u003e🧑‍🏫\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://github.com/smoya\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/1083296?v=4?s=100\" width=\"100px;\" alt=\"Sergio Moya\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eSergio Moya\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"#maintenance-smoya\" title=\"Maintenance\"\u003e🚧\u003c/a\u003e \u003ca href=\"https://github.com/asyncapi/server-api/commits?author=smoya\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"https://github.com/asyncapi/server-api/commits?author=smoya\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"https://github.com/asyncapi/server-api/issues?q=author%3Asmoya\" title=\"Bug reports\"\u003e🐛\u003c/a\u003e \u003ca href=\"#ideas-smoya\" title=\"Ideas, Planning, \u0026 Feedback\"\u003e🤔\u003c/a\u003e \u003ca href=\"https://github.com/asyncapi/server-api/pulls?q=is%3Apr+reviewed-by%3Asmoya\" title=\"Reviewed Pull Requests\"\u003e👀\u003c/a\u003e \u003ca href=\"https://github.com/asyncapi/server-api/commits?author=smoya\" title=\"Tests\"\u003e⚠️\u003c/a\u003e \u003ca href=\"#infra-smoya\" title=\"Infrastructure (Hosting, Build-Tools, etc)\"\u003e🚇\u003c/a\u003e \u003ca href=\"#mentoring-smoya\" title=\"Mentoring\"\u003e🧑‍🏫\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://ritik307.github.io/portfolio/\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/22374829?v=4?s=100\" width=\"100px;\" alt=\"Ritik Rawal\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eRitik Rawal\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/asyncapi/server-api/commits?author=ritik307\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"https://github.com/asyncapi/server-api/commits?author=ritik307\" title=\"Documentation\"\u003e📖\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"https://everly-precia.netlify.app/\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/77877486?v=4?s=100\" width=\"100px;\" alt=\"Everly Precia Suresh\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eEverly Precia Suresh\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/asyncapi/server-api/commits?author=everly-gif\" title=\"Code\"\u003e💻\u003c/a\u003e \u003ca href=\"https://github.com/asyncapi/server-api/commits?author=everly-gif\" title=\"Documentation\"\u003e📖\u003c/a\u003e\u003c/td\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"14.28%\"\u003e\u003ca href=\"http://ashishpadhy.live\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/100484401?v=4?s=100\" width=\"100px;\" alt=\"Ashish Padhy\"/\u003e\u003cbr /\u003e\u003csub\u003e\u003cb\u003eAshish Padhy\u003c/b\u003e\u003c/sub\u003e\u003c/a\u003e\u003cbr /\u003e\u003ca href=\"https://github.com/asyncapi/server-api/commits?author=Shurtu-gal\" title=\"Documentation\"\u003e📖\u003c/a\u003e \u003ca href=\"#infra-Shurtu-gal\" title=\"Infrastructure (Hosting, Build-Tools, etc)\"\u003e🚇\u003c/a\u003e\u003c/td\u003e\n    \u003c/tr\u003e\n  \u003c/tbody\u003e\n\u003c/table\u003e\n\n\u003c!-- markdownlint-restore --\u003e\n\u003c!-- prettier-ignore-end --\u003e\n\n\u003c!-- ALL-CONTRIBUTORS-LIST:END --\u003e\n\nThis project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fasyncapi%2Fserver-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fasyncapi%2Fserver-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fasyncapi%2Fserver-api/lists"}