feat: scaffold monorepo with Go backend + Next.js 15 frontend

- Root monorepo: /backend (Go) + /frontend (Next.js 15)
- Go module: mgit.msbls.de/m/KanzlAI with minimal HTTP server
- Next.js 15: TypeScript strict, Tailwind CSS v4, App Router, Bun
- Root Makefile: dev, build, lint, test targets
- Root .gitignore covering Go, Node, IDE, OS files
- CLAUDE.md updated with project structure and tech stack
- .claude/CLAUDE.md with coding conventions (Go stdlib style, TS strict)
This commit is contained in:
m
2026-03-24 18:32:50 +01:00
parent 8688da0a60
commit e9bb6a7960
17 changed files with 1191 additions and 6 deletions

25
.claude/CLAUDE.md Normal file
View File

@@ -0,0 +1,25 @@
# KanzlAI Coding Conventions
## Go (backend/)
- Standard library style — prefer stdlib over third-party packages where reasonable
- `go vet` and `go test` must pass before committing
- Package layout: `cmd/` for entry points, `internal/` for private packages
- Error handling: return errors, don't panic. Wrap with context via `fmt.Errorf("operation: %w", err)`
- Naming: follow Go conventions (MixedCaps, not snake_case)
- No global mutable state
## TypeScript / Next.js (frontend/)
- TypeScript strict mode (enabled in tsconfig.json)
- App Router (src/app/) — no Pages Router
- Use server components by default, `"use client"` only when needed
- Tailwind CSS v4 for styling — no CSS modules or styled-components
- ESLint must pass before committing
- Import aliases: `@/` maps to `src/`
- Bun as package manager (not npm/yarn/pnpm)
## General
- No secrets in code — use environment variables
- Commit messages: `feat:`, `fix:`, `build:`, `refactor:`, `docs:`, `test:`, `chore:`