README
Overview
README is a very simple HTML documentation generator whose goal is to be as pain-free as possible to put in place, maintain and navigate.
When relying on README, all you need to do is:
-
To write your documentation files in the same Markdown format you're used to (the full ubiquitous CommonMark syntax is handled, with no added special syntax).
Note that links, including those between Markdown files, are handled, as well as things like embedded image, video and audio resources.
-
Put them in directories following a file tree architecture reflecting your wanted HTML documentation (categories in different directories, page groups as pages in the same subdirectory).
-
Add
.docConfig.json
files in the resulting directories and sub-directories to set-up configuration and indicate the pages' ordering.
Then you can run README on it to generate static HTML files which can directly be served as your documentation. That's it!
Installation
README is installable through your favorite node package manager (npm / yarn /
pnpm) by installing the @canalplus/readme.doc
package:
# through npm
npm install @canalplus/readme.doc --save-dev
# or through yarn
yarn add @canalplus/readme.doc --dev
You should then be able to run it by referencing through its readme.doc
name
in a package.json
script or through npx
.
To ensure the readme.doc
is accessible, you can try running it with the -v
flag and see if the right version is outputed:
# Outputs README version
npx --no -- readme.doc -v
# Note: The `--no --` part in that npx command is there to ensure that README
# has been installed locally with success.
# If you see the expected version outputed, it is correctly installed and
# it is equivalent to just calling `npx readme.doc -v`.
Usage
Then producing your HTML documentation pages is straightforward.
Before going deep into all steps one by one, here is a brief description for each one of them:
-
Documentation Files: Write documentation files in Markdown in a file tree architecture respecting the same structure you want in your HTML documentation (e.g.
Getting Started
pages in a given directory,API
pages in another etc.). -
Configuration: Add a
.docConfig.json
file, setting the documentation's global configuration, in your documentation's root directory -
Page Listing: Add
.docConfig.json
files in each sub-directories to set the order of documentation pages as well as their name. -
Run: Run the
readme.doc
command. -
Serve: Serve the corresponding generated HTML pages.