{"id":13403740,"url":"https://github.com/apidoc/apidoc","last_synced_at":"2025-03-25T02:31:33.131Z","repository":{"id":8148665,"uuid":"9568416","full_name":"apidoc/apidoc","owner":"apidoc","description":"RESTful web API Documentation Generator.","archived":true,"fork":false,"pushed_at":"2024-02-16T09:29:16.000Z","size":3496,"stargazers_count":9720,"open_issues_count":85,"forks_count":1679,"subscribers_count":224,"default_branch":"master","last_synced_at":"2024-10-29T11:24:08.810Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://apidocjs.com","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/apidoc.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2013-04-20T18:08:52.000Z","updated_at":"2024-10-25T09:19:19.000Z","dependencies_parsed_at":"2024-01-10T06:12:20.386Z","dependency_job_id":"098d64da-5527-48e1-9334-ed5a6bc89971","html_url":"https://github.com/apidoc/apidoc","commit_stats":{"total_commits":799,"total_committers":108,"mean_commits":7.398148148148148,"dds":0.6157697121401753,"last_synced_commit":"f9b9e3fc31b4ab886533ad1efe393a6d2e4c8244"},"previous_names":[],"tags_count":56,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apidoc%2Fapidoc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apidoc%2Fapidoc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apidoc%2Fapidoc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/apidoc%2Fapidoc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/apidoc","download_url":"https://codeload.github.com/apidoc/apidoc/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245284720,"owners_count":20590307,"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":[],"created_at":"2024-07-30T19:01:33.942Z","updated_at":"2025-03-25T02:31:32.724Z","avatar_url":"https://github.com/apidoc.png","language":"JavaScript","funding_links":[],"categories":["JavaScript","API Docs","HTML","Docs","others","后端开发框架及项目","Documentation","Packages","包","Uncategorized","Documentation Types"],"sub_categories":["DNS:","管理面板","React Components","Documentation","Uncategorized","API Documentation"],"readme":"# Important note\n\nThis project is currently not active maintained!\nSee discussion https://github.com/apidoc/apidoc/issues/1436\n\n# apiDoc\n\napiDoc creates a documentation from API descriptions in your source code.\n\n![validate](https://github.com/apidoc/apidoc/workflows/validate/badge.svg)\n[![NPM version](https://badge.fury.io/js/apidoc.svg)](http://badge.fury.io/js/apidoc)\n[![Join the chat at https://gitter.im/apidoc/talk](https://badges.gitter.im/apidoc/talk.svg)](https://gitter.im/apidoc/talk?utm_source=badge\u0026utm_medium=badge\u0026utm_campaign=pr-badge\u0026utm_content=badge)\n\n### Documentation: [apidocjs.com](http://apidocjs.com)\n\n### [Live DEMO](http://apidocjs.com/example/)\n\n## Installation\n\n```bash\n$ npm install -g apidoc\n```\n\n## Usage\n\nAdd some apidoc comments anywhere in your source code:\n\n```java\n/**\n * @api {get} /user/:id Request User information\n * @apiName GetUser\n * @apiGroup User\n *\n * @apiParam {Number} id User's unique ID.\n *\n * @apiSuccess {String} firstname Firstname of the User.\n * @apiSuccess {String} lastname  Lastname of the User.\n */\n```\n\nNow generate the documentation from `src/` into `doc/`.\n\n```bash\n$ apidoc -i src/ -o doc/\n```\n\nThis repository contains and `example` folder from which you can generate a very complete documentation on an example api endpoint. It also contains best practice hints (in the `footer.md` file).\n\n```bash\n$ git clone https://github.com/apidoc/apidoc \u0026\u0026 cd apidoc\n$ npm install --prod\n$ ./bin/apidoc -i example -o /tmp/doc\n$ $BROWSER /tmp/doc\n```\n\n### Programmatic usage\n\nYou can generate the documentation programmatically:\n\n```ts\nimport path from 'path'\nimport { createDoc } from 'apidoc'\n\nconst doc = createDoc({\n  src: path.resolve(__dirname, 'src'),\n  dest: path.resolve(__dirname, 'doc'), // can be omitted if dryRun is true\n  // if you don't want to generate the output files:\n  dryRun: true,\n  // if you don't want to see any log output:\n  silent: true,\n})\n\nif (typeof doc !== 'boolean') {\n  // Documentation was generated!\n  console.log(doc.data) // the parsed api documentation object\n  console.log(doc.project) // the project information\n}\n```\n\nInstall type definitions (see [@types/apidoc](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/types/apidoc/index.d.ts)):\n\n```bash\n$ npm install -D @types/apidoc\n```\n\n## Docker image\n\nYou can use apidoc in Docker like this:\n\n~~~bash\n# first build the image after cloning this repository\ndocker build -t apidoc/apidoc .\n# run it\ndocker run --rm -v $(pwd):/home/node/apidoc apidoc/apidoc -o outputdir -i inputdir\n~~~\n\n## Supported programming languages\n\n * **C#, Go, Dart, Java, JavaScript, PHP, Scala** (all DocStyle capable languages):\n\n   ```javascript\n   /**\n     * This is a comment.\n     */\n   ```\n\n * **Clojure**:\n\n   ```clojure\n   ;;;;\n   ;; This is a comment.\n   ;;;;\n   ```\n\n * **CoffeeScript**:\n\n   ```coffeescript\n   ###\n   This is a comment.\n   ###\n   ```\n\n * **Elixir**:\n\n   ```elixir\n   #{\n   # This is a comment.\n   #}\n   ```\n\n * **Erlang**:\n\n   ```erlang\n   %{\n   % This is a comment.\n   %}\n   ```\n\n * **Perl**\n\n   ```perl\n   #**\n   # This is a comment.\n   #*\n   ```\n\n   ```perl\n   =pod\n   This is a comment.\n   =cut\n   ```\n\n * **Python**\n\n   ```python\n   \"\"\"\n   This is a comment.\n   \"\"\"\n   ```\n\n * **Ruby**\n\n   ```ruby\n   =begin\n   This is a comment.\n   =end\n   ```\n\n## Plugins (extend apiDoc)\n\napiDoc will auto include installed plugins.\n\n * [apidoc-plugin-schema](https://github.com/willfarrell/apidoc-plugin-schema) Generates and inject apidoc elements from api schemas. `npm install apidoc-plugin-schema`\n\nFor details and an example on how to implement your own plugin, please view [apidoc-plugin-test](https://github.com/apidoc/apidoc-plugin-test).\n\n## Support\n\nPlease [create a new issue](https://github.com/apidoc/apidoc/issues/new/choose) if you have a suggestion/question or if you found a problem/bug.\n\n## Contributing\n\napiDoc is a collaborative project. Pull requests are welcome. Please see the [CONTRIBUTING](https://github.com/apidoc/apidoc/blob/master/CONTRIBUTING.md) file.\n\n## Build tools\n\n* [flask-apidoc](https://pypi.python.org/pypi/flask-apidoc/) `pip install flask-apidoc`\n* [grunt-apidoc](https://github.com/apidoc/grunt-apidoc) `npm install grunt-apidoc`.\n* [gapidoc (gulp)](https://github.com/techgaun/gulp-apidoc) `npm install gapidoc`.\n* [webpack-apidoc](https://github.com/c0b41/webpack-apidoc) `npm install --save-dev webpack-apidoc`.\n\n## Integration\n\n* [Eclipse Java apiDoc editor templates](https://github.com/skhani/eclipse_java_apiDoc_templates)\n* [Eclipse plugin](https://github.com/DWand/eclipse_pdt_apiDoc_editor_templates)\n* [Microsoft WebAPI](https://github.com/chehabz/grunt-edge-apidoc-webapi-generator)\n* [Sublime Text plugin](https://github.com/DWand/ST3_apiDocAutocompletion)\n\n## Converter\n\n* [apidoc-swagger](https://github.com/fsbahman/apidoc-swagger)\n* [apidoc-swagger-3](https://github.com/amanoooo/apidoc-swagger-3)\n* [gulp-apidoc-swagger](https://github.com/fsbahman/gulp-apidoc-swagger)\n* [Docmaster](https://github.com/bonzzy/docmaster)\n* [apidoc-markdown](https://github.com/rigwild/apidoc-markdown)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapidoc%2Fapidoc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fapidoc%2Fapidoc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapidoc%2Fapidoc/lists"}