Hold My Docs stores wiki pages as Git commits for easy recovery
A new self-hosted wiki called Hold My Docs saves every page edit as a Git commit, keeping documentation accessible even if the application fails.
Hold My Docs is a new open-source tool designed to solve the common problem of lost or inaccessible server documentation. Released in late October 2026, this self-hosted wiki stores all content as standard Markdown files within a Git repository rather than hiding them in a proprietary database. This approach ensures that technical notes remain readable and version-controlled, even if the web interface becomes unavailable.
What happened
The core innovation of Hold My Docs is its storage mechanism. Instead of relying on a complex database schema to manage content, the application writes every page save directly to a Git repository. This means that each edit creates a new commit, providing a complete history of changes without requiring additional backup tools. Users can browse this history through the web interface or access the raw files directly from the server’s file system.
This design addresses a frequent pain point for homelab enthusiasts and small IT teams: documentation rot. When servers change, configurations shift, and old notes become obsolete. With Hold My Docs, administrators can revert to previous versions of a page if a new configuration fails or if they need to recall why a specific setting was chosen months ago. The application also supports synchronization with remote Git repositories, allowing teams to maintain an off-site copy of their knowledge base automatically.
Beyond simple text storage, the tool offers a browser-based Markdown editor with live previews. It supports internal linking and backlinks, helping users connect related topics. A notable feature is the support for Mermaid diagrams, which allows engineers to draw network topologies or service architectures directly within their notes. This eliminates the need for separate diagramming software and keeps visual documentation alongside the textual instructions.
Key details
- Storage backend: All wiki pages are stored as plain Markdown files in a local Git repository.
- Version control: Every save action generates a Git commit, enabling full history tracking and rollback capabilities.
- Deployment options: The application is written in Go and can run as a standalone binary or via an official Docker Compose configuration.
- Authentication: Supports local user accounts and OpenID Connect (OIDC) for integration with existing identity providers.
- Search capabilities: Includes full-text search for wiki pages, with optional Apache Tika integration for indexing PDF and Office documents.
- Export features: Users can export entire namespaces as static websites for public sharing without exposing the wiki application.
Background
To understand the value of Hold My Docs, it helps to recognize the limitations of traditional wiki software. Many self-hosted wikis store content in databases like SQLite or PostgreSQL. While efficient for querying, this makes the data difficult to access outside the application. If the wiki software breaks or becomes unsupported, extracting the content can be challenging. By using Git, Hold My Docs leverages a technology that most developers and sysadmins already trust and understand.
Git is a distributed version control system widely used for software development. It tracks changes to files over time, allowing users to see who changed what and when. By treating documentation as code, Hold My Docs ensures that the data remains portable. Markdown is a lightweight markup language that is easy to read in plain text format. Combining these two technologies creates a documentation system that is resilient and future-proof, reducing the risk of vendor lock-in.
Why it matters
For teams that run their own software, accessibility during outages is critical. If your documentation server goes down, you often need that documentation to fix the server. Hold My Docs mitigates this catch-22 by keeping the underlying files in a standard format. Even if the web interface is unreachable, an administrator can SSH into the server, navigate to the Git repository, and read the Markdown files directly. This resilience is a significant advantage over database-driven solutions.
Additionally, the separation of concerns between private and public information is streamlined through namespaces. Administrators can keep sensitive server credentials and internal network maps in a private namespace while exporting non-sensitive household or general project notes as a static site. This flexibility allows organizations to share knowledge externally without compromising security or maintaining separate systems.
The optional MCP (Model Context Protocol) server integration also points toward future workflows where AI assistants can query documentation securely. However, this requires careful permission management to prevent AI tools from accessing sensitive infrastructure details. The tool’s design encourages a disciplined approach to documentation, making it easier to maintain accurate records over time.
What you can do
- Test the Docker deployment: Use the official Docker Compose file to spin up a local instance and evaluate the interface without committing to a long-term setup.
- Configure local storage carefully: Ensure the application’s data directory resides on local storage rather than NFS to avoid performance issues, though the Git repo can sync to network storage.
- Set up OIDC early: Integrate with your existing identity provider during initial setup to streamline user management and avoid managing separate local accounts.
- Enable Mermaid diagrams: Start documenting network structures using Mermaid syntax within your pages to keep visual aids synchronized with text.
- Schedule regular backups: Although Git provides history, maintain external backups of the repository to protect against physical hardware failure.
- Review permissions before enabling MCP: If you plan to use the AI integration, strictly limit access to non-sensitive namespaces to protect private infrastructure data.



