Skip to content
/ jazzy Public
forked from realm/jazzy

Soulful docs for Swift & Objective-C

License

Notifications You must be signed in to change notification settings

hanton/jazzy

 
 

Repository files navigation

jazzy

analytics

Test Status

jazzy is a command-line utility that generates documentation for your Swift or Objective-C projects.

Only Swift projects are currently supported, but Objective-C support is coming soon!

Instead of parsing your source files, jazzy hooks into Clang and SourceKit to use the AST representation of your code and its comments for more accurate results.

jazzy’s output matches the look & feel of Apple’s official reference documentation, post WWDC 2014.

Screenshot

Requirements

  • A version of Xcode (6.x or 7.x) capable of building the Swift project you wish to document, installed in a location indexed by Spotlight.

Installing

To install jazzy, run [sudo] gem install jazzy from your command line.

Usage

Run jazzy from your command line. Run jazzy -h for a list of additional options.

You can set options for your project’s documentation in a configuration file, .jazzy.yaml by default. For a detailed explanation and an exhaustive list of all available options, run jazzy --help config.

Troubleshooting

Only extensions are listed in the documentation.

By default, jazzy only documents public declarations. To generate documentation for declarations with a lower accessibility level (internal or private), please set the --min-acl flag to internal or private.

Development

jazzy is composed of two parts: the parser (sourcekitten, written in Swift) and the site generator (written in ruby).

To build and run jazzy from source, you'll first need bundler. Once bundler is installed, run bundle install from the root of this repo. At this point, run jazzy from source by running bin/jazzy.

Instructions to build sourcekitten from source can be found at sourcekitten's GitHub repository.

Design Goals

jazzy's main design goals are:

  • Generate source code docs matching Apple's official reference documentation
  • Support for standard Objective-C and Swift documentation comment syntax
  • Leverage modern HTML templating (Mustache)
  • Leverage the power and accuracy of the Clang AST and SourceKit
  • Support for Xcode and Dash docsets (work in progress)
  • Support Swift, Objective-C or mixed projects (work in progress)

License

This project is under the MIT license.

About

Soulful docs for Swift & Objective-C

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Ruby 81.9%
  • CSS 11.4%
  • HTML 5.7%
  • JavaScript 1.0%