MIT License
Copyright © 2020



CODEDOC is an open-source tool that helps you with creating beautiful and modern software documentation. It creates a JAMStack app from your markdown files that you can easily deploy on services such as GitHub Pages.

1npm i -g @codedoc/cli # --> click on each line to copy it


Assume you have a repo on github named my-project and want to write documentations for it using codedoc. Install the codedoc cli, clone your repo locally, then:

1cd my-project # --> go to your project folder

2codedoc init # --> initialize codedoc

3codedoc serve # --> serve the docs

Open a browser on the URL the CLI tool tells you (e.g. localhost:3000/my-project) and see the docs boilerplate.

Your markdown files by default are located at docs/md/, for example the main page you see will be from docs/md/ The table of contents will also by default be on docs/md/ Modify them and see the changes in realtime.


When you are done with your docs and want to publish them, say to GitHub Pages, simply run this command in your project folder:

1codedoc build # --> build the docs for deployment

Then add all the built files and push to GitHub:

1git add -A # --> add your built files

2git commit -m "meine docs" # --> commit the changes

3git push # --> push to the cloud

Remember to enable GitHub Pages on your repo.


This very documentation was created using codedoc, so basically every feature you see here you would get for your own documentation. Check out this repository to see how exactly these documentations were created using codedoc.

linkEnhanced Markdown

1Hi _this_ is my content, and let me have some buttons beneath it:


3> :Buttons <!--> this is how you use custom components -->

4> > :Button icon=true, label=share, url= <!--> this `Button` component is a child of the `Buttons` component -->


6> > :Button label=Google!, url= <!--> this other `Button` is also part of the parent `Buttons` component -->

Hi this is my content, and let me have some buttons beneath it:


Learn More

linkEnhanced Code Snippets

1So I have some code with enhanced features here:


3import { build } from '@codedoc/core'; // --> programmatically import codedoc

4import { join } from 'path'; // @see [official docs](


6function doStuff() { // --> this function does stuff.

7 console.log('Lets see the markdown again'); // @see tab:the markdown



10> :Buttons

11> > :CopyButton

So I have some code with enhanced features here:

1import { build } from '@codedoc/core'; // --> programmatically import codedoc

2import { join } from 'path'; // @see [official docs](


4function doStuff() { // --> this function does stuff.

5 console.log('Lets see the markdown again'); // @see tab:the markdown


Learn More


Easily change any aspect of your docs, from theme colors and fonts to meta data of each page and their layouts. Create your own custom header or ToC with JSX/TSX-based components, or use custom JSX-TSX-based components in your markdown.

The component-based structure of codedoc simply means that you can even re-use your custom components across different projects, or you can publish them (for example to NPM) so that other people can enjoy them too!

If your project is on GitHub, codedoc by default includes a cross-docs search functionality using GitHub search API. You can also easily integrate your own search APIs into the default search components (besides being able to actually use your own custom search components).

The same search functionality is used on this documentation. You can check it out by clicking on the menu icon in the footer and opening the search functionality.

linkIntegrated Dark Mode

Its 2020, and dark-mode should be considered a universal right! Codedoc supports dark-mode on all your docs. Device settings is used by default, while allowing your readers to manually override this.


Everything is markdown, so you can easily work on a project's documentation with your peers using any version control software like Git. No need for half-baked weird visual interfaces on top!


Codedoc is an open-source tool, completely free-to-use, MIT-licensed, no strings attached. I simply needed this tool to write usable docs for some open-source projects I was working on.

UsagePublishingFeaturesEnhanced MarkdownEnhanced Code SnippetsCustomizabilityIntegrated SearchIntegrated Dark ModeCollaborativeOpen-Source

Home Overview CLI Theme

Code Featureschevron_right

Images & Assets