|
| 1 | +# Probitas Documentation |
| 2 | + |
| 3 | +[](https://jsr-probitas.github.io/documents) |
| 4 | +[](./LICENSE) |
| 5 | + |
| 6 | +Documentation site for [Probitas](https://jsr.io/@probitas/probitas) - a |
| 7 | +scenario-based testing framework for Deno. |
| 8 | + |
| 9 | +## Features |
| 10 | + |
| 11 | +- 📖 Comprehensive documentation with markdown source |
| 12 | +- 🔗 Auto-generated API reference from TypeScript source |
| 13 | +- 🤖 LLM-friendly endpoints (`/llms.txt`, `*.md`) |
| 14 | +- ⚡ Static site generation with Hono SSG |
| 15 | + |
| 16 | +## Quick Start |
| 17 | + |
| 18 | +```bash |
| 19 | +# Clone the repository |
| 20 | +git clone https://github.com/jsr-probitas/documents.git |
| 21 | +cd documents |
| 22 | + |
| 23 | +# Start development server |
| 24 | +deno task dev |
| 25 | + |
| 26 | +# Open http://localhost:8000 |
| 27 | +``` |
| 28 | + |
| 29 | +## Commands |
| 30 | + |
| 31 | +| Command | Description | |
| 32 | +| ------------------------ | --------------------------------- | |
| 33 | +| `deno task dev` | Start dev server with watch mode | |
| 34 | +| `deno task start` | Start production server | |
| 35 | +| `deno task build` | Build static site to `dist/` | |
| 36 | +| `deno task preview` | Preview built site | |
| 37 | +| `deno task check` | Type check all files | |
| 38 | +| `deno task test` | Run tests | |
| 39 | +| `deno task verify` | Run fmt, lint, check, and test | |
| 40 | +| `deno task generate-api` | Regenerate API documentation JSON | |
| 41 | + |
| 42 | +## Project Structure |
| 43 | + |
| 44 | +``` |
| 45 | +documents/ |
| 46 | +├── main.ts # Entry point & Hono routes |
| 47 | +├── deno.json # Project configuration |
| 48 | +├── docs/ # Markdown documentation source |
| 49 | +├── data/ |
| 50 | +│ └── api/ # Generated API JSON (deno doc --json) |
| 51 | +├── templates/ # JSX page templates |
| 52 | +├── lib/ # Utility modules |
| 53 | +├── static/ # Static assets |
| 54 | +└── scripts/ # Build scripts |
| 55 | +``` |
| 56 | + |
| 57 | +## Routes |
| 58 | + |
| 59 | +| Path | Format | Description | |
| 60 | +| --------------------------- | -------- | --------------------- | |
| 61 | +| `/` | HTML | Landing page | |
| 62 | +| `/index.md` | Markdown | Overview for LLMs | |
| 63 | +| `/llms.txt` | Text | LLM site map | |
| 64 | +| `/docs/*` | HTML | Documentation pages | |
| 65 | +| `/docs/*.md` | Markdown | Raw markdown for LLMs | |
| 66 | +| `/api/` | HTML | API reference index | |
| 67 | +| `/api/{package}/` | HTML | Package API reference | |
| 68 | +| `/api/{package}/index.json` | JSON | API data | |
| 69 | +| `/api/{package}/index.md` | Markdown | API docs for LLMs | |
| 70 | + |
| 71 | +## Development |
| 72 | + |
| 73 | +### Prerequisites |
| 74 | + |
| 75 | +- [Deno](https://deno.land/) 2.x or later |
| 76 | + |
| 77 | +### Regenerating API Documentation |
| 78 | + |
| 79 | +API documentation is generated from JSR packages using `deno doc`: |
| 80 | + |
| 81 | +```bash |
| 82 | +deno task generate-api |
| 83 | +``` |
| 84 | + |
| 85 | +This fetches the latest API information from all `@probitas/*` packages and |
| 86 | +saves them to `data/api/`. |
| 87 | + |
| 88 | +## Deployment |
| 89 | + |
| 90 | +This site is deployed to **GitHub Pages** via GitHub Actions. |
| 91 | + |
| 92 | +1. Push to `main` branch |
| 93 | +2. GitHub Actions runs `deno task build` |
| 94 | +3. Static files in `dist/` are deployed to GitHub Pages |
| 95 | + |
| 96 | +Live site: https://jsr-probitas.github.io/documents |
| 97 | + |
| 98 | +## License |
| 99 | + |
| 100 | +[MIT](./LICENSE) © 2025 Alisue |
0 commit comments