Builder Flow v8 — Każda persona zostaje na swojej domenie, wspólny silnik niewidoczny
Czym jest Builder Flow v8?
Builder Flow v8 to proces, w którym każda persona pozostaje na swojej domenie przez cały czas — od pierwszej reklamy, przez landing page, checkout, aż po codzienne użytkowanie aplikacji. Wspólny silnik istnieje, ale jest całkowicie niewidoczny dla użytkownika.
Kluczowa różnica względem v7:
| Aspekt | v7 | v8 ✅ |
|---|---|---|
| Landing page | prywaciarz.10s.pl | prywaciarz.10s.pl |
| Checkout | prywaciarz.10s.pl/checkout/ | prywaciarz.10s.pl/checkout/ |
| Aplikacja | app.10s.pl (ujawnia wspólny silnik) | prywaciarz.10s.pl/app/ (niewidoczny silnik) |
| Thank you | prywaciarz.10s.pl/thank-you/ | prywaciarz.10s.pl/thank-you/ |
| Widoczność silnika | JAWNA — app.10s.pl to inna domena | UKRYTA — app pod domeną persony |
Zasada: Użytkownik NIGDY nie opuszcza domeny, na którą trafił z reklamy. Nie wie, że istnieją inne persony, inne domeny, ani że pod spodem działa ten sam silnik.
Architektura — niewidoczny silnik
ZEWNĄTRZ (3 pozornie niezależne produkty):
===========================================
prywaciarz.10s.pl/ firmowiec.10s.pl/
├── index.html (landing) ├── index.html (landing)
├── checkout/ (krypto) ├── checkout/ (B2B)
├── thank-you/ (link) ├── thank-you/ (faktura)
├── app/ ← silnik ├── app/ ← ten sam silnik
│ ├── dashboard/ │ ├── dashboard/
│ ├── sessions/ │ ├── sessions/
│ └── profile/ │ └── profile/
└── ... └── ...
WEWNĄTRZ (jeden silnik, wiele punktów montowania):
===================================================
/var/www/projects/_app/ ← JEDNO źródło kodu aplikacji
├── dashboard/index.html
├── sessions/index.html
└── profile/index.html
prywaciarz.10s.pl/app/ → symlink do /var/www/projects/_app/
firmowiec.10s.pl/app/ → symlink do /var/www/projects/_app/
Faza 0: Brainstorming
mkdir -p /root/projects/<projekt>/.superpowers/sdd
cat > /root/projects/<projekt>/.superpowers/sdd/brainstorming-brief.md << 'EOF'
# Brainstorming — produkt
- Jaki problem rozwiązuje ten produkt?
- Jaka jest jedna zdaniowa definicja?
- Jakie są kryteria sukcesu?
EOF
opencode run --prompt 'Przeczytaj brainstorming-brief.md. Zadaj pytania, zapisz odpowiedzi do brainstorming-report.md.' --auto
Faza 0.5: Persona Discovery
cat > /root/projects/<projekt>/.superpowers/sdd/persona-discovery-brief.md << 'EOF'
# Persona Discovery
Dla KAŻDEJ persony: tożsamość, motywacje, płatność, prywatność, język, customer journey.
Output: persona-discovery-report.md z 2-5 personami.
EOF
opencode run --prompt 'Przeczytaj brainstorming-report.md i persona-discovery-brief.md. Wykonaj Persona Discovery. Zapisz do persona-discovery-report.md.' --auto
Faza 0.75: Marketing Campaigns
cat > /root/projects/<projekt>/.superpowers/sdd/marketing-campaigns-brief.md << 'EOF'
# Marketing Campaigns per Persona
Dla każdej: kanały, targetowanie, budżet, KPI, keywords.
Output: marketing-campaigns-report.md
EOF
opencode run --prompt 'Przeczytaj persona-discovery-report.md i marketing-campaigns-brief.md. Wygeneruj marketing-campaigns-report.md.' --auto
Faza 0.8: Domain Strategy
cat > /root/projects/<projekt>/.superpowers/sdd/domain-strategy-brief.md << 'EOF'
# Domain Strategy — osobne domeny, jeden silnik, zero widoczności
## Cel
Dla KAŻDEJ persony: domena, branding, nazwa produktu, slogan, USP, cena, ton.
Każda domena wygląda jak ZUPEŁNIE INNY produkt.
## WAŻNE — architektura v8
- Aplikacja działa pod domeną persony: prywaciarz.10s.pl/app/
- Żadnych linków do app.10s.pl (ta domena nie istnieje dla użytkownika)
- Żadnych linków do innych person
- Każda persona myśli, że to JEDYNY produkt
## Przykład 1: Prywaciarz
- Domena: prywaciarz.10s.pl
- Nazwa: Incognito Browser
- Slogan: "Zero śledzenia. Zero logowania. Zero danych."
- Cena: 0.05 XMR lifetime
- App URL: prywaciarz.10s.pl/app/
- Ton: techniczny, konkretny
## Przykład 2: Firmowiec
- Domena: firmowiec.10s.pl
- Nazwa: EnterpriseShield
- Slogan: "Bezpieczna przeglądarka dla Twojej firmy."
- Cena: $19/user/miesiąc
- App URL: firmowiec.10s.pl/app/
- Ton: formalny, biznesowy
## Output
Plik domain-strategy-report.md
EOF
opencode run --prompt 'Przeczytaj persona-discovery-report.md, marketing-campaigns-report.md i domain-strategy-brief.md. Wygeneruj domain-strategy-report.md.' --auto
Faza 1: Specyfikacja przez superpowers SDD
cat > .superpowers/sdd/phase-1-brief.md << 'EOF'
# Phase 1: Specyfikacja biznesowa
Persony, user stories, MVP scope, przepływ biznesowy (od reklamy do aktywnego użytkownika, per persona, per domena)
Output: phase-1-report.md
EOF
opencode run --prompt 'Przeczytaj brainstorming-report.md, persona-discovery-report.md, domain-strategy-report.md i phase-1-brief.md. Wygeneruj phase-1-report.md.' --auto
cat > .superpowers/sdd/phase-2-brief.md << 'EOF'
# Phase 2: Specyfikacja techniczna
## Struktura URL-i (v8 — app pod domeną persony)
- prywaciarz.10s.pl/ → landing page
- prywaciarz.10s.pl/checkout/ → checkout
- prywaciarz.10s.pl/thank-you/ → potwierdzenie
- prywaciarz.10s.pl/app/ → aplikacja (wspólny silnik, ale pod tą domeną)
- prywaciarz.10s.pl/app/dashboard/ → dashboard
- prywaciarz.10s.pl/app/sessions/ → sesje
- prywaciarz.10s.pl/app/profile/ → profil
- firmowiec.10s.pl/ → landing page
- firmowiec.10s.pl/checkout/ → checkout
- firmowiec.10s.pl/thank-you/ → potwierdzenie
- firmowiec.10s.pl/app/ → aplikacja (ten sam silnik, ale pod tą domeną)
- firmowiec.10s.pl/app/dashboard/ → dashboard
- firmowiec.10s.pl/app/sessions/ → sesje
- firmowiec.10s.pl/app/profile/ → profil
## Wspólny silnik — implementacja
Jeden katalog z kodem aplikacji, montowany pod każdą domeną:
/var/www/projects/_app/ → kod źródłowy aplikacji
/var/www/projects/prywaciarz/app/ → symlink do _app
/var/www/projects/firmowiec/app/ → symlink do _app
## Output
Plik phase-2-report.md
EOF
opencode run --prompt 'Przeczytaj phase-1-report.md i phase-2-brief.md. Wygeneruj phase-2-report.md.' --auto
cat > .superpowers/sdd/phase-3-brief.md << 'EOF'
# Phase 3: Specyfikacja wizualna
## Kategoria A: Landing Pages (per domena)
Dla każdej: domena, URL, cel, sekcje, CTA, komponenty DaisyUI
## Kategoria B: Checkout Pages (per domena)
Dla każdej: URL, kroki, formularze, metody płatności
## Kategoria C: Thank You Pages (per domena)
Dla każdej: URL, co widzi po zakupie
## Kategoria D: Aplikacja (wspólny silnik, montowany per domena)
JEDEN zestaw stron aplikacji, który działa pod każdą domeną:
- /app/dashboard/ → dashboard
- /app/sessions/ → sesje
- /app/profile/ → profil
## Output
Plik phase-3-report.md
EOF
opencode run --prompt 'Przeczytaj phase-1-report.md, phase-2-report.md i phase-3-brief.md. Wygeneruj phase-3-report.md.' --auto
Faza 1.5: Hooks & Angles
cat > /root/projects/<projekt>/.superpowers/sdd/hooks-brief.md << 'EOF'
# Hooks & Angles — 10+ powodów
Dla każdego: headline, body, persona, kanał, emocja.
Kategorie: pain, benefit, curiosity, social proof, objection.
Output: hooks-report.md
EOF
opencode run --prompt 'Przeczytaj persona-discovery-report.md, domain-strategy-report.md, marketing-campaigns-report.md i hooks-brief.md. Wygeneruj hooks-report.md.' --auto
Faza 1.75: Ad Creatives
cat > /root/projects/<projekt>/.superpowers/sdd/ad-creatives-brief.md << 'EOF'
# Ad Creatives — gotowe teksty reklam
Dla każdej persony × kanał: platforma, nagłówek, opis, CTA, URL docelowy (domena persony), wariant B.
WAŻNE: URL docelowy = domena persony. Żadnych linków do wspólnej domeny.
Output: ad-creatives-report.md
EOF
opencode run --prompt 'Przeczytaj persona-discovery-report.md, domain-strategy-report.md, hooks-report.md i ad-creatives-brief.md. Wygeneruj ad-creatives-report.md.' --auto
Faza 2: Design System — DaisyUI per domena
Każda domena ma własny data-theme, ale app jest neutralny i ten sam dla wszystkich.
<!-- prywaciarz.10s.pl — data-theme="dark" (custom neon) -->
<!DOCTYPE html>
<html lang="pl" data-theme="dark">
<head>
<link href="https://cdn.jsdelivr.net/npm/daisyui@5" rel="stylesheet">
<script src="https://cdn.tailwindcss.com"></script>
<script>
tailwind.config = { daisyui: { themes: [{ dark: { "primary": "#22c55e", "base-100": "#0f172a" } }] } }
</script>
<!-- firmowiec.10s.pl — data-theme="corporate" (custom granat) -->
<!DOCTYPE html>
<html lang="pl" data-theme="corporate">
<head>
<link href="https://cdn.jsdelivr.net/npm/daisyui@5" rel="stylesheet">
<script src="https://cdn.tailwindcss.com"></script>
<script>
tailwind.config = { daisyui: { themes: [{ corporate: { "primary": "#1e3a5f", "base-100": "#ffffff" } }] } }
</script>
<!-- Aplikacja (wspólny silnik) — neutralny, ten sam dla wszystkich domen -->
<!-- Używa data-theme="light" — żadnego brandingu, żadnej persony -->
<!DOCTYPE html>
<html lang="pl" data-theme="light">
<head>
<link href="https://cdn.jsdelivr.net/npm/daisyui@5" rel="stylesheet">
<script src="https://cdn.tailwindcss.com"></script>
Faza 3: Landing Pages — osobna domena per persona
Krok 3.1: Landing page prywaciarz.10s.pl
opencode run --prompt '
Stwórz landing page w /var/www/projects/prywaciarz.10s.pl/index.html.
ZASADY:
1. DaisyUI dark (primary: #22c55e, base-100: #0f172a)
2. TYLKO klasy DaisyUI — zero hexów, zero inline style
3. Język: techniczny, konkretny
4. NIGDZIE nie wspominaj o innych produktach
SEKCJE: Hero, Problem (karty), Rozwiązanie, Korzyści (grid 3x2), Jak działa (steps), Cena (0.05 XMR), FAQ (accordion), Footer
CTA: "Kup za Monero →" → /checkout/
Link do app: NIE ma linku do app na landing page (app jest po zakupie)
' --auto
Krok 3.2: Landing page firmowiec.10s.pl
opencode run --prompt '
Stwórz landing page w /var/www/projects/firmowiec.10s.pl/index.html.
ZASADY:
1. DaisyUI corporate (primary: #1e3a5f, base-100: #ffffff)
2. TYLKO klasy DaisyUI
3. Język: formalny, biznesowy
4. NIGDZIE nie wspominaj o innych produktach
SEKCJE: Hero, Problem, Rozwiązanie, Korzyści (grid 3x2), Cena ($19/user/miesiąc, $15 roczny), Jak działa, FAQ, Footer
CTA: "Zamów dla firmy →" → /checkout/
' --auto
Faza 3.5: Checkout + Thank You — wszystko na tej samej domenie
Checkout na prywaciarz.10s.pl
opencode run --prompt '
Stwórz /var/www/projects/prywaciarz.10s.pl/checkout/index.html.
Kroki: 1. Wybierz krypto (Monero/BTC) → 2. Wyślij 0.05 XMR → 3. Czekaj → 4. Odbierz link
CTA: "Już wysłałem — sprawdź →" → /thank-you/
Link do app: /app/dashboard/ (NA TEJ SAMEJ DOMENIE)
DaisyUI dark, jak landing page.
' --auto
Thank You na prywaciarz.10s.pl
opencode run --prompt '
Stwórz /var/www/projects/prywaciarz.10s.pl/thank-you/index.html.
"Gratulacje! Jesteś teraz anonimowy."
"Twój link: https://prywaciarz.10s.pl/app/link/abc123"
CTA: "Przejdź do aplikacji →" → /app/dashboard/ (NA TEJ SAMEJ DOMENIE)
DaisyUI dark.
' --auto
Checkout na firmowiec.10s.pl
opencode run --prompt '
Stwórz /var/www/projects/firmowiec.10s.pl/checkout/index.html.
Kroki: 1. Dane firmy → 2. Wybierz plan → 3. Płatność → 4. Potwierdzenie
CTA: "Zamów i zapłać" → /thank-you/
Link do app: /app/dashboard/ (NA TEJ SAMEJ DOMENIE)
DaisyUI corporate.
' --auto
Thank You na firmowiec.10s.pl
opencode run --prompt '
Stwórz /var/www/projects/firmowiec.10s.pl/thank-you/index.html.
"Dziękujemy za zamówienie!"
"Panel admina: https://firmowiec.10s.pl/app/admin/"
CTA: "Przejdź do panelu →" → /app/dashboard/ (NA TEJ SAMEJ DOMENIE)
DaisyUI corporate.
' --auto
Faza 4: Wspólny silnik — app pod każdą domeną (NOWOŚĆ v8)
Aplikacja jest JEDEN kod, ale działa pod każdą domeną. Użytkownik nigdy nie widzi innej domeny.
Krok 4.1: Kod aplikacji w jednym miejscu
# JEDEN katalog z kodem aplikacji
mkdir -p /var/www/projects/_app/dashboard
mkdir -p /var/www/projects/_app/sessions
mkdir -p /var/www/projects/_app/profile
Krok 4.2: Generuj aplikację
opencode run --prompt '
Stwórz wspólną aplikację w /var/www/projects/_app/.
ZASADY:
1. DaisyUI light — neutralny, zero brandingu, zero person
2. TYLKO klasy DaisyUI
3. Żadnych linków do zewnętrznych domen — wszystkie linki RELATIVE (np. /app/dashboard/)
4. Żadnego logo, żadnej nazwy produktu — tylko "Aplikacja" lub "Dashboard"
5. Aplikacja ma działać na KAŻDEJ domenie — wszystkie linki relative
Struktura:
/var/www/projects/_app/
├── dashboard/index.html — Dashboard z statystykami i tabelą
├── sessions/index.html — Lista sesji z filtrami
├── profile/index.html — Profil, PIN, urządzenia
### Dashboard
- Navbar: linki do /app/dashboard/, /app/sessions/, /app/profile/
- Breadcrumbs: App > Dashboard
- Statystyki: karty DaisyUI z komponentem stat
- Tabela: table table-zebra z ostatnimi aktywnościami
- Alert: alert alert-info z następną sesją
### Sesje
- Lista sesji z filtrami (data, status)
- Paginacja
- Szczegóły: przycisk "Szczegóły" → modal DaisyUI
### Profil
- Ustawienia PIN
- Lista urządzeń
- Preferencje (język, theme)
- Przycisk wylogowania
Wszystkie linki RELATIVE: href="/app/dashboard/", href="/app/sessions/"
' --auto
Krok 4.3: Montuj app pod każdą domeną przez symlink
# Zamiast kopiować kod, użyj symlinka
# Każda domena ma app/ → _app/
ln -sf /var/www/projects/_app /var/www/projects/prywaciarz/app
ln -sf /var/www/projects/_app /var/www/projects/firmowiec/app
# Teraz:
# prywaciarz.10s.pl/app/ → /var/www/projects/_app/
# firmowiec.10s.pl/app/ → /var/www/projects/_app/
Krok 4.4: Weryfikacja — app działa na każdej domenie
# Sprawdź czy app działa na prywaciarz.10s.pl
curl -s -H "Host: prywaciarz.10s.pl" http://127.0.0.1/app/dashboard/ | grep -c "Dashboard"
# Oczekiwane: > 0 (app działa)
# Sprawdź czy app działa na firmowiec.10s.pl
curl -s -H "Host: firmowiec.10s.pl" http://127.0.0.1/app/dashboard/ | grep -c "Dashboard"
# Oczekiwane: > 0 (app działa)
# Sprawdź czy to ten sam kod (symlink)
ls -la /var/www/projects/prywaciarz/app
ls -la /var/www/projects/firmowiec/app
# Oba → /var/www/projects/_app/
Faza 5: Ad Funnel — reklamy do różnych domen
opencode run --prompt '
Stwórz /var/www/projects/ad-funnel.10s.pl/index.html.
Symulacja reklam prowadzących do RÓŻNYCH domen.
### Google Ads
- "Prywatna przeglądarka. Zero śledzenia." → https://prywaciarz.10s.pl/
- "Bezpieczna przeglądarka dla Twojej firmy." → https://firmowiec.10s.pl/
### Reddit
- Post na r/privacy → https://prywaciarz.10s.pl/
### LinkedIn
- Sponsored → https://firmowiec.10s.pl/
### Info
"🔍 Każda reklama prowadzi do INNEJ domeny. Użytkownik NIGDY nie opuszcza swojej domeny — app jest pod /app/ na tej samej domenie."
' --auto
Faza 6: Pre-launch validation
Krok 6.1: Weryfikacja — wszystkie strony pod każdą domeną
# Sprawdź czy każda domena ma kompletny zestaw stron
for domain in prywaciarz.10s.pl firmowiec.10s.pl; do
echo "=== $domain ==="
for path in / /checkout/ /thank-you/ /app/dashboard/; do
code=$(curl -s -o /dev/null -w "%{http_code}" -H "Host: $domain" "http://127.0.0.1$path")
echo "$path → HTTP $code"
done
done
Krok 6.2: Weryfikacja — zero wycieków
# 1. Zero cross-linków między domenami
grep -c 'firmowiec\|EnterpriseShield' /var/www/projects/prywaciarz/index.html || true
grep -c 'prywaciarz\|Incognito\|Monero\|XMR' /var/www/projects/firmowiec/index.html || true
# 2. Zero brandingu persony w aplikacji
grep -c 'Incognito\|EnterpriseShield\|prywaciarz\|firmowiec' /var/www/projects/_app/dashboard/index.html || true
# 3. Zero linków do app.10s.pl w landing page
grep -c 'app\.10s\.pl' /var/www/projects/prywaciarz/index.html || true
grep -c 'app\.10s\.pl' /var/www/projects/firmowiec/index.html || true
# 4. Sprawdź czy linki w app są relative (nie leadują do innej domeny)
grep -c 'href="http' /var/www/projects/_app/dashboard/index.html || true
# Oczekiwane: 0 (wszystkie linki relative)
Krok 6.3: Weryfikacja — symlinki działają
# Sprawdź czy obie domeny serwują TEN SAM kod aplikacji
diff /var/www/projects/prywaciarz/app/dashboard/index.html /var/www/projects/firmowiec/app/dashboard/index.html
# Oczekiwane: brak różnic (to ten sam plik)
# Sprawdź czy to symlinki
readlink -f /var/www/projects/prywaciarz/app
readlink -f /var/www/projects/firmowiec/app
# Oba → /var/www/projects/_app
Krok 6.4: Raport do zatwierdzenia
hermes kanban --board convertere comment <card-id> \
"[CEO] ✅ Prototyp v8 — każda persona na swojej domenie:
🔒 prywaciarz.10s.pl:
- Landing: / (dark, Incognito)
- Checkout: /checkout/ (Monero)
- Thank you: /thank-you/ (link)
- App: /app/dashboard/ (tej samej domenie!)
🏢 firmowiec.10s.pl:
- Landing: / (corporate, EnterpriseShield)
- Checkout: /checkout/ (B2B)
- Thank you: /thank-you/ (faktura)
- App: /app/dashboard/ (tej samej domenie!)
📢 ad-funnel.10s.pl — symulacja reklam
Weryfikacja:
✅ HTTP 200 — wszystkie strony pod każdą domeną
✅ Zero cross-linków — prywaciarz nie zna firmowiec
✅ Aplikacja neutralna — zero brandingu persony
✅ Symlinki — jeden kod, wiele domen
✅ Wszystkie linki w app są relative
⏳ Czekam na zatwierdzenie"
Architektura v8 — pełna wizualizacja
Z PERSPEKTYWY UŻYTKOWNIKA (Prywaciarz):
=========================================
Reklama na Reddit → prywaciarz.10s.pl/ → kupuje za Monero →
prywaciarz.10s.pl/checkout/ → prywaciarz.10s.pl/thank-you/ →
prywaciarz.10s.pl/app/dashboard/ → codziennie używa
NIGDY nie widzi innej domeny.
Z PERSPEKTYWY UŻYTKOWNIKA (Firmowiec):
=========================================
Reklama na LinkedIn → firmowiec.10s.pl/ → zamawia B2B →
firmowiec.10s.pl/checkout/ → firmowiec.10s.pl/thank-you/ →
firmowiec.10s.pl/app/dashboard/ → codziennie używa
NIGDY nie widzi innej domeny.
Z PERSPEKTYWY TECHNICZNEJ:
============================
/var/www/projects/
├── _app/ ← JEDNO źródło kodu
│ ├── dashboard/index.html
│ ├── sessions/index.html
│ └── profile/index.html
├── prywaciarz/
│ ├── index.html ← landing page (dark)
│ ├── checkout/index.html
│ ├── thank-you/index.html
│ └── app → ../_app/ ← SYMLINK (ten sam kod)
├── firmowiec/
│ ├── index.html ← landing page (corporate)
│ ├── checkout/index.html
│ ├── thank-you/index.html
│ └── app → ../_app/ ← SYMLINK (ten sam kod)
└── ad-funnel/
└── index.html
Porównanie v7 → v8
| Aspekt | v7 | v8 ✅ |
|---|---|---|
| Aplikacja | app.10s.pl (osobna domena, ujawnia silnik) | /app/ na domenie persony — silnik ukryty |
| Link do app w thank-you | https://app.10s.pl/... | /app/dashboard/ (relative, ta sama domena) |
| Widoczność silnika | JAWNA — użytkownik widzi app.10s.pl | UKRYTA — użytkownik nigdy nie opuszcza swojej domeny |
| Kod aplikacji | Kopiowany per domena | Jeden kod, symlinki do _app/ |
| Linki w app | Do app.10s.pl | Relative — działają na każdej domenie |
| Branding w app | Neutralny | Neutralny — zero brandingu persony |
| DNS | 4 domeny (prywaciarz, firmowiec, app, ad-funnel) | 3 domeny (prywaciarz, firmowiec, ad-funnel) — app nie potrzebuje własnej domeny |
Playbook: 60-minutowy Builder Flow v8
Przygotowanie (2 min):
- [ ]
mkdir -p /root/projects/<projekt> && cd $_ && git init - [ ] Stwórz kanban task
Brainstorming + Persona Discovery (8 min):
- [ ] Pytania o produkt + identyfikacja person
Domain Strategy (5 min):
- [ ] Dla każdej persony: domena, branding, slogan, USP, CTA
- [ ] Wybierz motyw DaisyUI per domena
Marketing + Hooks + Ads (8 min):
- [ ] Kampanie, hooki, ad creatives
Specyfikacja (5 min):
- [ ] superpowers SDD → phase-1, phase-2, phase-3
Landing Pages per domena (10 min):
- [ ] prywaciarz.10s.pl — landing + checkout + thank-you
- [ ] firmowiec.10s.pl — landing + checkout + thank-you
Wspólny silnik (5 min):
- [ ] Stwórz _app/ z aplikacją (neutralna, light)
- [ ] Symlink: ln -sf _app prywaciarz/app
- [ ] Symlink: ln -sf _app firmowiec/app
Ad Funnel (3 min):
- [ ] ad-funnel.10s.pl — symulacja reklam
Weryfikacja (14 min):
- [ ] HTTP 200 dla wszystkich stron pod każdą domeną
- [ ] Zero cross-linków między domenami
- [ ] Zero brandingu persony w _app/
- [ ] Zero linków do app.10s.pl
- [ ] Linki w app są relative
- [ ] Symlinki działają (diff = 0)
- [ ] Decyzja go/no-go
Mierzenie sukcesu
| Metryka | Target | Jak mierzyć | ||
|---|---|---|---|---|
| Strony per domena | 4+ (/, /checkout/, /thank-you/, /app/*) | for path in ...; do curl ...; done | ||
| HTTP 200 dla wszystkich | 100% | curl -s -o /dev/null -w "%{http_code}" | ||
| Zero cross-linków | 0 | `grep -c "firmowiec\ | EnterpriseShield" prywaciarz/index.html` | |
| Zero brandingu w _app | 0 | `grep -c "Incognito\ | EnterpriseShield" _app/dashboard/index.html` | |
| Zero linków do app.10s.pl | 0 | grep -c "app\.10s\.pl" prywaciarz/index.html | ||
| Linki w app są relative | 100% | `grep -c 'href="http' _app/dashboard/index.html \ | \ | true` |
| Symlinki działają | diff = 0 | diff prywaciarz/app/dashboard/index.html firmowiec/app/dashboard/index.html | ||
| Ten sam _app dla wszystkich | 100% | readlink -f prywaciarz/app && readlink -f firmowiec/app | ||
| Osobne domeny per persona | = persony | grep -r 'data-theme' /var/www/projects/ | ||
| Czas od pomysłu do prototypu | < 60 min | Stoper |
Źródła (Linki URL)
- DaisyUI — dokumentacja
- DaisyUI — lista komponentów
- DaisyUI — custom themes
- Tailwind CSS — dokumentacja
- superpowers — obra/superpowers GitHub
- opencode — kimi-k27/code
- Builder Flow v1
- Builder Flow v2
- Builder Flow v3
- Builder Flow v4
- Builder Flow v5
- Builder Flow v6
- Builder Flow v7
- Builder Flow v8 — ta wersja
Źródła (Pliki)
/root/.config/opencode/opencode.json— konfiguracja opencode/root/convertere/reports/builder-flow-v1.md— v1/root/convertere/reports/builder-flow-v2.md— v2/root/convertere/reports/builder-flow-v3.md— v3/root/convertere/reports/builder-flow-v4.md— v4/root/convertere/reports/builder-flow-v5.md— v5/root/convertere/reports/builder-flow-v6.md— v6/root/convertere/reports/builder-flow-v7.md— v7/root/convertere/reports/builder-flow-v8.md— ten raport