Initial portal commit: landing + 9 AI-powered apps

Apps:
- dwg-rooms: extract room numbers from DWG/DXF
- dwg-counting: count symbols in PDF drawings (OpenCV template matching)
- contract-check: review PDF contracts against a checklist (Claude vision + Tesseract OCR fallback)
- email-drafter: bullet notes → polished Czech/English business emails
- invoice-extractor: PDF/image invoice → structured data → Excel
- translator: Czech-first translator across 19 languages with tone control
- vv-check: find inconsistent unit prices across VV sheets in one workbook
- vv-compare: diff original vs new VV files (changes / added / removed)
- feature-request: portal users submit ideas + sample files

Infrastructure:
- LiteLLM gateway with per-app virtual keys + budgets
- Langfuse observability
- Geist font, shared theme, cross-subdomain back link + theme sync via cookie/URL
- Caddy reverse proxy on *.klas.chat
This commit is contained in:
Ondřej Glaser
2026-05-13 15:25:04 +02:00
commit 48cef99257
139 changed files with 20171 additions and 0 deletions

53
.gitignore vendored Normal file
View File

@@ -0,0 +1,53 @@
# ── Secrets ──────────────────────────────────────────────────
# Never commit env files — every subapp keeps its own LiteLLM virtual key
# in .env. Use .env.example to document the required variables.
.env
.env.*
!.env.example
# ── Build artifacts ──────────────────────────────────────────
node_modules/
.next/
.turbo/
.vercel/
.swc/
__pycache__/
*.pyc
*.pyo
*.egg-info/
build/
dist/
# ── Runtime / volumes ────────────────────────────────────────
# Bind-mounted Docker volumes and tmp work dirs — never commit user data.
feature-request/data/
*/tmp/
# ── Test / sample artifacts (kept locally, not in repo) ──────
# Add specific samples back to the repo deliberately if needed.
ideas/*.xlsx
ideas/*.pdf
dwg-counting/test*.pdf
dwg-counting/symbol.png
dwg-counting/*.dwg
*.png.backup
# ── Local Playwright outputs ─────────────────────────────────
.playwright-mcp/
portal-tiles*.png
portal-cta*.png
# ── OS / editor ──────────────────────────────────────────────
.DS_Store
Thumbs.db
*.swp
*~
.idea/
.vscode/
# ── Logs ─────────────────────────────────────────────────────
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*