Skip to content

What is Smart-Doc?

BadgeImage
Maven Versionmaven
LicenseLicense
Number of Closed Issuesnumber of issues closed
Closed Pull Requestsclosed pull requests
Java Versionjava version
Gitee Stargitee star
GitHub Stargit star

Introduce

smart-doc [smɑːt dɒk] is a tool that supports automatic generation of documentation for JAVA REST API, JAVA WebSocket, Apache Dubbo RPC, and gRPC interfaces. It generates documentation by analyzing the source code of the interfaces, achieving zero annotation intrusion. During development, you only need to write Javadoc comments, and smart-doc will help generate documents in Markdown or HTML5 format. Unlike Swagger, which requires annotations in the code, smart-doc does not require any annotations to be injected into the code.

Just want to try it out? Skip to the Quickstart.

Features

  • Zero annotation, zero learning cost, only need to write standard JAVA document comments.
  • Automatic derivation based on source code interface definition, powerful return structure derivation support.
  • Support Spring MVC, Spring Boot, Spring Boot Web Flux (Not support endpoint), Feign,JAX-RS.
  • Supports the derivation of asynchronous interface returns such as Callable, Future, CompletableFuture.
  • Support JSR-303parameter verification specification.
  • Support for automatic generation of request examples based on request parameters.
  • Support for generating JSON return value examples.
  • Support for loading source code from outside the project to generate field comments (including the sources jar package).
  • Support for generating multiple formats of documents: Markdown,HTML5,Word,Asciidoctor,Postman Collection 2.0+,OpenAPI 3.0.
  • Support the generation of JMeter performance testing scripts
  • Support for exporting error codes and data dictionary codes to API documentation.
  • The debug html5 page fully supports file upload and download testing.
  • Support Apache Dubbo RPC.
  • Support gRPC.
  • Support Java WebSocket

Best Practice

smart-doc, in conjunction with Torna, builds an industry-leading solution for documentation generation and management. By using smart-doc, developers can non-intrusively analyze JAVA source code and extract annotations to generate API documentation, which is then automatically uploaded to the Torna enterprise-level API documentation management platform. smart-doc + Torna

smart-doc+Torna Full document process automation

Torna is an open source API document management system, developed by the smart-doc official team. Torna provides convenience for enterprise API document management.

License

smart-doc is under the Apache 2.0 license. See the LICENSE file for details.

PS: Smart-doc source code files are all with copyright notes. Please keep the original copyright when using the key code for the second open source, otherwise you will be responsible for the consequences!

Who is using

These are only part of the companies using smart-doc, for reference only. If you are using smart-doc, please add your company here to tell us your scenario to make smart-doc better.

iflytek
oneplus
xiaomi
shunfeng
ly
kuishou
mafengwo
yunda
zhongtongzhiyun
tcsklogo
flipboard
dianxin
yidong
neusoft
zhongkezhilian
hand-logo
yuanmengjiankang

Acknowledgements

Thanks to JetBrains SoftWare for providing free Open Source license for this open source project. jetbrains

Contact

Email: opensource@ly.com Twitter:https://x.com/shalousun

Released under the MIT License.