MakerFLOSS/CLAUDE.md
sjat 16f56fd961
All checks were successful
Build docs site / build (push) Successful in 30s
Build slides / build (push) Successful in 48s
docs: standardise filenames to ASCII kebab-case + ISO date prefix
Adopt one filename convention everywhere except hardware host pages
(those are pinned to their hostnames by the index validator):

  - ASCII lowercase
  - kebab-case word separator
  - dated docs: YYYY-MM-DD-label.md (hyphen between date and label)
  - English regardless of content language

Renames:
  docs/makerFLOSS_house_rules.md                        -> docs/house-rules.md
  docs/infrastruktur/                                   -> docs/infrastructure/
  docs/infrastructure/vps-og-dns.md                     -> docs/infrastructure/vps-and-dns.md
  docs/presentations/2026-05-11_messaging.md            -> docs/presentations/2026-05-11-messaging.md
  docs/presentations/2026-05-11_SoMe-taxonomi.md        -> docs/presentations/2026-05-11-social-media-taxonomy.md
  notes/todo/2026-04-14_todo.md                         -> notes/todo/2026-04-14-todo.md
  notes/todo/OM_services.md                             -> notes/todo/om-services.md
  notes/todo/indkøbsliste.md                            -> notes/todo/wishlist.md
  notes/communications/2026-03-16_facebookpost.md       -> notes/communications/2026-03-16-facebook-post.md

Other touches:
- Document the convention in CLAUDE.md under Working Norms.
- Refresh the stale Repository Structure block in CLAUDE.md to reflect
  the docs/ vs notes/ split introduced in f6d589e.
- Update the House rules link in docs/index.md and the nav entry in
  mkdocs.yml to the new house-rules.md path.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-18 17:07:26 +02:00

50 lines
2.5 KiB
Markdown

# CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
## Project Overview
This is a **documentation-only repository** for the MakerFLOSS initiative at Orange Makerspace — a bi-weekly FLOSS jam-session community focused on self-hosted, open-source infrastructure. There is no build system, test suite, or application code.
## Working Norms
From `notes/todo/2026-04-14-todo.md`:
- **Language**: English for code, docs, commits (meeting notes may be in Danish)
- **Git**: Trunk-based development, feature branches, simple commit messages
- **Environments**: Containerized and reproducible
- **Hardware**: All setups documented with README + labeled physically
- **AI**: Allowed but reviewed; no secrets in commits
- **Decisions**: Lightweight markdown decision logs
- **License**: FLOSS by default
- **Filenames**: ASCII lowercase, kebab-case (`like-this.md`), English regardless of content language. Dated docs use an ISO prefix joined with a hyphen: `YYYY-MM-DD-label.md`. Hostnames are the exception — `docs/hardware/*.md` must equal the host's `hostname` (enforced by `scripts/gen_overview.py`).
## Repository Structure
```
docs/ # everything here is built and shipped to docs.makerfloss.eu
hardware/ # auto-indexed per-host frontmatter (mf00..mf03, makerfloss.eu)
infrastructure/ # labdesign, VPS/DNS, etc.
presentations/ # Marp decks (build-slides.sh)
notes/ # repo-only working material, not built
meetings/ # meeting notes (Danish allowed)
todo/ # task lists, working norms, wishlist, services
dev/ # internal plans/ and specs/
communications/ # community comms artifacts (Facebook posts, etc.)
sandbox/ # scratch / pipeline fixtures (e.g. test-mermaid.md)
```
## Infrastructure
The MakerFLOSS infrastructure is managed externally via the **AnsibleBaobabV4** Ansible project (hosted at `forgejo.nyumbani.baobab.band/sjat/AnsibleBaobabV4`). Key facts:
- **VPS**: `88.99.32.236`, SSH on port `7576`
- **Forgejo** (self-hosted git forge): `https://forgejo.makerfloss.eu`, SSH on port `7577`
- **Reverse proxy**: Traefik with automatic Let's Encrypt TLS
- **DNS**: `makerfloss.eu` via Gandi.net, managed declaratively through Ansible (`play_dns.yml --limit makerfloss`)
- **DNS records must never be edited directly** in the Gandi panel — always edit `host_vars/makerfloss.yml` in AnsibleBaobabV4
Clone via Forgejo SSH:
```bash
git clone ssh://git@forgejo.makerfloss.eu:7577/<user>/<repo>.git
```