add documentation

- README.md: project overview, commands, structure
- CLAUDE.md: agent guidelines for slide editing
This commit is contained in:
2025-12-30 11:30:45 +01:00
parent 41a6c8bd2a
commit 3c78c898dd
2 changed files with 256 additions and 0 deletions

74
CLAUDE.md Normal file
View File

@@ -0,0 +1,74 @@
# CLAUDE.md - Agent Guidelines for HdM Slides
This project builds presentation decks for Marp, supporting multiple courses.
## Courses
- **223015b** - Dateiformate, Schnittstellen, Speichermedien (6 Termine)
- **223015c** - Internettechnologien (3 Termine)
## Agent Restrictions
- Agent NEVER runs commands outside this folder
- Agent NEVER runs build/deploy commands without explicit user request
- Agent NEVER runs deploy commands (make deploy, scp, etc.) without explicit user permission
## Critical File Protection
Slide files in `courses/*/slides/*.md` are main content files:
- ALLOWED: Adding slides, adjusting content, fixing typos, enhancing sections
- FORBIDDEN (without permission): Deleting slides, removing sections, bulk deletions
- Before ANY deletion: ALWAYS ask user for confirmation
## Project Structure
```
courses/
├── 223015b/slides/ # Dateiformate course
└── 223015c/slides/ # Internettechnik course
scripts/ # Shared scripts
themes/ # Custom Marp themes
build/ # Generated output (gitignored)
```
## Build Commands
```bash
make dev-b # Dev server 223015b (port 1312)
make dev-c # Dev server 223015c (port 1313)
make build # Build all courses
make build-b # Build 223015b only
make build-c # Build 223015c only
make html # HTML only
make pdf # PDF only
make deploy # Deploy all (ASK FIRST!)
```
## Nix Flake Commands
```bash
nix develop # Dev shell with all tools
nix run .#qr -- "https://example.com" # Generate QR code
nix run .#qr-slides -- 223015b # QR for course
nix run .#optimize-img -- <path> # Optimize images
```
## Code Style Guidelines
### File Structure
- Slides in `courses/<course>/slides/`
- Assets in `courses/<course>/slides/assets/`
- Always reference images as `./assets/filename.png`
### Naming Conventions
- Slide files: `YYYY-MM-DD-termin-N-topic.md`
- Images: `snake_case.jpg` or `kebab-case.jpg`
### Markdown Style
- Use ATX-style headers (# ## ###)
- Frontmatter for slide metadata
- Never include a final `---` (creates empty slide)
### Git Workflow
- Commit messages: ALWAYS lowercase
- NEVER add co-authoring lines or generated footers