daux.io/README.md
2013-06-04 13:23:01 -05:00

4.3 KiB

TM Docs is an auto documentation generator that uses your folder structure and Markdown files to create custom documentation on the fly. It helps create great looking documentation in a developer friendly way.

Features

  • Supports GitHub Flavored Markdown
  • Auto Syntax Highlighting
  • Auto Generated Navigation
  • 12 Built-In Bootstrap Themes
  • 35 Syntax Highlighting Themes
  • Shareable/Linkable SEO Friendly URLs
  • Built On Bootstrap
  • No Build Step
  • Git/SVN Friendly

Demos

This is a list of sites using TM-Docs:

Use TM-Docs? Send me a pull request or open an issue and I will add you to the list.

Download

Download this repository as a zip, and unpack. Copy the files to a web server that can run PHP. You can also run the documentation locally using Grunt.js, which is covered at the end of this readme.

Folders

The generator will look for folders in the /docs folder. Add your folders inside the /docs folder. This project contains some example folders and files to get you started. It also contains a Markdown Tests folder which contains the official suite of tests for checking the functionality of the Markdown parser.

You can nest the folders any number of levels to get the exact structure you want. The folder structure will be converted to the nested navigation.

Files

The generator will look for Markdown files inside the /docs folder and any of your subfolders.

You must use the .md file extension for your files. Also, you must use underscores instead of spaces. Here are some example file names and what they will be converted to:

Good:

  • 01_Getting_Started.md = Getting Started
  • API_Calls.md = API Calls
  • 200_Something_Else-Cool.md = Something Else-Cool

Bad:

  • File Name With Space.md = FAIL

Sorting

To sort your files and folders in a specific way, you can prefix them with a number and underscore, e.g. /docs/01_Hello_World.md and /docs/05_Features.md This will list Hello World before Features, overriding the alpha-numeric sorting, which is the default. The numbers will be stripped out of the navigation.

Configuration

To customize the look and feel of your documentation, you can create a config.json file in the of the /docs folder. The config.json file is a simple JSON object that you can use to change some of the basic settings of the documentation.

Title: Change the title bar in the docs

{
	"title": "TM-Docs the Todaymade Documentation Generator"
}

Default Homepage: Set the default page someone is redirected to if they visit /

{
	"homepage": "/Getting_Started"
}

Bootstrap Theme: We support the 12 Bootstrap themes from Bootswatch. To use on of the themes, just set this option to the lowercase name of the theme.

View the Demos

{
	"theme": "spacelab"
}

Syntax Highlighting: We support all of the available themes for highlight.js. To use one of the themes, set this option to one of the available style names.

View the Demos View the Possible Option Values

{
	"hightlight": "dark"
}

Github Repo: Add a 'Fork me on Github' ribbon.

{
	"repo": "justinwalsh/tm-docs"
}

Twitter: Include twitter follow buttons in the sidebar.

{
	"twitter": ["justin_walsh", "todaymade"]
}

Links: Include custom links in the sidebar.

{
	"links": {
		"Github Repo": "https://github.com/justinwalsh/tm-docs",
		"Help/Support/Bugs": "https://github.com/justinwalsh/tm-docs/issues",
		"Todaymade": "http://todaymade.com"
	}
}

Running Locally

You can run the docs locally using Grunt.js

Requirements:

  • Node.js
  • npm
  • Grunt.js
  • PHP 5.4 or greater

This project contains a package.json file, so once you have the requirements installed, you can simply run a npm install and then grunt in the projects folder to start the local web server. By default the server will run at: http://localhost:8085

Support

If you need help using TM Docs, or have found a bug, please create an issue on the Github repo.