• Allow SCSS parser stream errors to be caught. (#540)


  • Update sassdoc-theme-default.
    Template engine replacement, swap Swig per Nunjucks.


  • Update sassdoc-theme-default.
  • Update scss-comment-parser.
  • Add group description parsing (#534)


  • Update sassdoc-theme-default.
    Fixes an issue with main types pluralization. (#101


  • Added support for async annotation resolve functions. (#517, #518)


  • Added support for scoped theme packages. (#514, #515)


  • Themes can now pass an includeUnknownContexts config key up to the parser.
    Allows for including comments not necessarily linked to an item in final data. (#498)


  • Fix the verbose and strict flags throwing an exception when being passed from config or API params. (#491, #490)


  • Scope empty data message under the verbose flag. (#488, #489) This prevent unwanted console cluttering on certain build setup.
  • Remove empty data warning about CSS selectors. This is no longer relevant, since CSS selectors are supported (although not being promoted yet).


  • Batch upgrade dependencies, fix security warnings.
  • Upgrade transpilation to Babel 6.


  • Add argument as an alias for parameter annotation.


  • Fix expected line numbers from scss-comment-parser.


  • Fix previous publish.


  • Downgrade scss-comment-parser. (#438, #439)


  • Upgrade scss-comment-parser. (#21)


  • Update Babel to 5.5 because of a bug with Babel 5.1 runtime.


  • Make access work when not autofilled (#399)


  • Default destination is relative to CWD (#403)


  • More generic streaming success message (#402)


  • Republish of 2.1.10 because of a failed npm publish.


  • Strip @example indent (#401)


  • Upgrade to Babel 5.1, fix zn issue with Symbol (#396)


  • Upgrade to Babel 5.0 (#394)
  • Ensure default theme name is properly logged (#393)
  • Several dependencies updates (#392)
  • Switched to Eslint (#388)

2.1.0 — Polite Little Squid


  • Update sass-convert version to prevent the 6to5-runtime issue described in (#369)


  • Ensure specific 6to5 and 6to5-runtime version. (#369, 8bab189)



  • Graceful relative paths in CLI and config file. (#362, c47dea1)


  • Fix an issue with relative path passed via CLI and configuration file (#364, c47dea1)


  • Fix an issue with autofill and items that use a css keyword as name. (#359)
  • Fix an issue where .sassdocrc was ignored when using Node.js API (#363)


  • Fix the CLI synopsis, SassDoc can’t be executed without arguments.


  • Move to 6to5 3 in selfContained mode to avoid global scope pollution (#354)


  • Fix debug value, returning proper function name instead of something like callee$1$0.

2.0.0 — Shiny Streamy Octopus

API breaks for users

  • C-style comments (/** */) are no longer supported (#326)
  • SassDoc now always outputs its own directory in the current folder (#302)
  • --dest option has been added to define SassDoc’s folder path for output, default is sassdoc (#302)
  • --no-prompt option no longer exists since SassDoc outputs its own folder (#302)
  • --sass-convert option no longer exists and is now implied (#231)
  • Default name for configuration file is now .sassdocrc (#189)
  • @alias can no longer be used on placeholders (#263)
  • Annotations @access, @content, @deprecated, @group, @output, @return and @type are now restricted to one use per item (#257)
  • Annotations @param and @prop now use square brackets ([]) for default values rather than parentheses (()) to avoid edge issues (#303)
  • See to convert all your SassDoc comments.

API breaks for theme builders

  • sassdoc-filter and sassdoc-indexer repositories no longer exist and have been replaced by sassdoc-extras
  • sassdoc-theme-light repository no longer exists and has been replaced by sassdoc-theme-default
  • html* properties no longer exist when using Markdown filter from sassdoc-extras, initial values are now overwritten (sassdoc-extras#6)
  • @return no longer returns a name and a default value, only a type and a description (#277)
  • @content no longer returns an autogenerated key, only a description (#262)
  • parameters key from item now becomes parameter (#225)
  • requires key from item now becomes require (#225)
  • returns key from item now becomes return (#225)
  • throws key from item now becomes throw (#225)
  • todos key from item now becomes todo (#225)
  • prop key from item now becomes property (#225)
  • When using the display filter from sassdoc-extras, items are now fully removed rather than given a display key (sassdoc-extras#11)

API breaks for third party integration

  • The node API has been revamped and unified.
  • sassdoc.documentize does not exist anymore.
  • sassdoc(src [, config]) execute the full Documentation process, returns a Promise.
  • sassdoc([config]) execute the full Documentation process, returns a Stream of Vinyl files.
  • sassdoc.parse(src [, config]) returns a Promise with the full data object.
  • sassdoc.parse([config]) returns a Stream with the full data object.

New features

  • The whole API has been fully refactored in ES6 (#231)
  • $ sign is now optional when defining the name in @parameter annotation (#222)
  • It is now possible to use file/folder exclusion patterns (#228)
  • It is now possible to pipe SassDoc into stdin (#315)
  • --debug option has been added to output information about current setup (#311)
  • Default theme now has a googleAnalytics configuration accepting a Google Analytics tracking key (sassdoc-theme-default#10)
  • Default theme now has a trackingCode configuration accepting an arbitrary HTML snippet to be included before </body> (sassdoc-theme-default#10)
  • @content annotation is now correctly output in default theme (sassdoc-theme-default#15)
  • Default theme now displays the type as well as the name when cross-linking items (requirements, and so on…) (sassdoc-theme-default#17)
  • Error messages should now be more explicit, providing a file name and a line (#282)
  • --parse option has been added to output raw parsing data as JSON from the CLI (#318)

Bug fixes


  • Backport of a994ed5 fix multiple require autofill (#314)


  • Ensure @todo compat with docs and contrib (#293)


  • Ensure proper type checking for @see annotation (#291)


  • Prevented @requires to autofill dependency twice


  • Fixed an issue with the folder wiping safeguard always aborting if folder is not empty without even prompting


  • Updated a dependency in order to use new version of sassdoc-theme-default


  • Made annotations @throws, @requires and @content fill themselves so you don’t have to, unless told otherwise through the autofill option (#232, #238)
  • Added the ability to define --sass-convert, --no-update-identifier and --no-prompt options within the configuration file instead of CLI only (#247)
  • Merged sassdoc-filter and sassdoc-indexer into sassdoc-extras; theme authors are asked to use the new repository


  • Added ability to use inline comments with /// (#143)
  • Added some safeguards when wiping the destination folder to avoid accidents (#220)
  • Added @content annotation, which is auto-filled when @content Sass directive is being found in a mixin (#226)
  • Added @require alias for @requires (#221)
  • Added @property alias for @prop (#221)
  • Made the $ sign optional when writing the parameter name in @param (#222)
  • Annotations that should not be associated to certain types (for instance @param for a variable) now emit a warning and are properly discarded by the parser (CDocParser#4)


  • Added ability to add your own annotations to your theme (#203)
  • Fixed an issue with items being randomly ordered (#208)
  • Greatly improved sidebar from the theme


  • Added a --sass-convert option to perform Sass to SCSS conversion before running SassDoc (#183)
  • Added the ability to define annotations at a file-level (#190)
  • Improved SassDoc’s behaviour when default theme is missing (#207)
  • Slightly improved our logging message regarding the theme being used (#206)
  • Moved some logic out of the theme’s templates right into the index.js from the theme (sassdoc-theme-light#40)


  • Fixed a bug where some descriptions didn’t allow line breaks (#209)


  • Added a Yeoman Generator to make it easier to build themes (#185)
  • Added YAML support for configuration files; default configuration file name is still view, either as .json, .yaml or .yml (#184)
  • Added a message to warn against relying on the default configuration file name (view.{json,yaml,yml}) since it will break in version 2.0.0 in favor of .sassdocrc (which will support both format at once while being more semantic, less confusing and less likely to conflict with other projects) (#194)
  • Fixed an issue when variable items’ value contains a semi-colon (#191)
  • Improved the light theme (better sidebar toggle with states stored in localStorage, better code toggle, better JavaScript structure, and better performance)
  • Added a byType key to sassdoc-indexer to help building themes


  • Added implicit type for required placeholders (#197)


  • Used stat instead of lstat to support symlinks (22a9b79)


  • Added @prop to allow deeper documentation for maps (#25)
  • Fixed circular JSON dependencies when using raw data (#181)
  • Added an option to provide a custom shortcut icon to the view (#178)


  • Fixed a broken test


  • Updated favicon from theme to prevent 404
  • Changed a dependency
  • Added placeholder support (#154)
  • Prevented a crash when using invalid annotations; throwing a warning instead
  • Added @source as an alias for @link to carry more semantic (#170)


  • Fixed a broken test


  • Merged a branch that needed to be merged


  • Added @output as an equivalent for @return for mixins (#133)
  • Added the ability to add a title to @example (#145)
  • Added the ability to preview the code of an item when clicking on it (#124)


  • Improved the way @since is parsed (#128)
  • Moved theming to Themeleon (#69)
  • Added a view source feature (#117)
  • Added the @group annotation, as well as a way to alias groups in order to have friendly names (#29)
  • Added moar tests (#138)


  • Backport, fixed found-at with absolute path (#156)


  • Fixed @example not being printed for variables (#146)


  • Fixed some visual issues with @requires (#132)


  • Removed a duplicated deprecated flag in the view


  • Fixed a bug with relative path to package.json file


  • Fixed a small issue with display path, sometimes adding an extra slash (#68)


  • New design
  • Improved the @requires annotation to support external vendors, and custom URL (#61)
  • Added a search engine to the generated documentation (#46)
  • Fixed an issue with @link not working correctly (#108)
  • Added examples to .gitignore


  • Fixed an issue with config path resolving to false (#68)


  • Worked around a npm bug


  • Fixed an issue with a missing dependency
  • Prevented a weird bug with @require
  • Improved styles from the theme
  • Improved the way we deal with configuration resolving
  • Added an option to prevent the notifier check from happening
  • Merged sassdoc-cli back into the main repository
  • Fixed an issue with item count in console (#102)
  • Made parameters table headers WAI 2.0 compliant (#101)
  • Fixed a logic issue in the view
  • Fixed a syntax highlighting issue with functions and mixins (#99)
  • Improved the way we deal with file path (#98)
  • Made it possible to use @-starting lines within @example as long as they are indented (#96)
  • Fixed a tiny parser issue (#95)
  • Exposed the version number in sassdoc.version (#91)
  • Implemented update-notifier (#92)
  • Made it possible for SassDoc to create nested folders (#89)
  • Renamed all repositories to follow strict guidelines (#70)
  • Fixed an issue with empty documented items (#84)
  • Normalized description in annotations (#81)
  • Made requiring a variable less error-prone (#74)
  • Fixed minor issues when parsing @param (#59, #60, #62)
  • Fixed an issue with @import being parsed (#73)
  • Added language detection to @example (#54)
  • Major style changes (#65)
  • Improved view/DOM/SCSS structure
  • Added Grunt (#55)
  • Removed Makefile from core
  • Added Travis (#63)
  • Minor code improvements in bin
  • Fixed an issue with bin
  • Fixed some little bugs in view
  • Changed @datatype to @type
  • Fixed a parsing bug with expanded licenses in package.json
  • Added a footer (#57)
  • Changed the structure of view.json
  • Added license (MIT) (#58)
  • Massively improved templates quality
  • Massively improved SCSS quality
  • Authorized markdown on @author
  • Added a favicon
  • Fixed tiny typo in console warning
  • Added anchor to each item (#56)
  • Added back the [Private] annotation before private items’ name
  • Added a version parameter to view.json that gets displayed right next to the title
  • Prevented empty sections in case items exist but are not displayed
  • Prevented broken links with requires and usedby in case of private items
  • Fixed an issue where links were not displayed
  • Added --version option (#51)
  • Improved Sass and Swig structure
  • Improved the way we display @deprecated (#50)
  • Added location where item was found
  • Moved view’s stylesheets to Sass
  • Changed the folder structure
  • Moved view.json to view/ folder
  • Prevented some broken links
  • Made the documentation responsive
  • Added PrismJS
  • Fixed an issue with @requires type
  • Fixed some formatting issues with @example
  • Fixed an issue prevented @requires form working if there was any @alias
  • Greatly improved the view
  • Fixed @deprecated not supporting a message
  • Added a trim to @datatype
  • Moved to a real parser (CDocParser and ScssCommentParser)
  • Dropped support for inline comments (//)
  • Added the ability to document examples with @example
  • Variables are now documented exactly like functions and mixins, yet they have a @datatype directive to specify their type
  • Changed the structure of view.json


  • Improved the way we can impact the view with view.json


  • Added a way to impact the view with view.json


  • Greatly improved the way we deal with variables


  • Fixed documented items count in generated documentation
  • Improved the way things work when nothing gets documented


  • Allowed markdown syntax at more places


  • Authorized spritemap as a valid type


  • Changed the way we deal with assets dumping


  • Fixed an issue when dumping assets


  • Who knows?


  • Updated view


  • Fixed a potential path issue


  • Added @since


  • Updated the way we deal with @param and @return


  • Initial commit