A cookiecutter template for creating beautiful documentation projects using Pandoc, org-mode, and modern web styling.
- π Org-mode support - Write in powerful org-mode syntax
- π¨ Beautiful styling - Pico.css for clean, responsive design
- π§ Complete build system - Makefile-based workflow
- β Grammar checking - Optional LanguageTool integration
- π Python tooling - Managed with pipenv
- π Auto-generated TOC - From your document structure
- π― Syntax highlighting - For code blocks
- π Live reload - Auto-rebuild on file changes
Install cookiecutter:
pip install cookiecuttercookiecutter pandoc-documentation-tool/You'll be prompted for:
- project_name: The name of your documentation project
- author_name: Your name
- author_email: Your email
- project_description: Brief description
- include_grammar_check: Whether to include grammar checking tool
- create_introduction_chapter: Whether to create a starter chapter
$ cookiecutter pandoc-documentation-tool/
project_name [My Documentation Project]: Technical Guide
author_name [Your Name]: Jane Doe
author_email [[email protected]]: [email protected]
project_description [A brief description of your documentation project]: A comprehensive technical guide
document_language [en-US]: en-US
python_version [3.13]: 3.13
include_grammar_check [true]: true
create_introduction_chapter [true]: true
β Created technical-guide/
β Initialized git repository
β Installed dependencies
π Technical Guide created successfully!your-project/
βββ chapters/ # Your documentation chapters (org files)
β βββ introduction.org
βββ css/ # Styling files
β βββ pico.min.css # Pico CSS framework
β βββ docs.css # Custom documentation styles
β βββ highlighting.css # Syntax highlighting
βββ templates/ # Pandoc HTML templates
β βββ template.html
βββ tools/ # Utility scripts
β βββ check_grammar.py # Grammar checker (optional)
βββ Makefile # Build commands
βββ metadata.yml # Document metadata
βββ Pipfile # Python dependencies
βββ pyproject.toml # Python project config
βββ README.md # Project documentation
- Python 3.13+ - For tooling
- Pandoc - Document conversion engine
- Make - Build system
- yq - YAML processor for Makefile
# Option 1: Using Homebrew directly
brew install pandoc yq pipenv typos-cli
pip install cookiecutter
# Option 2: Using Brewfile (after generating project)
cd your-project/
brew bundle
pip install cookiecutterapt-get install pandoc make
snap install yq
pip install pipenv cookiecutter# In WSL/Ubuntu
apt-get install pandoc make
snap install yq
pip install pipenv cookiecutterAfter generating your project:
make- Build HTML documentationmake clean- Remove generated filesmake ba- Clean and rebuild
make serve- Start local server (port 4030)make watch- Auto-rebuild on changes
make grammar- Check grammar (if enabled)make typos- Check for typosmake lint- Lint Python codemake format- Format Python codemake check- Run all checks
* First Level Heading
** Second Level Heading
*** Third Level Heading
*bold* /italic/ _underline_ +strikethrough+ =verbatim= ~code~
- Unordered list
- Nested item
1. Ordered list
2. Second item
#+BEGIN_SRC python
def example():
return "code block with syntax highlighting"
#+END_SRC
[[https://example.com][External link]]
[[#section-id][Internal link]]
- Create new
.orgfile inchapters/ - Add to
metadata.ymlsections list - Run
maketo rebuild
| Variable | Description | Default |
|---|---|---|
project_name |
Name of your documentation | My Documentation Project |
project_slug |
Directory name (auto-generated) | my-documentation-project |
author_name |
Your name | Your Name |
author_email |
Your email | [email protected] |
project_description |
Brief description | A brief description... |
document_language |
Language code for spell check | en-US |
python_version |
Python version requirement | 3.13 |
include_grammar_check |
Include grammar checking tool | true |
create_introduction_chapter |
Create starter content | true |
The template automatically:
- Removes unused files based on your choices
- Creates
.gitignore - Initializes git repository
- Installs Python dependencies
- Checks for required system tools
- Edit
css/docs.cssfor custom styles - Replace
css/pico.min.csswith another CSS framework - Modify
templates/template.htmlfor layout changes
- Edit
Makefilefor custom build steps - Add Pandoc filters to
PipfileandMakefile - Modify
metadata.ymlfor document settings
Contributions are welcome! Please feel free to submit issues or pull requests.
This cookiecutter template is open source and available under the MIT License.
Built with:
- Pandoc - Universal document converter
- Pico.css - Minimal CSS framework
- Cookiecutter - Project templating
- LanguageTool - Grammar checking