booyaka

A fast documentation generator for cool kids!

Pure Nim score 15/100 · tests present · no docs generated

Summary

Latest Version 0.1.0
License AGPL-3.0-or-later
CI Status Failing
Downloads 0
Last Indexed 2026-09-04 07:26

Authors

  • George Lemon

Installation

nimble install booyaka
choosenim install booyaka
git clone https://github.com/openpeeps/booyaka

OS Compatibility

Platform Linux macOS Windows FreeBSD OpenBSD NetBSD Android iOS WASM Embedded
booyaka - - - - - - -

Dependencies

Package Version Optional
nim >= 2.0.0 No
supranim >= 0.1.9[powpow] No
powpow >= 0.1.8 No
tim >= 0.2.6 No
marvdown >= 0.1.4 No
flatty >= 0.4.0 No
semver >= 1.2.3 No
iconim >= 0.1.0 No
openparser >= 0.1.2 No
emitter >= 0.2.1[powpow] No
supra >= 0.1.0 No

Source

Repository https://github.com/openpeeps/booyaka
Homepage https://github.com/openpeeps/booyaka
Registry Source nimble_official

README

Booyaka Logo
Booyaka — A fast documentation generator for cool kids!
Compiled • Lightweight • Fast • Written in Nim

nimble install booyaka | Download from GitHub

Github Actions Github Actions

Booyaka Homepage Preview

Key Features

  • Compiled, lightweight, and fast; fully self-hosted
  • Cross-platform CLI application (Linux, macOS, Windows)
  • Generate documentation websites from Markdown files
  • Build online book-style websites directly from Markdown
  • Embedded HTTP server with dynamic site generation
  • Static site generation with the build command
  • Client-side fuzzy search with offline support
  • Browser Sync and Live Reload while writing documentation
  • YAML or JSON based configuration
  • Responsive UI powered by Bootstrap 5
  • Light, dark, and system themes with a theme switcher
  • Left and right sidebars: manual navigation or auto-generated table of contents
  • Nested table of contents and bottom previous/next page navigation
  • Configurable code syntax highlighting themes
  • Lazy loading for iframes, videos, audio, and images
  • Customizable with project CSS and JavaScript
  • AI share buttons for ChatGPT, Claude, Gemini, and GitHub Copilot
  • Optional Git-based versioning and contributors information
  • Print-friendly layout for PDF export
  • SEO metadata support
  • Open Source | AGPLv3 License

[!NOTE] Booyaka is still in active development. Expect frequent updates and new features as we work towards a stable release.

About

Booyaka is a documentation site generator that takes a directory of Markdown files and generates a fully functional documentation website, then serves it dynamically using an embedded HTTP server. It can also export a complete static HTML website for hosting anywhere. It is designed to be simple, fast, and easy to use.

Booyaka is written in Nim language, a statically typed compiled systems programming language that combines the performance and low-level control of C with the expressiveness and ease of use of modern languages like Python and Ruby. Learn more about Nim.

Installation

Download the precompiled binaries from the releases page or use nimble to build from source. Read the Nim installation guide if you don't have Nim installed.

Prerequisites

  • Nim >= 2.2.10
nimble install booyaka

Getting Started

Create a new Booyaka project by running the following command, replacing <directory> with the path of the directory you want to create the documentation site from:

booyaka new <directory>

Booyaka will create a new directory with the necessary files and folders to get started. Navigate to the newly created directory and start the embedded HTTP server:

cd <directory>
booyaka start --port:8000 --sync

Open your web browser and go to http://localhost:8000 to view your documentation site. The --sync flag enables Browser Sync and Live Reload while you write.

To generate a static HTML website for hosting, run:

booyaka build <directory>

CLI

Command Description
booyaka new <directory> Create a new Booyaka project (--json to generate a JSON config)
booyaka start <directory> Start the embedded HTTP server (--port, --sync)
booyaka build <directory> Generate a static HTML website

Configuration

Booyaka reads a booyaka.config.yaml, booyaka.config.yml, or booyaka.config.json file in the project directory. It supports metadata (title, description, keywords, logo), appearance (themes, layout widths, theme switcher), header (search, notification banner), content (lazy loading, code highlighting, bottom navigation), navigation (navbar, sidebar sections), footer, and optional Git-based versioning and contributors information.

Roadmap

Here are some planned features and improvements for future releases:

  • [ ] UI mobile-optimized refinements
  • [ ] Inline Markdown editor for content editing
  • [ ] Feedback and commenting system
  • [ ] Authentication for private documentation
  • [ ] Multi-language support

Contributions & Support

OpenCode Switch to Open-Source LLMs via OpenCode GO, choosing from a variety of powerful models such as DeepSeek, Qwen, Kimi, GLM-5, MiniMax, MiMo. Use our referral link to get started!

License

AGPLv3 license. Made by Humans from OpenPeeps.
Copyright OpenPeeps & Contributors — All rights reserved.