hraness

Personal Monorepo Template — Documentation skill for Claude Code

Documentation community

An agent-friendly monorepo template for a personal website, Markdown knowledge base, Direct, and reusable Codex skills.

How to install Personal Monorepo Template

This entry records only its repository, not the path inside it, so there is no exact command to give. Open hraness/personal-monorepo-template and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

What Personal Monorepo Template does

An agent-friendly monorepo template for a personal website, Markdown knowledge base, Direct, and reusable Codex skills.

Alternatives in Documentation

README

Personal monorepo template

Build a personal website, a Git-backed Markdown knowledge base, reusable Codex skills, and a deterministic browser workbench from one repository.

The useful result is visible in the first session: your name is on a local site, a durable note lives beside it, the real interface can open in named test states, and one command can prove the repository is ready to hand off.

This is a template, not a hosted product. It contains no Hraness identity, icon, authentication, database, RSS content, inherited notes, books, Vercel account, domain, or analytics project. You supply the identity, material, and provider accounts. The repository supplies the working boundaries.

Create your repository

  1. Click **Use this template** on GitHub. Choose visibility for the notes you expect to keep here.

  2. Clone the generated repository:

    git clone https://github.com/YOUR-ACCOUNT/YOUR-REPOSITORY.git
    cd YOUR-REPOSITORY
  3. Install [Bun 1.3.14](https://bun.sh/) and Node.js 24, then install the frozen dependency graph:

    bun install --frozen-lockfile

The initial install reads pinned public Hraness packages from GitHub tags. The lockfile fixes the complete graph after that.

First proof: make it yours

Follow this path before exploring the rest of the repository:

  1. Replace the example identity and links in `personal-website/src/site.ts`. Set the generated repository's confidential reporting route in `SECURITY.md`.

  2. Start the real personal site:

    bun run dev
  3. Create a durable Markdown note under `kb/notes/`, then check the vault lane without writing shared derived state:

    bun run kb:check:lane
  4. Open named light, dark, and long-content states of the real homepage in the separate Direct workbench:

    bun run dev:direct
  5. Prove lint, types, tests, dependency boundaries, KB policy, both builds, and the production boundary together: