9 SaaS produktů za rok — jak stavím a nasazuju v produkci
Za 12 měsíců jsem navrhl, vyvinul a nasadil 9 SaaS produktů. CraftIO, Beamcast, Dentiqa, Šepot, Tastly, Moje Obec a další. Tady je metodika, stack a výsledky.
Portfolio: 9 produkčních SaaS produktů
Za posledních 12 měsíců jsem navrhl, vyvinul a nasadil do produkce 9 SaaS produktů. Každý řeší konkrétní problém v konkrétním odvětví:
- CraftIO — CRM systém pro řemeslníky. Next.js + Supabase + Flutter. Kompletní správa zakázek, fakturace, kontaktů, obchodních příležitostí, kalendáře a reportů. 19 databázových tabulek, 35 routes.
- Beamcast — Digital signage platforma. Správa obrazovek v restauracích, obchodech a čekárnách. PWA player pro TV, real-time aktualizace obsahu. 14 tabulek, 51 RLS politik.
- Dentiqa — SaaS pro zubní ordinace. Správa pacientů, termínů, zákroků a dokumentace.
- Šepot — End-to-end šifrovaný messenger postavený na Rustu. Zero-knowledge architektura — server nikdy nevidí obsah zpráv.
- Tastly — Receptová aplikace s gamifikací a AI asistentem "Tastly Chef". Sociální funkce, sbírání achievementů.
- Moje Obec — B2G platforma pro obce. Aktuality, události, hlášení závad, ankety, gamifikace pro zapojení občanů.
- EduConnect — Školní informační systém. Elektronická třídnice, rozvrhy, komunikace mezi školou a rodiči.
- TruhlářPRO — SaaS pro truhlářské dílny. Zakázky, materiálové kalkulace, řízení výroby.
- B2B weby — 8 marketingových webů pro akvizici zákazníků (firemnisoft.cz, softnamiru.cz, chciappku.cz, vyvinuto.cz a další).
Každý produkt běží na vlastní infrastruktuře. Žádný vendor lock-in, plná kontrola nad daty i deploymentem.
Standardizovaný stack
Rychlost a konzistence vychází z jednoho ověřeného technologického stacku:
- Web: Next.js 15/16 + Tailwind + shadcn/ui + Framer Motion
- Backend: Supabase (self-hosted) — PostgreSQL, Auth, Storage, Realtime
- Mobile: Flutter + Riverpod + GoRouter
- Infra: Proxmox + Docker Compose + Cloudflare Tunnel
- Dev: Claude Code pro AI-assisted vývoj, n8n pro automatizaci workflow
Standardizace znamená, že každý nový projekt stojí na stejných osvědčených základech. Schema isolation v Supabase (každý produkt má vlastní PostgreSQL schema — CraftIO v craftio, Beamcast v signage) umožňuje sdílet infrastrukturu bez kompromisů v izolaci dat.
Nový projekt = inicializace Next.js, připojení Supabase schema, definice Docker Compose stacku a deploy. Workflow je zautomatizovaný a opakovatelný.
AI-assisted development
Claude Code běží na dedikovaném dev serveru v mé infrastruktuře. Používám ho na generování boilerplate kódu, code review, psaní databázových migrací a automatizaci infrastrukturních úloh.
Klíč je v tom, jak AI využívám — ne jako generátor celých aplikací, ale jako multiplikátor vývojářské kapacity. Architektonická rozhodnutí, doménová logika a UX design jsou vždy moje. AI akceleruje implementaci.
Výsledek: sólový vývojář s výstupem celého týmu.
Architektura produkčního nasazení
Všech 15+ webů běží na jednom Docker-web serveru. Každý produkt má přidělený port, Docker Compose stack a Cloudflare Tunnel ingress pravidlo:
- 57 ingress pravidel v jednom Cloudflare Tunnel
- Automatický SSL bez jediného certifikátu ke správě
- Zero otevřených portů na routeru — veškerý traffic jde přes tunnel
Monorepo struktura pro větší projekty (CraftIO, Beamcast) se sdílenými typy a schématy mezi webem a mobilní aplikací. Menší projekty (B2B weby, landing pages) mají standalone repozitáře.
Každý projekt má standardizovanou dokumentaci na Nextcloudu: BRIEF, TECH-STACK, TODO-CHECKLIST. Když se vracím k projektu po týdnech, přesně vím, kde jsem skončil a co je další krok.
Metodika: od nápadu po produkci
Proces pro každý produkt je stejný:
- Research a validace — analýza trhu, konkurence, potenciálních zákazníků. Landing page s kontaktním formulářem jako první krok.
- Dokumentace — BRIEF definuje vizi, persony a klíčové funkce. TECH-STACK specifikuje architekturu.
- MVP development — standardizovaný stack, iterativní vývoj, průběžné nasazování.
- Production deploy — Docker Compose, Cloudflare Tunnel, monitoring přes Uptime Kuma.
- Iterace — zpětná vazba od uživatelů, měření, optimalizace.
Každý produkt prochází stejným pipeline. To je důvod, proč devět produktů za rok není sprint — je to systém.
Čísla
Konkrétní data z produkce:
- 9 SaaS produktů navržených, vyvinutých a nasazených za 12 měsíců
- 15+ živých webů na vlastní infrastruktuře
- 19 databázových tabulek v CraftIO, 14 v Beamcast, izolované schema per projekt
- 35 routes v CraftIO web aplikaci, 23 v Beamcast dashboardu
- 57 ingress pravidel v Cloudflare Tunnel
- 25+ LXC kontejnerů na dvou Proxmox nodech
- 8 B2B marketingových webů pro akvizici zákazníků
Další fáze
CraftIO a Beamcast jsou teď hlavní fokus — aktivní vývoj a příprava na první platící zákazníky. Dentiqa, EduConnect a Moje Obec mají jasný roadmap a postupně se posouvají k produkční verzi.
B2B weby mezitím dělají svou práci — generují traffic a přivádějí kontakty přes formuláře.
Podrobnosti o infrastruktuře, na které to celé běží, jsem popsal v článku o homelabu.