GithubHelp home page GithubHelp logo

knoxhuang / firedoc Goto Github PK

View Code? Open in Web Editor NEW

This project forked from cocos-creator/firedoc-2.x

0.0 3.0 0.0 5.61 MB

API Doc generator based on YUIDoc

License: Other

Makefile 0.29% JavaScript 59.35% Shell 0.08% CSS 10.30% HTML 29.98%

firedoc's Introduction

FireDoc

Circle CI

API Doc generator rewritten from YUIDoc. We use this tool to self-document firedoc itself at:

NPM

Overview

FireDoc is forked and rewritten from YUIDoc and added some powerful enhanced features at Syntax Guide.

YUIDoc is a Node.js application used at build time to generate API documentation for JavaScript code. YUIDoc is comment-driven and supports a wide range of JavaScript coding styles. The output of YUIDoc is API documentation formatted as a set of HTML pages including information about methods, properties, custom events and inheritance for JavaScript objects.

YUIDoc was originally written for the YUI Project; it uses YUI JavaScript and CSS in the generated files and it supports common YUI conventions like Custom Events. That said, it can be used easily and productively on non-YUI code.

Installation

$ npm install -g firedoc

Usage

Usage: firedoc [options] [command]


Commands:

  build [path]    build document from the directory
  install [path]  install theme or plugin
  preview [path]  build and preview the document from directory
  help [cmd]      display help for [cmd]

Options:

  -h, --help     output usage information
  -V, --version  output the version number

Get Started

$ firedoc build <path> --lang <lang>

Or using a shortcut command:

$ firedoc <path> --lang <lang>

The following is the helper of firedoc-build(1):

  Usage: firedoc-build [options]

  Options:

    -h, --help            output usage information
    -l --lint             lint the parser
    --parse-only          only parse
    -H --http             build doc for web
    -M --markdown         generate markdown docs
    -T --theme <dir>      specify theme directory
    -D --dest <dir>       the destination folder to build
    -L --lang <language>  the i18n language
    -S --source           whether or not output source files and show the link in 'Defined in' section.
    -v --verbose          print all verbose information

--lang option is required for multi-language description. Currently firedoc supports en and zh language option. Adding those option will generate docs for that specific language.

--markdown or -M is optional flag, which lets you get the markdown-based documentation to directly host at Github or Bitbucket. Firedoc's github hosted documentation is generated by itself.

For sites that requires a base url (such as http://mysite.com/docs), specify a baseurl property in your yuidoc.json file:

{
  "name": "My Site",
  "baseurl": "/docs",
  "options": {
    "baseUrl": "",
    "outdir": "path/to/output",
    "linkNatives": true,
    "paths": [
        "path/to/my/src"
    ],
    "tabtospace": 4
  }
}

If you want to preview your api docs with local html files, add a

"local": "true"

to your config file.

Themes

By default the firedoc provides the following 3 themes:

  1. default the default theme of firedoc
  2. default(zh) the Chinese version of default
  3. markdown the default markdown theme for firedoc

Specify a theme locally

firedoc build <path> --theme [path/to/your/theme]

Install a theme remotely

Firedoc supports that you can install a theme from Github, Bitbucket or any other valid url.

$ firedoc install notab
$ firedoc install firedoc-theme-notab
$ firedoc install https://github.com/fireball-x/firedoc-theme-notab

The above command will install the theme firedoc-theme-notab into installed firedoc directory in your machine. Then you would be able to use the theme just like this:

$ firedoc build <path> --theme notab

However if the remote url has a same basename with what you have installed in your machine, then you can specify a different name to install it:

$ firedoc install <url> --name different-theme-name

If you are wanting to write a new theme and need some details, you could go to: themes README.

Note: please make sure you have the installed following dependencies before using theme functionality:

  • Node.js or IO.js which supports:
    • Template string
    • Synchronous child_prcess spawn
  • git command-line tool

Test

To run test

$ npm test

Documentation

Contributing

Please see the CONTRIBUTING.md.

License

This software is free to use under the Yahoo Inc. BSD license. See the LICENSE file for license text and copyright information.

firedoc's People

Contributors

davglass avatar yorkie avatar okuryu avatar nantas avatar evangoer avatar ericf avatar caridy avatar rgrove avatar dtan avatar limikael avatar lexander avatar mikepmunroe avatar sdesai avatar derek avatar erikabele avatar andrewnicols avatar bakfr avatar onlywei avatar isaachier avatar timdp avatar gragera avatar artsyca avatar arapehl avatar evocateur avatar ifraixedes avatar jasonghent avatar juandopazo avatar lsmith avatar mmpestorich avatar tivac avatar

Watchers

James Cloos avatar Knox avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.