Skip to content

docs: start the developer docs site with self-hosting and the API - #1

Merged
devaryakjha merged 2 commits into
mainfrom
claude/project-thread-01jkv0
Oct 25, 2026
Merged

devaryakjha merged 2 commits into
mainfrom
claude/project-thread-01jkv0

Conversation

@devaryakjha

Copy link
Copy Markdown
Contributor

Requested by Arya · project thread

Before

Chek had no public developer docs. How to self-host the server was spread across READMEs in chek, docs/server.md and the deploy folder. openapi.yaml wasn't rendered anywhere.

After

This is the first version of docs.chek.page, as an Astro Starlight site.

  • Get started: what Chek is, and a quick-start tutorial.
  • Self-hosting: how-to guides for install (Docker, Compose, Dokploy, source), first setup, HTTPS behind Caddy, nginx or Cloudflare, accounts, OIDC providers, Komga and Kavita, OPDS, uploads, extensions, updates and backups, logs, and troubleshooting. It also has a configuration reference for every CHEK_* variable.
  • API: an overview of authentication, access, paging, errors and caching, and a guide to reading and syncing from a client.
  • API reference: a page for each of the 90 operations, generated by starlight-openapi from openapi.yaml at chek 0.3.0.

The pages follow the pstack technical-writing rules, and AGENTS.md records those rules for later pages. I left out the private Fly.io proxy, the private sources and the demo setup.

How

  • Astro 7 and Starlight run under bun --bun, and the site is static output. scripts/cloudflare.ts turns that output into the prebuilt output cf deploy reads, like chek.page. bun run deploy publishes it to the chek-docs worker at docs.chek.page.
  • The brand tokens and self-hosted fonts come from chek.page. The site ships no React or Vue, and if it ever needs a component, the rule is SolidJS.
  • chekRelease in astro.config.ts pins the server release that the reference is built from. The spec itself stays in chek.
  • CI runs lint, format check, astro check (which needs TypeScript 6) and the build.
  • I checked every setting, endpoint, error code and default against chek's code and openapi.yaml.

Checks

  • bun run check, bun run lint, bun run format:check and bun run build pass locally
  • No broken internal links in the built site (checked with a script over dist/)
  • Pages describe what the linked release does, not what's planned
  • Not deployed. The DNS for docs.chek.page and the first bun run deploy are left for you

Generated by Claude Code

Starlight on Bun, deployed to Cloudflare like chek.page, with Chek's brand
tokens and self-hosted fonts. Covers getting started, running Chek server
and the API, with the reference built from openapi.yaml at chek 0.3.0.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PY1z7gbTSbKghKSF1tWxKN
One mode per page, task titles for how-to guides, short sentences in the
second person, conditions before instructions, and no dashes, semicolons
or slashes. Provider settings move into the configuration reference, and
AGENTS.md records the writing rules.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PY1z7gbTSbKghKSF1tWxKN
@devaryakjha devaryakjha self-assigned this Oct 25, 2026
@devaryakjha
devaryakjha merged commit e09bfb7 into main Oct 25, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants