Rethink Development — public libs, standards, and deployment, in one handbook
Go to file
disqualifier c53d67da2f add uv as a parallel option alongside pip
uv is presented as the recommended faster, standards-compliant drop-in;
pip stays the baseline/fallback. uv command syntax verified against
docs.astral.sh/uv before writing.

environments.md:
- new 'uv (optional, faster)' section: install from pyproject
  (uv pip install . / -e . / '.[dev]'), the uv sync managed-venv flow,
  and a note that uv.lock is local-only/gitignored (not committed)
- pinning subsection: pin direct deps in pyproject via == or git @ref,
  with a warning that this pins direct deps only — transitive deps still
  float at build time (documented tradeoff)
- uv equivalents added beside pip in the Local .venv and Docker tabs

deploy.md:
- 'Faster builds with uv' tip: uv-from-ghcr COPY, ENV UV_COMPILE_BYTECODE=1,
  uv pip install --system . (reads pyproject, no lock)
- layer-caching shows the uv variant beside the pip one
- checklist notes uv pip install + UV_COMPILE_BYTECODE; fix stray 'configs'
  plural -> 'config'

.gitignore: ignore uv.lock (local-only, never committed).

Verified in-browser; mkdocs build --strict clean (anchors resolve).

Signed-off-by: disqualifier <dev@disqualifier.me>
2026-06-30 04:40:10 -04:00
docs add uv as a parallel option alongside pip 2026-06-30 04:40:10 -04:00
.gitignore add uv as a parallel option alongside pip 2026-06-30 04:40:10 -04:00
mkdocs.yml add Virtual environments page (project isolation + pyenv) 2026-06-29 20:54:31 -04:00
README.md add README 2026-06-29 20:57:45 -04:00
requirements.txt pin build deps in requirements.txt for native host build 2026-06-29 20:56:50 -04:00

handbook

The Rethink Studios handbook — our public reference for the shared library suite, coding standards, the dev workflow, Python environments, and how to deploy on our network.

Live at docs.rethinkstudios.io.

What this is

A static documentation site built with MkDocs + Material for MkDocs. Markdown lives under docs/, builds to a static site/, and is served by the reverse proxy at the subdomain — no app process, just static HTML/CSS/JS.

The Libraries page is the one dynamic part: it fetches the rethink-public repo list from the Gitea API client-side at view time, so new libraries appear on the next page load with no rebuild. Everything else is static markdown.

Build

python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
mkdocs build            # -> static site/
mkdocs serve            # local preview at http://127.0.0.1:8000

Contributing

  • One topic per page, grouped under docs/, wired into the nav in mkdocs.yml.
  • Public — sanitize: no real hostnames, internal IPs, secrets, or exact topology. Use placeholders (<dev>, <project>, /srv/...).
  • Markdown: trailing newline, no trailing whitespace, LF line endings.
  • Commits signed (git commit -s).