scaffold MkDocs Material handbook site
Initialize the public Rethink Studios docs site: - mkdocs.yml: Material theme, light/dark palette toggle, pymdownx extensions, search, four-section nav skeleton. - docs/index.md landing page with a card grid. - Stub index pages for deploy, conventions, libraries, runbooks. - .gitignore excludes .claude/, site/, and Python build cruft. Deploy guide deferred; deploy section is a placeholder for now. Signed-off-by: disqualifier <dev@disqualifier.me>
This commit is contained in:
commit
bad61bea2d
11
.gitignore
vendored
Normal file
11
.gitignore
vendored
Normal file
@ -0,0 +1,11 @@
|
||||
# Claude project scaffold — never committed
|
||||
.claude/
|
||||
|
||||
# MkDocs build output
|
||||
site/
|
||||
|
||||
# Python
|
||||
__pycache__/
|
||||
*.py[cod]
|
||||
.venv/
|
||||
venv/
|
||||
19
docs/conventions/index.md
Normal file
19
docs/conventions/index.md
Normal file
@ -0,0 +1,19 @@
|
||||
# Conventions
|
||||
|
||||
Coding, library, and infrastructure conventions that keep projects consistent.
|
||||
|
||||
!!! note "Work in progress"
|
||||
Individual convention pages will be added under this section and wired into
|
||||
the nav.
|
||||
|
||||
## Topics to document
|
||||
|
||||
- **Python style** — flake8 clean (max line 120), type hints on public
|
||||
functions, lowercase-start docstrings with no trailing period.
|
||||
- **Library layout** — `src/` layout, hatchling, Python ≥ 3.10, underscores in
|
||||
names, `aio`-prefix only for libs that define async surfaces.
|
||||
- **Logging** — emit-only in libraries (`logging.getLogger(__name__)`); handler,
|
||||
level, and format configured only at the application entry point.
|
||||
- **Files** — trailing newline, no trailing whitespace, LF line endings.
|
||||
- **Config** — config-free modules (inject dependencies), single source of
|
||||
truth, no duplicated logic or constants.
|
||||
22
docs/deploy/index.md
Normal file
22
docs/deploy/index.md
Normal file
@ -0,0 +1,22 @@
|
||||
# Deploy
|
||||
|
||||
Guides for getting a service from a repo to running behind the reverse proxy.
|
||||
|
||||
!!! note "Work in progress"
|
||||
The services-container deploy guide will live here. Until it's added, this
|
||||
page is a placeholder.
|
||||
|
||||
## Planned guides
|
||||
|
||||
- **Services container standard** — the baseline image, `uid 1337`, volume and
|
||||
log layout, healthchecks.
|
||||
- **Compose pattern** — how a service's `compose.yaml` wires into the shared
|
||||
proxy network.
|
||||
- **Reverse proxy** — exposing a service at a subdomain (sanitized).
|
||||
|
||||
## Conventions
|
||||
|
||||
- Containers run as the services uid (`1337`) per our container standard.
|
||||
- Logs land under `/srv/logs/...` mirroring the app's deploy path.
|
||||
- No real hostnames, internal IPs, or exact topology in these public pages —
|
||||
use placeholders and describe the pattern.
|
||||
46
docs/index.md
Normal file
46
docs/index.md
Normal file
@ -0,0 +1,46 @@
|
||||
# Rethink Studios Handbook
|
||||
|
||||
The shared reference for how we build, deploy, and operate. Generic patterns and
|
||||
conventions live here — sanitized for public consumption. Real infrastructure
|
||||
specifics (hostnames, internal IPs, secrets, exact topology) stay in our private
|
||||
runbooks.
|
||||
|
||||
## Sections
|
||||
|
||||
<div class="grid cards" markdown>
|
||||
|
||||
- :material-rocket-launch: __[Deploy](deploy/index.md)__
|
||||
|
||||
---
|
||||
|
||||
How services get from a repo to running behind the proxy — container
|
||||
standards, compose patterns, and step-by-step deploy guides.
|
||||
|
||||
- :material-ruler-square: __[Conventions](conventions/index.md)__
|
||||
|
||||
---
|
||||
|
||||
Coding, library, and infrastructure conventions. Naming, layout, logging,
|
||||
and the rules that keep things consistent across projects.
|
||||
|
||||
- :material-package-variant: __[Libraries](libraries/index.md)__
|
||||
|
||||
---
|
||||
|
||||
Usage docs for the shared `rethink-public` library suite — what each lib
|
||||
does and how to wire it into a project.
|
||||
|
||||
- :material-tools: __[Runbooks](runbooks/index.md)__
|
||||
|
||||
---
|
||||
|
||||
Operational how-tos for recurring tasks — sanitized for public reference.
|
||||
|
||||
</div>
|
||||
|
||||
## Conventions for this handbook
|
||||
|
||||
- One topic per page, grouped by section directory.
|
||||
- Public means sanitized: use placeholders (`<host>`, `<dev>`, `/srv/...`) and
|
||||
describe the pattern, not our literal infrastructure.
|
||||
- Code blocks are tagged with their language and kept copy-pasteable.
|
||||
23
docs/libraries/index.md
Normal file
23
docs/libraries/index.md
Normal file
@ -0,0 +1,23 @@
|
||||
# Libraries
|
||||
|
||||
Usage docs for the shared `rethink-public` library suite. Before hand-rolling
|
||||
common functionality, check the suite first and prefer an existing lib.
|
||||
|
||||
!!! note "Work in progress"
|
||||
A page per library will be added here. Browse the `rethink-public` org for
|
||||
the live list — each repo's tagline says what it does.
|
||||
|
||||
## Install pattern
|
||||
|
||||
```
|
||||
<lib> @ git+https://git.rethinkstudios.io/rethink-public/<lib>.git@<tag>
|
||||
```
|
||||
|
||||
## Common capabilities covered by the suite
|
||||
|
||||
Retry/backoff, logging setup, HTTP sessions, proxies, webhooks, IMAP/mail,
|
||||
Mongo/KV/datastore, crypto/envelope, `discord.py` helpers, and timing/paths/
|
||||
masking utilities.
|
||||
|
||||
If a capability isn't in the suite, build it in-project — and flag whether it's
|
||||
generic enough to become a new shared lib.
|
||||
17
docs/runbooks/index.md
Normal file
17
docs/runbooks/index.md
Normal file
@ -0,0 +1,17 @@
|
||||
# Runbooks
|
||||
|
||||
Operational how-tos for recurring tasks — sanitized for public reference.
|
||||
|
||||
!!! note "Work in progress"
|
||||
Individual runbooks will be added under this section and wired into the nav.
|
||||
|
||||
## Sanitization reminder
|
||||
|
||||
Runbooks often touch real infrastructure. Before a runbook goes public:
|
||||
|
||||
- Replace real hostnames, internal IPs, and exact topology with placeholders
|
||||
(`<host>`, `<dev>`, `/srv/...`).
|
||||
- Strip secrets and credentials entirely — reference where they live, never the
|
||||
values.
|
||||
- Keep the procedure and the reasoning; drop the specifics that identify our
|
||||
boxes.
|
||||
69
mkdocs.yml
Normal file
69
mkdocs.yml
Normal file
@ -0,0 +1,69 @@
|
||||
site_name: Rethink Studios Handbook
|
||||
site_description: Deploy guides, infra and container standards, conventions, library usage, and runbooks.
|
||||
site_url: https://docs.rethinkstudios.io/
|
||||
copyright: Rethink Studios
|
||||
|
||||
theme:
|
||||
name: material
|
||||
language: en
|
||||
palette:
|
||||
- media: "(prefers-color-scheme: light)"
|
||||
scheme: default
|
||||
primary: indigo
|
||||
accent: indigo
|
||||
toggle:
|
||||
icon: material/weather-night
|
||||
name: Switch to dark mode
|
||||
- media: "(prefers-color-scheme: dark)"
|
||||
scheme: slate
|
||||
primary: indigo
|
||||
accent: indigo
|
||||
toggle:
|
||||
icon: material/weather-sunny
|
||||
name: Switch to light mode
|
||||
features:
|
||||
- navigation.instant
|
||||
- navigation.tracking
|
||||
- navigation.sections
|
||||
- navigation.top
|
||||
- navigation.indexes
|
||||
- toc.follow
|
||||
- search.suggest
|
||||
- search.highlight
|
||||
- content.code.copy
|
||||
- content.code.annotate
|
||||
icon:
|
||||
repo: fontawesome/brands/git-alt
|
||||
|
||||
markdown_extensions:
|
||||
- admonition
|
||||
- attr_list
|
||||
- md_in_html
|
||||
- tables
|
||||
- toc:
|
||||
permalink: true
|
||||
- pymdownx.details
|
||||
- pymdownx.superfences
|
||||
- pymdownx.tabbed:
|
||||
alternate_style: true
|
||||
- pymdownx.highlight:
|
||||
anchor_linenums: true
|
||||
- pymdownx.inlinehilite
|
||||
- pymdownx.snippets
|
||||
- pymdownx.emoji:
|
||||
emoji_index: !!python/name:material.extensions.emoji.twemoji
|
||||
emoji_generator: !!python/name:material.extensions.emoji.to_svg
|
||||
|
||||
plugins:
|
||||
- search
|
||||
|
||||
nav:
|
||||
- Home: index.md
|
||||
- Deploy:
|
||||
- deploy/index.md
|
||||
- Conventions:
|
||||
- conventions/index.md
|
||||
- Libraries:
|
||||
- libraries/index.md
|
||||
- Runbooks:
|
||||
- runbooks/index.md
|
||||
Loading…
Reference in New Issue
Block a user