Pełna budowa nowego SaaSa AI dev-chat od zera do produkcji w jedną noc. Backend, frontend, admin, i18n, easter eggi, deploy. Wszystko własne, własny brand, własny kod.
Premium ciemny design w stylu Pinky Creative Studio. Hero z animowaną siatką terminalową 4×4 (16 kafelków agentów typewriter z pseudo-output, status dots green/yellow/red, własne komendy Pinky stack — scaffold, refactor, deploy, easter-egg, mollie-webhook etc).
Express + better-sqlite3 + helmet + rate-limit. Streaming chat przez Server-Sent Events. Router modeli: Anthropic Claude (Opus/Sonnet/Haiku) + OpenRouter (GLM 4.5 Air free + GLM 5.1). Każdy plan dostaje inny default model.
Bring Your Own Key dla użytkowników: szyfrowanie AES-256-GCM at rest, nigdy logujemy surowych kluczy. Admin/account auth bcrypt rounds 12 + HMAC cookie. Rate limit auth 30/15min, chat 30/min. Audit log każdej akcji (login, BYOK save, plan change, ban). CSV export.
Stripe Checkout Sessions + webhook (subscription.created/deleted). Plan free 10 msg/dzień GLM, Pro €19/mc Claude Sonnet, Team €49/mc Claude Opus + 5 seats. BYOK obchodzi limit free. Wszystko optional — brak tokenów Stripe = checkout button info "email klientenservice".
3 języki (EN/NL/PL), ~90 kluczy każdy, globus + dropdown z flagami. KAŻDY widoczny tekst w UI reaguje na język. Cookie banner (functional only). Polityki Privacy/Terms/Cookies w 3 językach (~600 słów per język, RODO/AVG conform). AVG disclaimer w stopce.
Pełen PINKY-MOBILE-SAFE-v2 + FIT-v3 boilerplate. Zero horizontal scroll na iPhone. WhatsApp FAB pulsujący (62px). Favicon SVG + manifest PWA. Meta + OG + Twitter Card + JSON-LD (Organization + SoftwareApplication + 3 oferty). robots.txt + sitemap.xml.
Dedykowany dashboard pod /apps/pinkycode/admin/ z 8 kafelkami i sidebarem 7 sekcji. Per-app admin widoki:
| Sekcja | Widok | Akcje | Status |
|---|---|---|---|
| 📊 Dashboard | 8 kafelków + recent activity (12 ostatnich) | nawigacja | 200 |
| 👥 Users | Lista z filtrem search | plan switch (free/pro/team), ban/unban | 200 |
| 💬 Chats | 100 ostatnich z user + msg count + model | read-only | 200 |
| 📰 News | Lista postów (slug, status, views) | edytor TODO | 200 |
| 📩 Leads | Tabela kontaktów | read-only | 200 |
| 🔍 Audit | 200 ostatnich eventów | CSV export | 200 |
| ⚙️ Settings | Konfiguracja k=v | edycja inline | 200 |
Blok 7 linii █ "PINKYCODE" widoczny w view-source na stronie głównej. View → Source.
Blok PINKY w view-source na stronie chat. Plus "Built by Mateusz Kuzniar · Den Bosch, NL".
"pinkycode admin · staff only · all actions audited" w stopce panelu admina.
Open DevTools → Console na dowolnej stronie. ASCII art z podpisem + zaproszenie do Konami code.
Wciśnij sekwencję na klawiaturze. Pełnoekranowy overlay "You found Pinky." z mailem kontaktowym.
Dodaj ?pinky=1 do URL. Pojawia się overlay developerski z brand/lang/user/base/night info.
Kliknij logo PinkyCode 7 razy w ciągu 7 sekund. Aktywuje dev overlay (jak ?pinky=1).
Między północą a 1:00 lokalnie pojawia się top-right "🌙 Pracujesz po nocach? Pinky też."
| Endpoint | HTTPS | Notatka |
|---|---|---|
| /healthz | 200 | JSON: status, users, chats, messages, uptime |
| / | 200 | landing 17.6 KB, hero grid + 6 features + demo + CTA |
| /pricing | 200 | 3 plany + BYOK note |
| /docs | 200 | quickstart + API + privacy |
| /account/register | 200 | email+pass+name+GDPR |
| /account/login | 200 | email+pass+next param |
| /legal/privacy | 200 | 3 lang (EN/NL/PL) zależnie od cookie |
| /legal/terms | 200 | 3 lang |
| /legal/cookies | 200 | 3 lang |
| /admin/login | 200 | standalone shell |
| /admin/dashboard | 200 | tile-grid 8 + recent activity |
| /favicon.svg | 200 | gradient pink→violet "P" |
| /manifest.json | 200 | PWA |
| /api/sitemap.xml | 200 | auto-gen |
| /css + /js | 200 | main.css, hero-grid.css, hero-grid.js, easter-eggs.js, lang-switcher.js, cookie-banner.js, chat-stream.js |
lib/admin.js + views/admin/_shell.ejs dopasowany do schemy PinkyCode. Cleaner.Lokalna SQLite na VPS (/var/www/pinkycode/db/pinkycode.db, WAL mode), seeded z 1 adminem:
admin@pinkycode.dev · plan team · subscription activeSTRIPE_SECRET_KEY + STRIPE_WEBHOOK_SECRET + STRIPE_PRICE_PRO + STRIPE_PRICE_TEAM do .env i pm2 reload pinkycode/apps/pinkycode/admin~/Desktop/Apps Cloude/pinky-cc-tg-bot/)