{"id":22341822,"url":"https://github.com/weaponsforge/apidocs-swagger-ui","last_synced_at":"2026-04-28T17:04:39.511Z","repository":{"id":57665305,"uuid":"527131359","full_name":"weaponsforge/apidocs-swagger-ui","owner":"weaponsforge","description":"Testing using swagger ui for api documentation","archived":false,"fork":false,"pushed_at":"2022-08-25T03:35:31.000Z","size":627,"stargazers_count":2,"open_issues_count":4,"forks_count":0,"subscribers_count":1,"default_branch":"dev","last_synced_at":"2025-03-26T09:37:22.919Z","etag":null,"topics":["api-docs","api-documentation","docs","openapi","openapi-viewer","openapi3","swagger-ui"],"latest_commit_sha":null,"homepage":"https://weaponsforge.github.io/apidocs-swagger-ui/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/weaponsforge.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-08-21T07:04:33.000Z","updated_at":"2025-03-05T21:34:39.000Z","dependencies_parsed_at":"2022-09-26T20:31:30.137Z","dependency_job_id":null,"html_url":"https://github.com/weaponsforge/apidocs-swagger-ui","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/weaponsforge/apidocs-swagger-ui","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/weaponsforge%2Fapidocs-swagger-ui","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/weaponsforge%2Fapidocs-swagger-ui/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/weaponsforge%2Fapidocs-swagger-ui/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/weaponsforge%2Fapidocs-swagger-ui/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/weaponsforge","download_url":"https://codeload.github.com/weaponsforge/apidocs-swagger-ui/tar.gz/refs/heads/dev","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/weaponsforge%2Fapidocs-swagger-ui/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260545227,"owners_count":23025671,"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":["api-docs","api-documentation","docs","openapi","openapi-viewer","openapi3","swagger-ui"],"created_at":"2024-12-04T08:08:19.091Z","updated_at":"2026-04-28T17:04:34.480Z","avatar_url":"https://github.com/weaponsforge.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"## apidocs-swagger-ui\n\n**apidocs-swagger-ui** features a simple Todo notes-taking CRUP API borrowed from [`todo-next`](https://github.com/weaponsforge/todo-next)'s server.\n\nThis repository aims to test using [swagger-ui](https://github.com/swagger-api/swagger-ui) for creating modern, responsive and interactive REST API documentations and to familiarize oneself with the [OpenAPI](https://spec.openapis.org/oas/v3.1.0) specifications, v3.1.0 as of this writing.\n\n![screenshot](/assets/thumbnail.png)\n\n## Requirements\n\nThe following dependencies are used for this project's localhost development environment. Feel free to use other dependency versions as needed.\n\n1. Windows 10 OS\n2. nvm for Windows v1.1.9\n3. NodeJS 16.14.2 installed using nvm\n   - node v16.14.2\n   - npm v8.5.0\n4. MongoDB Community Edition (for Windows)\n   - version 4.4.0\n   - architecture: x86_64\n\n### Core Libraries and Frameworks\n\n1. swagger-ui v4.14.0\n2. webpack v5.74.0\n3. webpack-cli v4.10.0\n4. mongoose v6.5.2\n\n## Installation\n\n1. Clone this repository.\u003cbr\u003e\n`https://github.com/weaponsforge/todo-next.git`\n\n2. Install the backend server dependencies.\u003cbr\u003e\n`npm install`\n\n3. Install the **docs** dependencies.\u003cbr\u003e\n`npm run docs:install`\n\n4. Set up the environment variables. Create a `.env `file inside the root project directory with reference to the `.env.example` file.\u003cbr\u003e\n\n   | Variable Name         | Description                                                                                                                                                                                                                                                                                                       |\n   | --------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n   | MONGO_URI             | MongoDB connection string.\u003cbr\u003eDefault value uses the localhost MongoDB connection string.                                                                                                                                                                                                                         |\n   | ALLOWED_ORIGINS       | IP/domain origins in comma-separated values that are allowed to access the API if `ALLOW_CORS=1`.\u003cbr\u003e Include `http://localhost:8080` by default to allow CORS access to the swagger-ui documentation app in the **/docs** directory.                                                                             |\n   | ALLOW_CORS            | Allow Cross-Origin Resource Sharing (CORS) on the API endpoints.\u003cbr\u003e\u003cbr\u003eDefault value is `1`, allowing access to domains listed in `ALLOWED_ORIGINS`.\u003cbr\u003e Setting to `0` will block AJAX API requests from client websites hosted on other domains, but will allow requests from Postman and other testing tools. |\n   | API_WINDOW_MS_MINUTES | Time in `minutes` where `API_RATE_LIMIT` times of successive calls from an IP are allowed on the server.                                                                                                                                                                                                          |\n   | API_RATE_LIMIT        | It's the maximum number of allowed API requests on the server per `API_WINDOW_MS_MINUTES`. \u003cbr\u003eUsers will receive a `429 - Too many requests` server error after hitting the limit.\u003cbr\u003eThe limit will reset after API_WINDOW_MS_MINUTES minutes, after which users can resume making API requests.                |\n\n## Usage\n\n1. Run the server.\u003cbr\u003e\n`npm start`\n\n1. Run the docs api on development mode.\u003cbr\u003e\n`npm run docs:dev`\n\n## Available Scripts\n\n### `npm start`\n\nRun the express server for production mode.\n\n### `npm run dev`\n\nRun the server for development mode using [nodemon](https://www.npmjs.com/package/nodemon).\n\n### `npm run lint`\n\nLint the server JavaScript source codes.\n\n### `npm run lint:fix`\n\nFix the JavaScript lint errors.\n\n### `npm run docs:install`\n\nInstalls the (swagger-ui + webpack) dependencies on the **/docs** directory.\n\n### `npm run docs:dev`\n\nRuns the (swagger-ui + webpack) app in development mode.\n\n### `npm run docs:build`\n\nBuilds and bundles the (swagger-ui + webpack) app in the **/docs** directory for production mode to the `/docs/dist` directory.\n\nFix JavaScript lint errors.\n\n@weaponsforge\u003cbr\u003e\n20220821\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fweaponsforge%2Fapidocs-swagger-ui","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fweaponsforge%2Fapidocs-swagger-ui","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fweaponsforge%2Fapidocs-swagger-ui/lists"}