{"id":17330395,"url":"https://github.com/voidint/swagger-hub","last_synced_at":"2026-01-20T03:11:51.971Z","repository":{"id":90859687,"uuid":"60489328","full_name":"voidint/swagger-hub","owner":"voidint","description":null,"archived":false,"fork":false,"pushed_at":"2018-05-13T09:52:13.000Z","size":11865,"stargazers_count":1,"open_issues_count":6,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-02-12T17:16:43.151Z","etag":null,"topics":["api","golang","openapi","swagger","swagger-ui"],"latest_commit_sha":null,"homepage":null,"language":"Go","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/voidint.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-06-06T01:12:58.000Z","updated_at":"2018-05-13T09:52:14.000Z","dependencies_parsed_at":"2023-03-03T20:17:51.736Z","dependency_job_id":null,"html_url":"https://github.com/voidint/swagger-hub","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/voidint%2Fswagger-hub","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/voidint%2Fswagger-hub/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/voidint%2Fswagger-hub/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/voidint%2Fswagger-hub/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/voidint","download_url":"https://codeload.github.com/voidint/swagger-hub/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247476712,"owners_count":20945096,"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","golang","openapi","swagger","swagger-ui"],"created_at":"2024-10-15T14:51:08.126Z","updated_at":"2026-01-20T03:11:51.965Z","avatar_url":"https://github.com/voidint.png","language":"Go","readme":"# swagger-hub\n\n为[swagger-ui](https://github.com/swagger-api/swagger-ui)提供动态渲染本地swagger文档服务。\n\n# 安装\n```\n// 使用golang的工具链下载源代码并编译安装\ngo get -u github.com/voidint/swagger-hub/...\n\n// 给二进制文件建立软连接\nln -s $GOPATH/bin/doc-server /usr/local/bin/doc-server\n```\n\n# 使用方法\n```\n$ doc-server -h\nUsage of doc-server:\n  -dir string\n    \t需要提供文件服务的目录路径\n  -domain string\n    \tHTTP服务域名 (default \"apihub.idcos.net\")\n  -log string\n    \t日志打印全路径(包含日志文件名称) (default \"doc-server.log\")\n  -port uint\n    \t服务端口号 (default 80)\n```\n\n## 参数说明\n- `dir`: 需要提供文件服务的目录路径。具体指的就是源代码中名为`web`的那个目录路径。\n- `domain`: HTTP服务域名。如果是本地运行，那么可以指定为`localhost`，如果是部署在服务器上以供他人访问，那么可以指定那台服务器的`IP`或者`域名`。\n- `log`: 日志打印全路径(包含日志文件名称)。\n- `port`: 服务端口号。\n\n## 示例\n1. 编写符合[swagger specification](http://swagger.io/specification/)规范的文档。\n1. 将文档（`YAML`格式或者`JSON`格式）放入`dir`参数所指向的名为`web`目录下的`api`目录中。\n1. 启动服务`doc-server --dir $GOPATH/src/github.com/voidint/swagger-hub/web --domain localhost --log /tmp/doc-server.log --port 8090`。\n1. 通过浏览器访问`http://localhost:8090`。\n\n\n# TODO\n- [ ] 自定义`api`目录。\n- [x] 监控`api`目录下文件变化(新增、删除、重命名)，一旦变化发生，立即更新静态HTML页面内容。\n- [ ] 服务运行过程中，监控`api`目录下任意子目录以及其下文件的变动，一旦变化发生，立即更新静态HTML页面内容。\n- [ ] 使用`golang`原生的`template`机制替换当前`strings.Replace()`机制生成静态html页面。\n- [ ] 增加`version`子命令用于输出版本号。\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvoidint%2Fswagger-hub","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvoidint%2Fswagger-hub","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvoidint%2Fswagger-hub/lists"}