A command line tool that generates Markdown documentation from inline Swift source code comments.
SourceDocs is a command line tool that generates Markdown documentation files from inline comments in Swift source code. It parses Swift projects and packages to create beautiful reference documentation that can be stored directly in the project repository. It solves the problem of keeping API documentation synchronized with code changes by automating documentation generation.
Swift developers working on Xcode projects or Swift Packages who need to generate and maintain API reference documentation. It's particularly useful for open-source library maintainers and teams wanting browsable inline documentation.
Developers choose SourceDocs because it generates clean Markdown documentation that integrates seamlessly with version control and GitHub Pages, unlike heavier documentation systems. It's specifically designed for Swift ecosystems with support for both Xcode projects and Swift Packages.
Generate Markdown documentation from source code
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Seamlessly supports both Xcode projects and Swift Packages, automatically analyzing public types and generating documentation for specific or all modules, as shown in the usage examples.
Offers configurable output directories, collapsible blocks, table of contents, and reproducible documentation via command-line flags like -c, -l, and -t, allowing tailored generation.
Generates plain Markdown files that can be easily committed to repositories and rendered by platforms like GitHub Pages, promoting documentation alongside code, as highlighted in the philosophy.
Can be installed via Homebrew, downloaded as a binary, or built from source with Swift Package Manager, providing flexibility for different user setups, as detailed in the installation section.
Exclusively designed for Swift source code, with no support for Objective-C or other languages, limiting its use in polyglot projects.
Requires command-line usage and setup, which might be less accessible for developers accustomed to GUI-based documentation tools, and involves parameters like --spm-module or xcodebuild flags.
Tied to specific Swift and Xcode versions (e.g., version 2.x requires Swift 5.5 and Xcode 13.1), as shown in the requirements table, potentially causing issues with legacy or future projects.