Bold Banana Agency Platform
- Label typu
- internal project
- Status
- w budowie
- Języki
- PL (domyślny) i EN
- Ścieżki w routingu
- 13 — każda w obu językach
- Kolory spoza palety
- 0 — blokuje je bramka

Cel
Strona ma robić to, co sprzedajemy: prowadzić dwa języki bez duplikowania treści, trzymać jeden system marki i nie wpuszczać do siebie rzeczy, których nie da się obronić. Jest równocześnie wizytówką agencji i jej pierwszym projektem portfolio.
Proces
Kanon przed kodem: decyzje o marce, ofercie i zasadach portfolio mieszkają w jednym pliku, a nie w głowach dwóch osób.
Szkielet: monorepo pnpm, Next.js 15 z App Routerem, TypeScript, Tailwind v4 z tokenami marki w @theme — bez pliku konfiguracyjnego Tailwinda.
Dwujęzyczność od pierwszego dnia: next-intl, polski jako domyślny, tłumaczone adresy (/pl/oferta ↔ /en/services), hreflang i canonical na każdej stronie.
Bramki przed scaleniem: skrypt marki blokuje kolor spoza palety, drugi pilnuje wersji kanonu, a typecheck i produkcyjny build muszą przejść na zielono.
Stack
- Next.js 15 (App Router)
- TypeScript
- Tailwind CSS v4
- next-intl 4
- pnpm workspaces
- Vercel
- GitHub
Rezultat demonstracyjny
- Dwa języki, jeden zestaw treści: każda strona ma tłumaczony adres, hreflang i canonical — bez duplikatów w wyszukiwarce.
- Wdrożenie na Vercelu serwuje /pl i /en; sprawdzamy to po treści strony, nie po samym kodzie odpowiedzi.
- Kolor spoza palety marki nie wchodzi do repozytorium — blokuje go skrypt, nie dobre chęci.
- Dostępność: link „przejdź do treści” i wskaźnik focusa dobrany osobno do jasnego i ciemnego tła.
Demo
Demo tego projektu to strona, na której właśnie jesteś. Kliknij cokolwiek — to nie jest makieta ani nagranie.
Otwórz stronę głównąStan na dziś
Część stron to jeszcze szkice. Formularz kontaktowy i zapis zapytań dochodzą w kolejnej sesji, a domena boldbanana.agency jest kupiona, ale świadomie jeszcze nie podpięta pod ten adres. Status „w budowie” zdejmiemy, kiedy projekt spełni definicję ukończenia z kanonu — nie wcześniej.
Wróć do portfolio