<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>spoko.space — Blog</title><description>🚀 Modern Web Solutions for Your Business. From Concept to Code - Expert Web Development</description><link>https://spoko.space/</link><item><title>Edytor PDF online</title><link>https://spoko.space/pl/edytor-pdf-online/</link><guid isPermaLink="true">https://spoko.space/pl/edytor-pdf-online/</guid><description>Darmowy edytor PDF działający w przeglądarce, zaprojektowany z myślą o prywatności. Zamiana tekstu, zarządzanie stronami, wyciąganie obrazów i konwersja do Worda — bez instalacji i rejestracji. Flask + PyMuPDF na Google Cloud Run.</description><pubDate>Thu, 25 Jun 2026 00:00:00 GMT</pubDate><content:encoded>## Edytor PDF, który zbudowałem dla siebie — i udostępniłem publicznie

Pracuję z dużą liczbą PDF-ów: instrukcje warsztatowe, dokumentacja części, faktury. Typowe edytory online albo każą płacić za podstawy, albo wymuszają instalację programu, albo po cichu wysyłają Twoje pliki na serwer, nad którym nie masz kontroli. Chciałem czegoś szybszego i prostszego — więc zbudowałem **pdf.uper.pl**, niewielki zestaw narzędzi do PDF działających prosto w przeglądarce.

Zaczęło się jako prywatne narzędzie do mojej własnej pracy. Okazało się na tyle przydatne, że postanowiłem udostępnić je publicznie — za darmo, bez rejestracji i bez śledzenia.

## Co potrafi

Zestaw obejmuje codzienne zadania z PDF-ami, do których zwykle szuka się programu na komputer:

### Zarządzanie stronami z miniaturami na żywo

Wgrywasz dokument i każda strona pojawia się jako przeciągalna miniatura. Zmieniasz kolejność przeciągnięciem, usuwasz stronę upuszczając ją do kosza, a na początek lub koniec dodajesz wygenerowaną stronę okładkową — i pobierasz przebudowany PDF.

### Wsadowa zamiana tekstu

Każda reguła to para znajdź/zamień, a możesz ułożyć ich tyle, ile trzeba, by uporządkować dokument w jednym przejściu — wygodne przy podmianie powtarzających się fraz w długiej instrukcji. Wbudowana wyszukiwarka pokazuje, gdzie jest każde dopasowanie, zanim zatwierdzisz zmiany.

### Wyciąganie obrazów z PDF

Wskazujesz PDF, a każde osadzone zdjęcie i grafika trafia na listę z wymiarami i rozmiarem pliku. Suwak minimalnego rozmiaru ukrywa małe ikony i logotypy, po czym pobierasz pojedynczy obraz albo wszystkie naraz w ZIP-ie.

### Konwersja do Markdown, Worda lub tekstu

Wyciągasz treść PDF do edytowalnego dokumentu — Markdown, czysty tekst lub Word (DOCX). Zaznaczasz kilka formatów i wracają razem w ZIP-ie.

## Prywatność wpisana w projekt

Cała aplikacja jest zbudowana tak, aby nie przechowywać Twoich danych:

- Pliki są przetwarzane **w pamięci, tylko na czas obsługi żądania** — wgrany plik i każdy wygenerowany artefakt są usuwane zaraz po odpowiedzi.
- **Bez konta i bez rejestracji.** Żadne z narzędzi nie wymaga zakładania konta.
- Cały ruch idzie po HTTPS, z Cloudflare przed serwerem origin.

Przy dokumentach takich jak faktury czy podpisane umowy „nic nie zostaje&quot; nie jest tu hasłem marketingowym — tak po prostu działa cykl życia żądania.

## Dwujęzyczność od podstaw

Interfejs jest dostępny po **polsku i angielsku**, każdy na własnym zestawie adresów (`/strony` ↔ `/en/pages`), z poprawnym hreflang i osobnymi metadanymi SEO, więc każda wersja indeksuje się samodzielnie.

## Realizacja techniczna

Celowo niewielki monolit Flask: trasy stron renderują dwujęzyczny interfejs, kilka endpointów `/api/*` wykonuje operacje na PDF przez PyMuPDF, a style frontendu są generowane z systemu [Spoko Design System](/pl/spoko-design-system/) przez UnoCSS.

Narzędzie jest darmowe i z czasem zyskuje kolejne funkcje. Wypróbuj na [pdf.uper.pl](https://pdf.uper.pl).</content:encoded></item><item><title>Katalog części i akcesoriów</title><link>https://spoko.space/pl/katalog-czesci-vw-polo-6r/</link><guid isPermaLink="true">https://spoko.space/pl/katalog-czesci-vw-polo-6r/</guid><description>Katalog części OEM do VW Polo 6R oparty na headless CMS. Frontend Astro SSG, Vue 3, backend Laravel REST API, panel Filament, tłumaczenia DeepL i opisy AI.</description><pubDate>Wed, 17 Jun 2026 00:00:00 GMT</pubDate><content:encoded>## Katalog części i akcesoriów VW Polo 6R

Kompleksowy, wielojęzyczny katalog oryginalnych części OEM i akcesoriów do Volkswagena Polo 6R/6C, zbudowany w całkowicie odseparowanej architekturze headless. Statyczny frontend w Astro pobiera dane z Laravelowego REST API podczas budowania i generuje czyste strony HTML, które nie odpytują bazy danych w trakcie działania. To nie jest sklep internetowy, ale ma większość funkcji znanych z e-commerce — listy produktów, filtrowanie, wyszukiwanie i szczegółowe specyfikacje — brakuje tylko płatności.

Projekt przeszedł kilka iteracji: od wczesnego SPA w Vue 2, przez Vue 3, aż po obecną wersję opartą na Astro 6 (SSG) z wyspami Vue 3 dla interaktywnych komponentów.

## Architektura: headless CMS + statyczny frontend

System jest podzielony na dwa niezależne repozytoria:

**Frontend** ([catalog.polo.blue](https://catalog.polo.blue)) — statyczny generator stron Astro 6 z komponentami Vue 3, stylami UnoCSS i własnym systemem projektowym. Wszystkie dane pobierane są z API wyłącznie na etapie budowania. Przeglądarka nigdy nie łączy się bezpośrednio z backendem — z wyjątkiem narzędzi działających po stronie klienta, takich jak dekoder kodów PR.

**Backend** — aplikacja Laravel 13 udostępniająca REST API oraz panel administracyjny Filament 5. Zarządza produktami, kategoriami, tłumaczeniami, mediami, danymi SEO i wdrożeniami strony. Stoi na MySQL, Redisie (kolejki obsługiwane przez Laravel Horizon dla zadań w tle: konwersji obrazów, tłumaczeń i budowania strony) oraz Cloudflare R2 jako magazynie plików dla CDN. Wdrożenie strony można uruchomić wprost z panelu.

Dzięki temu rozdzieleniu frontend pozostaje w pełni statyczny — szybki, bezpieczny i globalnie buforowany przez CDN Cloudflare.

## Przetwarzanie obrazów i CDN

Sporym wyzwaniem była optymalizacja obrazów — katalog jest obszerny, a ruch w większości mobilny. Rozwiązanie ewoluowało: od kompresji na etapie budowania (Sharp/Astro) po przeniesienie całego procesu na backend:

1. **Wgrywanie** — obrazy trafiają na Cloudflare R2 (kompatybilne z S3) przez Spatie Media Library
2. **Konwersja** — kolejki Laravel Horizon generują miniatury w wielu rozmiarach, w formatach AVIF i WebP
3. **Dostarczanie** — pliki serwowane są z dedykowanej subdomeny CDN, a ich adresy — w postaci zdenormalizowanej — trafiają bezpośrednio do modeli Product/Category, co eliminuje zapytania JOIN na listach produktów
4. **Monitoring** — widget CDN Stats w panelu pokazuje łączne zużycie miejsca, podział na modele i odsetek produktów z kompletem wygenerowanych konwersji

WebP pełni rolę formatu zapasowego dla AVIF, którego Grafika Google wciąż indeksuje w ograniczonym zakresie.

## Wielojęzyczność i automatyczne tłumaczenia

Katalog obsługuje trzy języki — angielski, polski i niemiecki. Cała treść podlegająca tłumaczeniu (produkty, kategorie, kolory, materiały, kody PR, wpisy FAQ i nie tylko) korzysta z jednego, wspólnego systemu tłumaczeń, więc dodanie kolejnego języka nie wymaga zmian w schemacie bazy.

- **DeepL API** automatycznie tłumaczy treść z angielskiego na polski i niemiecki w zadaniach kolejkowanych w tle
- **Opisy generowane przez AI** powstają w języku angielskim z użyciem łańcucha awaryjnego obejmującego wielu dostawców LLM, a następnie trafiają do tłumaczenia przez DeepL
- Osobna struktura adresów dla każdego języka (`/` dla EN, `/pl/` dla polskiego, `/de/` dla niemieckiego) z poprawnie skonfigurowanymi tagami `hreflang`
- Statyczne napisy interfejsu ładowane są z plików JSON, a przetłumaczona treść trafia z API już zlokalizowana

## Optymalizacja wydajności

### Podzielony proces budowania

Budowanie wszystkich trzech wersji językowych w jednym przebiegu Astro wyczerpywało pamięć (10–20 GB RAM). Rozwiązaniem jest własny skrypt dzielący build: przetwarza po jednej wersji językowej, dla każdej osobno uruchamia indeksowanie Pagefind, a na końcu scala wszystko w katalogu `dist/`. Łączny czas budowania to ~5–6 minut dla wszystkich wersji.

### Ograniczenie liczby zapytań API

Wstępne buforowanie kategorii pobiera wszystkie produkty dla danej kategorii głównej w jednym zapytaniu do API, a potem filtruje je lokalnie. Dzięki temu ~60 pojedynczych zapytań zamieniło się w kilka wywołań zbiorczych w trakcie budowania.

### Wydajność frontendu

- `content-visibility: auto` na kartach produktów poza ekranem, co obniża koszt renderowania
- Stan zwinięcia panelu bocznego odtwarzany z `localStorage` jeszcze przed pierwszym renderowaniem, co zapobiega przesunięciom układu (CLS)
- Wstępne ładowanie czcionek (firmowe fonty VW) oraz `preconnect` do CDN i domen analitycznych
- Ręcznie wydzielone chunki Vite oddzielające kod bibliotek (Vue, system projektowy) od kodu stron
- Pierwsze trzy zdjęcia produktów ładują się natychmiast (na pierwszym `fetchpriority=&quot;high&quot;`), reszta — leniwie

## SEO i widoczność w wyszukiwarkach

Mocne SEO to główne źródło ruchu, zwłaszcza z wyszukiwarek grafiki. Najważniejsze elementy:

- **Dane strukturalne (JSON-LD)** — rozbudowany `@graph` z `IndividualProduct` (zamiast `Product`, by zaznaczyć niehandlowy charakter katalogu), `BreadcrumbList`, `ItemList` na stronach kategorii oraz encją `Organization`
- **Mapy witryny XML** — generowane po stronie serwera dla każdej wersji językowej i typu (produkty, kategorie, strony), pobierane na etapie budowania; arkusze stylów XSL zapewniają czytelny podgląd w przeglądarce
- **llms.txt** — pliki ułatwiające modelom AI/LLM odnalezienie treści, zgodne ze specyfikacją llmstxt.org
- **Linkowanie wewnętrzne** — sekcje „Powiązane produkty&quot;, „Podobne produkty&quot; i przyciski nawigacji w obrębie kategorii (sprawdzone testami A/B) wzmacniają przepływ mocy linków i ułatwiają poruszanie się po katalogu
- **Pagefind** — wyszukiwarka pełnotekstowa działająca offline, indeksowana osobno dla każdej wersji językowej, bez zewnętrznych zależności
- **Panel SEO** — widgety w panelu sprawdzają zbyt krótkie i zbyt długie tytuły, brakujące opisy oraz kompletność danych we wszystkich trzech językach

## Interaktywne narzędzia

Trzy działające po stronie klienta narzędzia Vue 3 zwiększają użyteczność katalogu:

- **Kalkulator opon i felg** — porównuje dwie konfiguracje opon i felg, liczy różnicę średnicy oraz odchyłkę wskazań prędkościomierza, z wizualizacją SVG
- **Przelicznik mocy** — przelicza KM, kW i PS, pokazując wynik na wykresie słupkowym
- **Dekoder kodów PR** — rozszyfrowuje fabryczne kody wyposażenia VW (trzyznakowe), odpytując API i buforując wyniki po stronie klienta

Narzędzia są odizolowane w osobnej trasie Astro, żeby ich CSS (~25 KB) nie obciążał głównych stron katalogu.

## Backend i panel administracyjny

Backend oparty na **Laravelu 13** i **Filamencie 5** udostępnia REST API oraz rozbudowany panel administracyjny podzielony na funkcjonalne klastry:

### Zarządzanie treścią
- Zarządzanie produktami ze szczegółowymi specyfikacjami, kodami PR, dopasowaniem do silników i obsługą wielu języków
- Hierarchiczne kategorie z obsługą ikon i obrazów OG
- Kreator stron CMS z 13 typami bloków (hero, jumbotron, karuzela, CTA, FAQ, statystyki itd.)
- Zarządzanie tłumaczeniami z wsadową automatyzacją DeepL i flagami chroniącymi kluczowe tłumaczenia przed nadpisaniem

### REST API
API korzysta z konfigurowalnych presetów odpowiedzi, które dla każdego endpointu określają, jak wiele danych dołączyć — listy pozostają lekkie, a widoki szczegółowe bogate. Nagłówki cache HTTP są dostrajane dla każdej trasy, by maksymalizować liczbę trafień w CDN.

### Pulpity analityki i monitoringu
- **Google Analytics 4** — odsłony, użytkownicy, sesje, urządzenia, najczęstsze źródła odesłań i dane geograficzne (14 widgetów)
- **Google Search Console** — kliknięcia, wyświetlenia, CTR, średnia pozycja oraz najpopularniejsze strony i zapytania
- **Core Web Vitals** — śledzenie CLS, LCP i INP w czasie
- **Google AdSense** — monitorowanie przychodów z wielu witryn wraz z alertami o spadkach

### Operacje i utrzymanie
- Wdrożenie strony jednym kliknięciem, które uruchamia build Astro w kolejce zadań (osobna kolejka `site-build`, żeby nie blokować tłumaczeń i przetwarzania mediów)
- Czyszczenie cache Cloudflare według adresu URL, prefiksu lub typu modelu
- Narzędzia do kopii zapasowych i przywracania bazy danych
- Rejestrowanie aktywności i pełna ścieżka audytu
- Pulpit kompletności danych wykrywający braki w mediach, tłumaczeniach, opisach i ocenie jakości linków

### Przekierowania i odzyskiwanie ruchu z 404

Autorski moduł przekierowań wbudowany w panel Filament zamienia obsługę błędów 404 z ręcznej roboty w proces oparty na danych:

- **Import CSV z raportów GSC i Ahrefs** — adresy są wrzucane hurtowo ze znacznikiem źródła na każdym wpisie (`gsc_404`, `ahrefs_404`, `manual`, `import`), więc redakcja priorytyzuje po realnym wpływie na ruch zamiast zgadywać
- **Kontekst GSC zapisany przy każdym przekierowaniu** — kliknięcia, wyświetlenia oraz daty pierwszego i ostatniego wykrycia są przypięte do wiersza i widoczne na liście — od razu widać, które 404 faktycznie kosztowały ruch organiczny
- **Automatyczne rozwiązywanie błędów crawlowania** — utworzenie przekierowania automatycznie oznacza pasujące nierozwiązane wpisy `GscCrawlError` jako rozwiązane i wiąże je z ID przekierowania, zapisując użytkownika i znacznik czasu
- **Zabezpieczenie przed self-redirectami** — model rzuca wyjątek przy zapisie, jeśli `old_url === new_url` po normalizacji ścieżki (wielkość liter jest zachowana, ponieważ URL-e typu `/6R0601025AEZ49/` vs `/6r0601025aez49/` są różnymi adresami) — nieskończone pętle są wyłapywane przed wejściem na produkcję
- **Wzorce regex, soft deletes, pełen audit trail** przez Spatie Activitylog, obsługa 301/302/307/308 oraz `hit_count` i `last_hit_at` wskazujące stare przekierowania bezpieczne do usunięcia

### Zapytania klientów o produkt

Każdy produkt ma własny formularz zapytań, a wiadomości lądują w panelu jako pełne konwersacje — nie pojedyncze maile w skrzynce, które łatwo zgubić:

- **Wątek konwersacji w jednym widoku** — wymiana między klientem a adminem zapisana chronologicznie, z autorami, datami i wklejonymi linkami do śledzenia przesyłki (Poczta Polska, GLS) widocznymi obok wiadomości
- **Metadane geo i lokalizacyjne dla każdego zapytania** — IP, kraj, miasto, region, referrer (`sale.polo.blue` vs `catalog.polo.blue`) i User Agent zachowane przy każdym wpisie, co pozwala priorytetyzować rynki bez dodatkowego logowania do GA
- **Powiązany produkt** — panel boczny widoku pokazuje ID, nazwę i miniaturkę produktu, którego dotyczy zapytanie; z karty produktu można też przejść do historii wszystkich zapytań o ten konkretny SKU
- **Notatki wewnętrzne** — admini mogą dorzucić notatkę niewidoczną dla klienta (cena specjalna, status wysyłki, ostrzeżenie o ryzykownym rynku) z autorem i znacznikiem czasu
- **Status pipeline** — Replied / Pending / Closed śledzą, gdzie utknęło zapytanie, a język przeglądarki i locale pozwalają oszacować rynek docelowy, zanim wyjdzie pierwsza odpowiedź

### Komentarze z WordPressa — powiadomienia i odpowiedzi

Blog [polo.blue](/pl/modern-car-blog/) działa na headless WordPressie, ale jego komentarze są moderowane w całości z panelu Filament — administratorzy nie muszą już otwierać `wp-admin`, żeby obsłużyć codzienny strumień:

- **Dwukierunkowa synchronizacja z WP REST API** — `WordPressCommentSync` pobiera przyrostowo nowe oczekujące i zatwierdzone komentarze (cursor w cache&apos;u z jednominutowym nakładaniem, żeby zabezpieczyć się przed różnicą zegarów między WP a panelem) i wypycha akcje moderacyjne z powrotem przez `/wp-json/wp/v2/comments`
- **Pełna moderacja z poziomu panelu** — zatwierdzanie, oznaczanie jako spam, wyrzucanie do kosza i odpowiadanie — wszystko bez opuszczania Filamenta. Odpowiedzi są publikowane z powrotem do WP jako komentarze dzieci, automatycznie zatwierdzane i przypięte do rodzica (`wp_reply_id`, `replied_by_user_id`, `replied_at`), więc zawsze widać, kto i kiedy odpowiedział
- **Powiadomienia push przy nowych oczekujących komentarzach** — administratorzy dostają powiadomienie (tytuł + autor + tytuł wpisu, z deep linkiem do `/admin/blog-comments`), więc żaden komentarz nie czeka na ręczne sprawdzenie `wp-admin`
- **Świadomość wielojęzyczności** — każdy komentarz dziedziczy język wpisu źródłowego (EN/PL — blog prowadzony jest w dwóch językach), dzięki czemu można go filtrować per locale w widoku listy
- **Metadane wpisu cache&apos;owane** — tytuły i permalinki są rozwiązywane raz per batch i reużywane dla kolejnych komentarzy, eliminując zbędne zapytania do WP REST w trakcie synchronizacji
- **Awaryjna furtka** — każdy wiersz wystawia `wpAdminUrl()` jako bezpośredni skok do WP admin edit, na wypadek rzadkich sytuacji wymagających natywnego interfejsu

### Baza wiedzy FAQ

Katalog ma zintegrowany system FAQ ze specyfikacjami technicznymi i poradnikami dla VW Polo 6R. Treść jest pogrupowana według kategorii produktów (opony, felgi, olej silnikowy, klimatyzacja, hamulce, zawieszenie, elementy karoserii), wyświetla się w wielu językach i linkuje do szczegółowych wpisów na blogu.

## Wdrażanie

Frontend korzysta ze strategii wdrożeń atomowych:
- Push do `main` uruchamia GitHub Actions
- Dzielony build Astro wykonywany na serwerze hostingowym
- Każde wydanie trafia do katalogu oznaczonego znacznikiem czasu, a `public_html` jest dowiązaniem symbolicznym
- Wycofanie zmian (rollback) trwa poniżej sekundy — wystarczy przepiąć dowiązanie na poprzednie wydanie

## Wyniki

Architektura headless, agresywna optymalizacja obrazów i dane strukturalne JSON-LD przekładają się na wymierny ruch organiczny — Google Analytics 4 pokazuje 14 tys. aktywnych użytkowników i 187 tys. zdarzeń w ostatnich 28 dniach, w większości z wyszukiwarki Google i Grafiki Google.

Zrzut raportów potwierdza, że ruch organiczny (Organic Search) jest głównym kanałem pozyskania, a rozkład zdarzeń (najczęściej `product_view`, `ai_search_query`, `scroll`, `ad_impression`) pokazuje, że użytkownicy faktycznie przeglądają katalog i korzystają z wbudowanej wyszukiwarki AI, a nie tylko odbijają się od strony głównej.

## Wykorzystane technologie

Mocne SEO, optymalizacja obrazów i dane strukturalne przyciągają znaczący ruch organiczny — zwłaszcza z wyszukiwarek grafiki — a architektura headless utrzymuje stronę szybką, bezpieczną i łatwą w utrzymaniu.</content:encoded></item><item><title>Mieszacz: Narzędzie do parafrazowania tekstów SEO</title><link>https://spoko.space/pl/mieszacz/</link><guid isPermaLink="true">https://spoko.space/pl/mieszacz/</guid><description>Narzędzie do parafrazowania tekstów poprzez podmianę słów - przydatne do tworzenia tanich tekstów SEO w czasach przed AI.</description><pubDate>Wed, 17 Jun 2026 00:00:00 GMT</pubDate><content:encoded>## Przegląd projektu

W czasach przed pojawieniem się narzędzi AI, możliwość szybkiego generowania unikalnych treści była dużym wyzwaniem w marketingu cyfrowym. Aby zaspokoić tę potrzebę, stworzyłem **Mieszacz** — narzędzie do parafrazowania tekstów poprzez podmianę słów, przydatne do tworzenia niedrogich tekstów SEO. Projekt rozpoczęty dla własnych potrzeb przekształcił się w publicznie dostępne narzędzie.

## Proces rozwoju

Mieszacz został zbudowany z wykorzystaniem **PHP** i **Bootstrap**, dostarczając prostą, ale skuteczną platformę do szybkiego parafrazowania tekstu. PHP stanowi podstawę przetwarzania tekstu i generowania przetworzonych wersji, natomiast Bootstrap posłużył do stworzenia responsywnego i przyjaznego interfejsu użytkownika.

## Od projektu osobistego do publicznego udostępnienia

Początkowo Mieszacz powstał dla własnych potrzeb związanych z przepisywaniem treści, pomagając szybko generować unikalne warianty artykułów. Widząc szersze zapotrzebowanie na takie narzędzie w społeczności SEO, postanowiłem udostępnić je publicznie.

## Jak to działało — algorytm

Pod maską Mieszacz robił jedną prostą rzecz: **podmianę słów na synonimy według słownika**. Wejściowy tekst był dzielony na tokeny, dla każdego słowa szukano dostępnych synonimów w bazie, a następnie wybierano jeden z nich (losowo lub według reguł). W rezultacie powstawał tekst o tym samym znaczeniu, ale zmienionych słowach.

Dla języka polskiego to wyzwanie większe niż dla angielskiego — **fleksja** oznacza, że dla każdego słowa trzeba zachować prawidłową formę gramatyczną (przypadek, liczba, rodzaj). Uproszczone podejście Mieszacza działało dobrze dla prostych tekstów, ale w bardziej złożonych konstrukcjach generowało kostropate zdania.

## Kontekst: SEO przed erą AI

W 2015 roku Google już walczył z content farms przez algorytm Panda (wprowadzony w 2011). Kary za **duplicate content** i niską jakość treści były realnym zagrożeniem dla stron partnerskich, zapleczowych i PBN. Narzędzia typu Mieszacz pozwalały szybko generować „wystarczająco unikalne&quot; warianty tekstów, które łapały się poniżej radaru Google, ale bez inwestowania w prawdziwy copywriting.

To był złoty okres dla **grey-hat SEO** — Mieszacz wpisywał się w tę niszę razem z article spinnerami, rewriterami i generatorami treści.

## Dlaczego dziś takie narzędzia są martwe

Mieszacz stracił rację bytu z dwóch powodów:

1. **AI generuje lepiej**. GPT-class modele potrafią napisać tekst od zera, zachowując kontekst, ton i naturalną składnię — nie potrzebujesz wejściowego tekstu do „parafrazy&quot;. Koszt: kilka groszy za tysiąc słów.
2. **Google nauczył się wykrywać**. Od 2022 (Helpful Content Update) algorytm lepiej rozpoznaje niską jakość treści — niezależnie od tego, czy pochodzi z AI, czy ze spinnera.

Dziś podobnego efektu (unikalnej treści na skalę) osiągasz przez AI + redakcję ludzką, z dużo lepszą jakością i niższym ryzykiem kar.

## Stos technologiczny

Mieszacz korzystał z prostego stacku typowego dla narzędzi z ery przed-AI:

## Podsumowanie

Dziś, gdy AI potrafi generować i przepisywać teksty w kilka sekund, takie narzędzia straciły na znaczeniu. Mimo to Mieszacz pozostaje ciekawym przykładem rozwiązywania problemów dostępnymi wówczas metodami i dokumentuje ówczesne podejście do automatyzacji tworzenia treści.</content:encoded></item><item><title>Nowoczesny blog motoryzacyjny</title><link>https://spoko.space/pl/modern-car-blog/</link><guid isPermaLink="true">https://spoko.space/pl/modern-car-blog/</guid><description>Blog motoryzacyjny zbudowany w Astro, Vue3, UnoCSS, REST API i WordPress.</description><pubDate>Wed, 17 Jun 2026 00:00:00 GMT</pubDate><content:encoded>## Kompleksowy blog dla entuzjastów VW Polo 6R

Polo.blue to starannie przygotowany blog poświęcony Volkswagenowi Polo 6R w kolorze Shadow Blue, zbudowany w Astro, Vue3 i UnoCSS. Wykorzystując WordPress jako panel administracyjny, blog oferuje statycznie generowane strony łączące się z API przez GraphQL. Strona oferuje szczegółowe wpisy o modyfikacjach, konserwacji i ulepszeniach, stanowiąc bogate źródło wiedzy dla entuzjastów Polo 6R chcących ulepszyć i utrzymać swoje pojazdy.

## Wykorzystane technologie

### Zalety stosu technologicznego

**Wydajność:**
Statycznie generowane strony są serwowane jako pliki HTML, zapewniając błyskawiczne ładowanie. Częściowa hydratacja Astro dodatkowo zwiększa wydajność, ładując tylko niezbędny JavaScript.

**Bezpieczeństwo:**
Serwując statyczne strony, Polo.blue redukuje ryzyko typowych podatności związanych z dynamicznymi stronami, takich jak SQL injection i cross-site scripting (XSS). Statyczny frontend jest oddzielony od backendu WordPress, dodając dodatkową warstwę bezpieczeństwa.

&gt; Masz WordPressa i chcesz osiągnąć podobny efekt bez przepisywania strony od zera? Sprawdź [pakiet migracji na headless WordPress](/pl/naprawa-wordpress/#headless) — zachowujesz panel, zyskujesz 10× szybszy frontend.

**SEO:**
Szybkie ładowanie i dobrze ustrukturyzowany HTML poprawiają SEO strony. Statycznie generowane strony są łatwo indeksowane przez wyszukiwarki, zwiększając widoczność.

**Doświadczenie użytkownika:**
Nowoczesny design i responsywny układ zapewniają optymalne doświadczenie użytkownika na wszystkich urządzeniach. Ciemny motyw i wbudowana wyszukiwarka zwiększają użyteczność, pozwalając użytkownikom szybko znaleźć potrzebne informacje.

**Doświadczenie programisty:**
Integracja Astro z Vue3 i UnoCSS usprawnia proces developmentu. Użycie GraphQL upraszcza pobieranie danych, ułatwiając rozwój i utrzymanie strony.

### Podsumowanie

Polo.blue pokazuje, jak nowoczesne narzędzia webowe mogą tworzyć wydajne, bezpieczne i przyjazne dla użytkownika blogi. Wykorzystując Astro, Vue3, UnoCSS, WordPress i GraphQL, strona dostarcza wyjątkowe doświadczenie dla entuzjastów Volkswagena Polo 6R. Połączenie generowania stron statycznych z dynamicznymi możliwościami zapewnia, że Polo.blue pozostaje cennym źródłem dla swojej publiczności, z korzyściami wydajnościowymi i bezpieczeństwa strony statycznej.

Ekosystem polo.blue rozrósł się od tego czasu o pełny katalog części oraz stronę z ogłoszeniami części używanych. Zobacz [case study katalogu części VW Polo 6R](/pl/katalog-czesci-vw-polo-6r/) opisujący architekturę headless Astro + Laravel + Filament stojącą za `catalog.polo.blue`.</content:encoded></item><item><title>Wielojęzyczna strona korporacyjna dla producenta profili aluminiowych</title><link>https://spoko.space/pl/profile/</link><guid isPermaLink="true">https://spoko.space/pl/profile/</guid><description>Wielojęzyczna strona korporacyjna prezentująca Segment Wyrobów Wyciskanych Grupy Kęty - profile aluminiowe, produkty i usługi.</description><pubDate>Wed, 17 Jun 2026 00:00:00 GMT</pubDate><content:encoded>## Przegląd projektu

Profile.GrupaKety.com to wielojęzyczna strona korporacyjna zaprojektowana dla globalnej publiczności w języku polskim, angielskim i niemieckim. Projekt realizowałem pracując w Lizard Media Software House, budując stronę na platformie WordPress zgodnie ze szczegółowym projektem graficznym dostarczonym przez klienta. Celem było stworzenie wizualnie spójnej i przyjaznej strony, skutecznie komunikującej przekaz marki w różnych językach.

## Wielojęzyczność oparta o Polylang

Biorąc pod uwagę międzynarodowy zasięg marki Grupa Kęty, strona obsługuje trzy języki: polski, angielski i niemiecki. Za tłumaczenia odpowiada **[Polylang](https://polylang.pro/)** — wtyczka, która traktuje każdą wersję językową jako oddzielny wpis/stronę powiązaną relacją tłumaczenia, zamiast duplikować treść w jednej encji. W praktyce oznacza to, że redakcja tworzy osobne wpisy dla PL/EN/DE i wiąże je w panelu — wadą jest większa dyscyplina organizacyjna, zaletą brak strukturalnych ograniczeń między językami (np. niemiecka wersja może mieć inne sekcje niż polska, jeśli marketing tak zdecyduje).

Do panelu administracyjnego dodałem dedykowane widoki statusu tłumaczeń — redakcja od jednego spojrzenia widzi, który wpis ma już komplet trzech wersji, a który czeka na uzupełnienie. Wsparcie dla `hreflang` i osobnych sitemap XML dla każdej wersji językowej dochodzi z Polylanga bez dodatkowej konfiguracji.

## Niestandardowy rozwój WordPress

Strona została zbudowana na WordPress, wybranym ze względu na elastyczność i przyjazne zarządzanie treścią. Aby spełnić specyficzne potrzeby klienta, dostosowałem panel administracyjny WordPress. Obejmowało to modyfikację interfejsu backendu, aby klient mógł łatwo edytować i aktualizować treści bez wiedzy technicznej. Dostosowanie zawierało intuicyjne kontrolki do zarządzania wielojęzyczną treścią.

## Implementacja projektu graficznego

Front-end strony został wykonany z wykorzystaniem CSS, wiernie odtwarzając dostarczony projekt graficzny. Design został starannie zaimplementowany, aby elementy wizualne idealnie odpowiadały brandingowi i wymaganiom estetycznym klienta. Zapewniło to precyzyjną kontrolę nad layoutem, typografią i responsywnością.

## Kontekst branżowy

Grupa Kęty to jeden z największych w Europie producentów **profili aluminiowych** — komponentów wykorzystywanych w architekturze, motoryzacji, transporcie szynowym i automatyce przemysłowej. Segment Wyrobów Wyciskanych obsługuje klientów z całej Europy, stąd konieczność prezentacji oferty w trzech językach (polski, angielski, niemiecki).

Strona korporacyjna w tej branży pełni inną funkcję niż typowy sklep internetowy — jej zadaniem jest **edukacja decydentów technicznych** (architektów, projektantów, inżynierów) o możliwościach i specyfikacji profili. Treści są gęste technicznie, często zawierają tabele parametrów, rysunki i dokumentację PDF — architektura strony musiała to wszystko obsłużyć bez kompromisów w wydajności.

## Zakres prac

- Pełna implementacja layoutu z projektu graficznego (desktop, tablet, mobile).
- Niestandardowe typy treści dla kategorii produktów i usług specyficznych dla branży.
- Dostosowany panel administracyjny — redakcja zarządza trójjęzyczną treścią bez wiedzy technicznej.
- Responsywne obsługiwanie tabel technicznych i specyfikacji produktowych na urządzeniach mobilnych.
- SEO techniczne: hreflang, schema `Organization`, sitemap XML dla trzech wersji językowych.
- Integracja z brand bookiem Grupy Kęty — spójna typografia, paleta kolorów, elementy graficzne.

## Efekty

Klient otrzymał profesjonalną, wielojęzyczną stronę korporacyjną dostępną dla rynków zagranicznych — z autorskim panelem redakcyjnym pozwalającym na niezależną aktualizację treści bez angażowania developera. Spójność z identyfikacją wizualną Grupy Kęty została zachowana we wszystkich wersjach językowych.

## Retrospektywa: czy dziś zrobiłbym to samo na WordPressie?

Z dzisiejszej perspektywy (2026) **nie** — choć warto oddać sprawiedliwość kontekstowi tamtych czasów. WordPress był wtedy standardem, jeśli trzeba było szybko postawić stronę z łatwym w obsłudze panelem administracyjnym — dla redakcji nietechnicznej wybór był w zasadzie oczywisty. Realnych alternatyw było niewiele: poza PyroCMS i kilkoma podobnymi niszowymi platformami, rozwiązanie custom wymagało zaangażowania pełnego zespołu — programisty front-end, programisty back-end i grafika. Koszt i czas realizacji były wielokrotnie wyższe, więc dla korporacyjnej strony wizytówkowej WordPress był racjonalnym wyborem, nawet przy świadomości jego długoterminowych kosztów utrzymania.

W 2026 ekonomia zmieniła się fundamentalnie. Dzięki AI jedna osoba jest w stanie dostarczyć stronę wizytówkową szybciej i lepiej niż ówczesna agencja — nie ma już potrzeby angażowania pełnego software house&apos;u do tego typu projektu, co znacząco obniża próg kosztowy. Rozwiązanie autorskie przestało być luksusem zarezerwowanym dla dużych budżetów, a do głosu dochodzą jego techniczne przewagi:

- **Utrzymanie.** Standardowy WordPress wymaga ciągłej opieki — aktualizacje rdzenia, wtyczek, motywu, wersji PHP. Każda z nich potrafi coś zepsuć w produkcji, a pominięcie ich zostawia otwarte drzwi dla atakujących. Customowy panel bez rozbudowanego pluginowego ekosystemu ma znacząco mniejszą powierzchnię zmian.
- **Bezpieczeństwo.** WordPress jako platforma jest najczęstszym celem zautomatyzowanych ataków w internecie — każda nieaktualna wtyczka to potencjalny wektor włamania. Rozwiązania customowe nie są w stałej rotacji skanerów CVE, co w praktyce znacząco redukuje ryzyko.
- **Stack frontendowy.** Projekt wykorzystywał vanilla JS + jQuery — w 2019 wciąż standard, dziś jQuery nie jest już używany w nowoczesnych stronach. Obecne wdrożenia buduję na [Astro z wyspami Vue/React](/pl/blog/frameworki-aplikacje-webowe-2026/) tam, gdzie faktycznie potrzeba interaktywności — reszta zostaje statycznym HTML-em.

Dla kogo WordPress nadal ma sens? Dla zespołów redakcyjnych, które znają już panel i szybko publikują dużo krótkich treści. Dla korporacyjnego katalogu produktowego w 2026 wybrałbym natomiast architekturę opartą o generator statyczny + [headless CMS](/pl/modern-car-blog/) — mniej ruchomych części, mniej aktualizacji, szybsze ładowanie, żaden z problemów z pierwszych trzech punktów.

## Podsumowanie

Rozwój Profile.GrupaKety.com był udaną współpracą, której rezultatem jest dopracowana, wielojęzyczna strona korporacyjna. Wykorzystując możliwości WordPress i dostosowując CMS do potrzeb klienta, dostarczyłem platformę nie tylko atrakcyjną wizualnie, ale również łatwą w zarządzaniu.</content:encoded></item><item><title>Frontend sklepu polskiego producenta strojów kąpielowych SHE</title><link>https://spoko.space/pl/she/</link><guid isPermaLink="true">https://spoko.space/pl/she/</guid><description>Front-end dla sklepu internetowego SHE swimwear wykonany zgodnie z projektem graficznym, zarządzanie PBN na potrzeby efektywnego pozycjonowania strony klienta.</description><pubDate>Wed, 17 Jun 2026 00:00:00 GMT</pubDate><content:encoded>## Przegląd projektu

Stworzenie płynnego i atrakcyjnego wizualnie doświadczenia zakupowego online jest kluczowe dla każdego biznesu e-commerce, szczególnie w konkurencyjnej branży modowej. Pracując w AQIMO, rozwijałem front-end dla sklepu internetowego SHE swimwear. Projekt obejmował implementację niestandardowego designu zgodnego z estetyką marki, zapewniając jednocześnie funkcjonalność strony na wielu urządzeniach.

## Rozwój front-endu

Front-end sklepu SHE swimwear został starannie wykonany, aby odzwierciedlać tożsamość marki i zapewniać płynne doświadczenie użytkownika. Zbudowany na niestandardowym backendzie Phalcon, serwis został zaprojektowany jako angażujący wizualnie i przyjazny dla użytkownika. Zgodnie z dostarczonym projektem graficznym, zaimplementowałem responsywne układy zapewniające świetny wygląd sklepu na komputerach stacjonarnych, tabletach i urządzeniach mobilnych.

Jedną z wyróżniających funkcji tego projektu był niestandardowy konfigurator rozmiarów strojów kąpielowych. Narzędzie to pozwalało klientom wybrać idealny rozmiar, poprawiając doświadczenie zakupowe poprzez zapewnienie dopasowanego kroju. Konfigurator był w pełni responsywny, działając płynnie na wszystkich urządzeniach, w tym smartfonach.

## Obsługa wielu języków i walut

Biorąc pod uwagę międzynarodowy zasięg marki SHE, strona została stworzona z obsługą wielu walut i języków. Klienci mogli przeglądać i kupować w PLN, USD i EUR, z opcjami językowymi dostępnymi w polskim, angielskim, włoskim, niemieckim, francuskim i hiszpańskim. Ta wielojęzyczna i wielowalutowa obsługa była kluczowa w dotarciu do zróżnicowanej globalnej publiczności, czyniąc proces zakupowy wygodnym dla użytkowników z różnych regionów.

## SEO i zarządzanie blogiem

Oprócz rozwoju front-endu, zarządzałem siecią prywatnych blogów (PBN) w celu wzmocnienia działań SEO sklepu. PBN był strategicznie wykorzystywany do poprawy widoczności i pozycji strony w wyszukiwarkach, generując większy ruch organiczny. Ten aspekt projektu był kluczowy dla zapewnienia długoterminowego sukcesu i konkurencyjności marki SHE swimwear online.

## Stos technologiczny

Sklep SHE swimwear łączył backend Phalcon z autorskim, responsywnym front-endem:

## Podsumowanie

Projekt sklepu SHE swimwear był cennym doświadczeniem łączącym wyzwania techniczne z kreatywnym rozwiązywaniem problemów. Dostarczając responsywny, wielojęzyczny i przyjazny dla użytkownika front-end, zapewniłem, że sklep internetowy nie tylko spełnił oczekiwania klienta, ale również zapewnił płynne i przyjemne doświadczenie zakupowe dla klientów na całym świecie. Dodatkowo projekt pozwolił mi rozwinąć umiejętności współpracy - ściśle współpracowałem z klientem, aby zrozumieć jego wizję, z grafikiem, aby ją ożywić, oraz z programistą backend, aby zapewnić płynną integrację wszystkich funkcji. To holistyczne podejście przyczyniło się do udanego uruchomienia wyrafinowanej platformy e-commerce skutecznie wspierającej globalną obecność marki SHE.</content:encoded></item><item><title>Instrukcja obsługi VW Polo 6R</title><link>https://spoko.space/pl/vw-polo-6r-user-manual/</link><guid isPermaLink="true">https://spoko.space/pl/vw-polo-6r-user-manual/</guid><description>Wirtualna instrukcja obsługi VW Polo 6R jako PWA. Ciemny motyw i wyszukiwarka zapewniają łatwy dostęp do kluczowych informacji o pojeździe.</description><pubDate>Wed, 17 Jun 2026 00:00:00 GMT</pubDate><content:encoded>[Polo6R.pl](https://polo6r.pl) to innowacyjna wirtualna instrukcja obsługi Volkswagena Polo 6R w języku polskim, przekształcona z oryginalnej papierowej instrukcji i zaprojektowana jako Progressive Web App (PWA) w Astro. Strona oferuje przyjazną i dostępną alternatywę dla tradycyjnych instrukcji PDF, z obrazami poprawionymi przez AI (lepsza ostrość i wyrazistość). Źródłowe PDF-y takich instrukcji można przerobić moim darmowym [edytorem PDF online](/pl/edytor-pdf-online/).

Użytkownicy mogą przeglądać szczegółowe informacje o pojeździe online lub zainstalować instrukcję jako aplikację.

Dzięki szybkiemu działaniu, nowoczesnemu designowi, ciemnemu motywowi i wbudowanej wyszukiwarce, Polo6R.pl zapewnia dostęp do kluczowych informacji zawsze pod ręką, również na urządzeniach mobilnych.

## Wykorzystane technologie

## Wyzwania

Strona zawiera [dekoder PR-Code](https://polo6r.pl/prcodes/) - dekoder kodów wyposażenia, zbudowany jako komponent Vue3 i zintegrowany ze stroną w Astro. Integracja z REST API wykorzystuje backend w Laravel.

Strona wykorzystuje automatyczny system wdrożeń zintegrowany z Netlify, używając GitHub do płynnych aktualizacji. Każda zmiana wysłana do repozytorium GitHub uruchamia automatyczny proces wdrożenia, zapewniając aktualność strony z najnowszymi poprawkami i treścią. Ten usprawniony przepływ pracy pozwala dostarczać niezawodne i wydajne doświadczenie użytkownika.

Dodatkowo zaimplementowano Google Tag Manager z konfiguracją Analytics.</content:encoded></item><item><title>Hurtownia systemów zabezpieczeń</title><link>https://spoko.space/pl/wholesale-security-systems/</link><guid isPermaLink="true">https://spoko.space/pl/wholesale-security-systems/</guid><description>Hurtownia systemów zabezpieczeń i automatyki budynku. Pomoc techniczna, szkolenia warsztatowe i baza wiedzy technicznej.</description><pubDate>Wed, 17 Jun 2026 00:00:00 GMT</pubDate><content:encoded>Montersi to hurtownia systemów zabezpieczeń i automatyki budynku, oferująca pomoc techniczną na każdym poziomie, szkolenia warsztatowe oraz bazę wiedzy technicznej. Sklep internetowy oferuje szeroki asortyment produktów, od kamer monitoringu po urządzenia automatyki domowej, zaspokajając potrzeby zarówno klientów indywidualnych, jak i biznesowych.

## Opis

Pracując dla [LizardMedia UX &amp; Software House](https://lizardmedia.pl), rozwijałem front-end dla Montersi.pl z wykorzystaniem Bootstrap 4. Zapewniło to responsywny i przyjazny dla użytkownika design oraz niestandardowy panel administracyjny. Platforma e-commerce jest oparta na PrestaShop, dostarczając solidne i skalowalne rozwiązanie do zarządzania asortymentem, zamówieniami i interakcjami z klientami. Montersi.pl łączy zaawansowaną technologię z płynnym doświadczeniem zakupowym, czyniąc go celem dla produktów z zakresu bezpieczeństwa i automatyki.

Ściśle współpracowałem z zespołem składającym się z grafika, programisty back-end i drugiego programisty front-end. To podejście oparte na współpracy pozwoliło nam stworzyć spójną i wydajną platformę, zapewniając, że wszystkie aspekty projektu były zharmonizowane i zoptymalizowane.

## Stos technologiczny

Sklep B2B/B2C dla branży security wymaga czegoś więcej niż gotowego szablonu — musi obsłużyć tysiące SKU, warianty produktów, ceny kontraktowe dla instalatorów oraz integrację z hurtownią:

## Zakres prac

- Implementacja front-endu zgodnie z projektem UX/UI przygotowanym przez zespół graficzny.
- Rozwój i modyfikacja niestandardowych szablonów PrestaShop (kategorie, karty produktów, checkout).
- Budowa niestandardowego panelu administracyjnego ułatwiającego zarządzanie bazą produktów i szkoleniami warsztatowymi.
- Integracja bazy wiedzy technicznej (PDF-y, instrukcje instalatora) z katalogiem produktów.
- Optymalizacja wydajności — lazy loading zdjęć, minifikacja zasobów, cache agresywny na poziomie CDN.
- Testy cross-browser oraz responsywności (desktop, tablet, mobile) przed każdym wdrożeniem.

## Efekty

- Przyspieszenie ładowania kart produktowych i stron kategorii o ok. 40% względem poprzedniej wersji sklepu.
- Spójne, wolne od błędów wdrożenie nowego projektu graficznego w całym katalogu (tysiące SKU).
- Sprawne skalowanie katalogu o kolejne grupy asortymentowe (monitoring IP, systemy alarmowe, automatyka domu).
- Baza techniczna sklepu gotowa na dalsze integracje (B2B API, systemy ERP hurtowni).</content:encoded></item><item><title>System zarządzania magazynem garażowym</title><link>https://spoko.space/pl/magazyn-garazowy/</link><guid isPermaLink="true">https://spoko.space/pl/magazyn-garazowy/</guid><description>System magazynowy do organizacji garażu i warsztatu. Oferuje skanowanie kodów QR, śledzenie lokalizacji i integrację e-commerce przez REST API.</description><pubDate>Sun, 31 May 2026 00:00:00 GMT</pubDate><content:encoded>## Zarządzanie garażem i warsztatem

Kompleksowy system zarządzania magazynem do organizacji garażu i warsztatu. System obsługuje części samochodowe, narzędzia i materiały eksploatacyjne z dokładnym śledzeniem lokalizacji i możliwością skanowania kodów QR.

## Główne funkcje

### Wielopoziomowa organizacja magazynu

System wykorzystuje hierarchiczną strukturę do precyzyjnej lokalizacji przedmiotów:
- **Lokalizacje** - Fizyczne przestrzenie (półki, uchwyty ścienne, miejsca na podłodze) ze śledzeniem pojemności
- **Pojemniki** - Pudełka, organizery i kuwety przypisane do lokalizacji
- **Przedmioty** - Produkty, narzędzia i materiały przechowywane w pojemnikach lub bezpośrednio w lokalizacjach

Każdy poziom obsługuje generowanie i skanowanie kodów QR, umożliwiając szybkie operacje magazynowe z urządzenia mobilnego.

### System skanowania kodów QR

Każdy element (produkty, pojemniki, lokalizacje, narzędzia, materiały) posiada unikalny kod QR do:
- Szybkiego wyszukiwania przedmiotów przez skanowanie
- Masowych operacji magazynowych
- Weryfikacji zawartości pojemników
- Wyszukiwania przedmiotów według lokalizacji
- Nawigacji po magazynie z urządzenia mobilnego

Skaner działa w aparacie telefonu — naprowadzenie kadru na etykietę pojemnika natychmiast pokazuje jego zawartość, a w jednym kadrze można obsłużyć kilka kodów naraz.

### Publiczny interfejs PWA

Osobna aplikacja webowa przyjazna dla urządzeń mobilnych umożliwia przeglądanie magazynu bez logowania do panelu administracyjnego:
- Skanowanie kodów QR do szybkiego wyszukiwania produktów/pojemników/lokalizacji
- Widoki siatki i listy ze wskaźnikami stanu magazynowego
- Strony podglądu pojemników i lokalizacji z listą produktów
- Interfejs zoptymalizowany pod dotyk do użytku magazynowego

### Integracja sprzedaży części

Przedmioty oznaczone do sprzedaży są udostępniane przez REST API i wyświetlane na osobnym sklepie opartym na Astro. System obsługuje:
- Dwujęzyczne opisy produktów (polski/angielski)
- Automatyczne przeliczanie cen (PLN/EUR według kursów NBP)
- Śledzenie statusu sprzedaży (dostępny, zarezerwowany, sprzedany)
- Generowanie przyjaznych SEO slugów
- Automatyczne tłumaczenia przez DeepL
- Generowanie opisów przez AI — model proponuje kilka wariantów do wyboru, redaktor zatwierdza najlepszy zamiast pisać od zera

### Zarządzanie narzędziami i materiałami

Oprócz części samochodowych system śledzi:
- **Narzędzia** - Skategoryzowane wyposażenie warsztatu (klucze, szczypce, elektronarzędzia, przyrządy pomiarowe)
- **Materiały** - Materiały eksploatacyjne ze śledzeniem dat ważności i alertami o niskim stanie (kleje, płyny, chemikalia)
- **Załączniki PDF** — Instrukcje obsługi, faktury zakupu i karty gwarancyjne można podpiąć bezpośrednio do przedmiotu jako PDFy, dostępne z poziomu szczegółów wpisu (i przygotowane wcześniej w darmowym [edytorze PDF online](/pl/edytor-pdf-online/))

## Implementacja techniczna

### System transakcji i audytu

Każdy ruch magazynowy jest rejestrowany:
- Transakcje przyjęcia, wydania i przesunięcia
- Automatyczne aktualizacje ilości
- Historia zmian lokalizacji
- Pełna ścieżka audytu przez Spatie Activity Log

### Panel administracyjny z FilamentPHP

Panel oparty na FilamentPHP oferuje:
- Widoki siatki i listy z zaawansowanym filtrowaniem
- Operacje masowe (przenoszenie przedmiotów, zmiana lokalizacji, przełączanie statusu sprzedaży)
- Eksport do Excela z konfigurowalnymi filtrami
- Alerty o niskim stanie i ostrzeżenia o wygasających terminach
- Tablica Kanban do zarządzania zadaniami
- Kontrolę dostępu opartą na rolach

## Wykorzystane technologie

System usprawnił organizację garażu i umożliwił sprzedaż nieużywanych części przez zautomatyzowaną integrację e-commerce.</content:encoded></item><item><title>Uper SEO Auditor</title><link>https://spoko.space/pl/uper-seo-auditor/</link><guid isPermaLink="true">https://spoko.space/pl/uper-seo-auditor/</guid><description>Plugin Chrome dla specjalistów SEO i deweloperów. Debugowanie Web Vitals, Schema.org, GTM i błędów JS w czasie rzeczywistym w Side Panelu przeglądarki.</description><pubDate>Wed, 28 Jan 2026 00:00:00 GMT</pubDate><content:encoded>## Profesjonalne narzędzie SEO dla deweloperów

Plugin Chrome do kompleksowej analizy SEO bezpośrednio w Side Panelu przeglądarki. Uper wypełnia lukę między prostymi czytnikami meta-tagów a ciężkimi crawlerami, oferując debugowanie w czasie rzeczywistym dla nowoczesnych aplikacji SPA. Narzędzie stworzone przez Senior Software Engineera z wieloletnim doświadczeniem w audytach technicznych i optymalizacji frontendowej.

## Główne funkcje

### Web Vitals z obsługą SPA

Ciągły monitoring **LCP, CLS i INP** z natywną obsługą *Soft Navigations*. Plugin poprawnie zbiera metryki w aplikacjach React, Next.js i Vue, gdzie tradycyjne narzędzia mierzą wydajność tylko przy twardym przeładowaniu strony. Natychmiastowa informacja o pogorszeniu metryk bez uruchamiania Lighthouse.

### Debugowanie Google Services i DataLayer

Weryfikacja zdarzeń Google Tag Manager, statusu Consent Mode i wykrywanie blokad przez CSP lub Ad-blockery &quot;w locie&quot;. DataLayer Inspector pokazuje wszystkie zdarzenia wypychane do warstwy danych przy każdej interakcji użytkownika. Eliminuje potrzebę uruchamiania ciężkich trybów debugowania GTM.

### Design System i Tech Stack Detection

Automatyczna ekstrakcja kolorów z opcją eksportu do Tailwind, UnoCSS czy zmiennych CSS. Precyzyjna identyfikacja frameworków (Vue.js, React, Next.js), systemów UI (Bootstrap, Tailwind), infrastruktury CDN i narzędzi analitycznych. Szczegółowy wykaz fontów, ich wag i źródeł ładowania.

### Analiza treści i Meta Tagów

Realistyczny podgląd SERP z walidacją długości tytułów i opisów. Analiza hierarchii nagłówków (H1-H6) oraz statystyki gęstości słów kluczowych (single words, bigrams, trigrams). Wsparcie AI do optymalizacji treści bezpośrednio w Side Panelu.

### Sitemap Analyzer

Wbudowany crawler do masowego audytu setek URL-i z mapy strony w kilka sekund. Plugin automatycznie wykrywa sitemap.xml i pozwala na weryfikację statusów HTTP, meta-tagów i czasu odpowiedzi. Eksport wyników do CSV dla dalszej analizy lub raportowania.

### Schema.org i Structured Data

Walidacja JSON-LD, Microdata i RDFa z wbudowaną bazą definicji Schema.org. Wykrywanie błędów strukturalnych i brakujących właściwości wymaganych przez Google Rich Results. Podgląd renderowania w Search Console.

### Side Panel jako centrum operacyjne

Natywny Chrome Side Panel umożliwia pracę bez przełączania kontekstu. Możliwość swobodnej nawigacji po witrynie, testowania ścieżek zakupowych i formularzy z podglądem metryk w czasie rzeczywistym. Eksport raportów do PDF jednym klikiem. Do przeróbki takich PDF-ów mój darmowy [edytor PDF online](/pl/edytor-pdf-online/) pozwala edytować tekst i strony w przeglądarce.

## Wykorzystane technologie

Plugin jest regularnie aktualizowany o nowe funkcje i dostępny za darmo w Chrome Web Store.</content:encoded></item><item><title>Wtyczka Enhanced WP REST API</title><link>https://spoko.space/pl/enhanced-wp-rest-api/</link><guid isPermaLink="true">https://spoko.space/pl/enhanced-wp-rest-api/</guid><description>Wtyczka open-source rozszerzająca WordPress REST API dla headless CMS. Oferuje integrację z GA4, dane Polylang do hreflang, względne URL-e i tryb headless.</description><pubDate>Wed, 20 Aug 2025 00:00:00 GMT</pubDate><content:encoded>## Rozszerzone WordPress REST API

Stworzyłem wtyczkę open-source, która rozszerza REST API WordPressa dla architektur headless CMS. Dzięki wtyczce wbudowane REST API WordPressa zyskuje funkcje niezbędne do efektywnej współpracy z nowoczesnymi frameworkami frontendowymi jak Astro, Next.js czy Nuxt.

## Problem

Domyślne REST API WordPressa zapewnia podstawową funkcjonalność, ale brakuje mu kluczowych funkcji dla wdrożeń produkcyjnych w architekturze headless:
- Niekompletne struktury danych wymagające wielu zapytań API
- Pełne URL-e powodujące problemy między środowiskami (dev, staging, produkcja)
- Brak wbudowanej integracji analitycznej dla popularnych postów
- Ograniczone wsparcie wielojęzyczności
- Brak przekierowań w trybie headless
- Brak niestandardowego sortowania taksonomii

Wtyczka rozwiązuje te problemy zestawem ulepszeń opartych na doświadczeniach z rzeczywistych projektów headless WordPress.

## Kluczowe funkcje

### Rozszerzona struktura danych

Wtyczka wzbogaca standardowe odpowiedzi REST API o dodatkowe pola potrzebne aplikacjom frontendowym:

**Rozszerzone dane autora** - Kompletne informacje o autorze zawierające ID, nazwę, nicename, URL avatara, opis i względne linki do strony autora w jednej odpowiedzi. Nie ma potrzeby osobnych zapytań do endpointu `/users`.

**Wiele rozmiarów obrazów** - Pole `featured_image_urls` dostarcza wszystkie zarejestrowane rozmiary obrazów WordPress (thumbnail, medium, large, full), eliminując potrzebę dodatkowych zapytań API do pobierania różnych wymiarów dla responsywnych obrazów.

**Szacowany czas czytania** - Automatyczne obliczanie szacowanego czasu czytania na podstawie długości treści (np. &quot;5 min czytania&quot;), przydatne dla szablonów blogowych i poprawy doświadczenia użytkownika.

**Bogate informacje o taksonomiach** - Rozszerzone dane kategorii i tagów z opisami, liczbą postów, ID kategorii nadrzędnych i względnymi URL-ami w głównej odpowiedzi posta.

### URL-e niezależne od środowiska

Wszystkie URL-e w odpowiedziach API są konwertowane na ścieżki względne (np. `/blog/nazwa-posta/` zamiast `https://example.com/blog/nazwa-posta/`). Dotyczy to:
- Permalinków postów
- URL-i stron autorów
- URL-i archiwów kategorii i tagów
- URL-i obrazów wyróżniających
- URL-i tłumaczeń (gdy Polylang jest aktywny)

**Korzyści:**
- Spójne zachowanie między środowiskami deweloperskim, stagingowym i produkcyjnym
- Bez konieczności konfiguracji zależnej od środowiska czy operacji znajdź-zamień
- Uproszczone wdrożenia i testowanie
- Frontend może konstruować pełne URL-e z własną domeną

### Integracja z Polylang

Płynne wsparcie wielojęzyczności gdy wtyczka [Polylang](https://polylang.pro/) jest aktywna:

**Dane tłumaczeń** - Pole `translations_data` udostępnia wszystkie dostępne tłumaczenia dla postów, kategorii i tagów z kompletnymi informacjami:
- Tłumaczenia postów zawierają ID, tytuł, slug, excerpt, status, ID obrazu wyróżniającego i względny link
- Tłumaczenia kategorii/tagów zawierają ID, nazwę, slug i względny link
- Idealne do tworzenia przełączników języków w aplikacjach headless
- **Kluczowe dla SEO** - umożliwia prawidłową implementację tagów `hreflang` w Astro i innych frameworkach frontendowych, co wcześniej było trudne do zrealizowania bez tych danych w odpowiedzi REST API

**Dostępne języki** - Lista wszystkich języków strony w polu `available_languages`

**Filtrowanie językowe** - Automatyczne zapytania API uwzględniające język respektują aktualny kontekst językowy

**Dlaczego to ma znaczenie dla SEO:** Bez pola `translations_data` implementacja prawidłowych tagów hreflang w architekturze headless wymagałaby dodatkowych zapytań API dla każdego tłumaczenia, co jest niepraktyczne dla generowania stron statycznych. Ta wtyczka rozwiązuje ten problem dostarczając wszystkie URL-e tłumaczeń w jednej odpowiedzi, umożliwiając wyszukiwarkom prawidłową identyfikację wariantów językowych i serwowanie odpowiedniej treści użytkownikom.

### Integracja z Google Analytics 4

Pobieranie popularnych postów na podstawie rzeczywistych danych o odsłonach z Google Analytics 4 zamiast prostych liczników wyświetleń:

**Funkcje:**
- Posty sortowane według rzeczywistych odsłon z GA4
- Konfigurowalne okresy czasowe: 7, 14, 30 lub 90 dni
- Filtrowanie językowe dla stron wielojęzycznych (integracja z Polylang)
- Inteligentne cachowanie z konfigurowalnym czasem trwania (1-24 godziny)
- Uwierzytelnianie JWT konta serwisowego
- Nie wymaga Google SDK - lekka implementacja wykorzystująca WordPress HTTP API

**Endpoint API:**
```
/wp-json/wp/v2/posts/popular?limit=6&amp;period=7d&amp;lang=pl
```

**Odpowiedź zawiera:**
- Dane posta ze wszystkimi rozszerzonymi polami
- Liczbę odsłon dla każdego posta
- Status cache i znacznik czasu
- Łączną liczbę wyników i informacje o okresie

Umożliwia to dynamiczne sekcje &quot;popularne posty&quot; oparte na rzeczywistym zachowaniu użytkowników, idealne do zwiększania zaangażowania i odkrywania treści.

### Tryb headless

Opcjonalna funkcja przekierowania frontendu dla w pełni headless WordPress:

**Jak to działa:**
- Przekierowania 301 wysyłają wszystkich odwiedzających frontend do Twojej aplikacji headless
- Oryginalne ścieżki URL są zachowane dla SEO (np. `/blog/slug-posta` → `https://frontend.com/blog/slug-posta`)
- Panel administracyjny pozostaje dostępny dla autoryzowanych użytkowników (uprawnienie `edit_posts`)
- REST API, GraphQL, WP-CLI i CRON działają normalnie

**Korzyści:**
- Utrzymanie WordPressa jako czystego backendu/CMS
- Zapobieganie problemom z duplikacją treści
- Prawidłowe przekierowania przyjazne SEO
- Brak potrzeby osobnych wtyczek trybu headless

### Niestandardowe sortowanie taksonomii

Wsparcie dla sortowania kategorii i tagów przez parametr `term_order`:

```
/wp-json/wp/v2/categories?orderby=term_order
/wp-json/wp/v2/tags?orderby=term_order
```

Respektuje ręczne sortowanie taksonomii z wtyczek, zapewniając spójną nawigację między panelem administracyjnym WordPress a headless frontendem. Kategorie domyślnie sortowane rosnąco.

### Rozszerzenie API komentarzy

Opcjonalna konfiguracja REST API dla anonimowego komentowania:
- Pozwala na przesyłanie komentarzy bez uwierzytelnienia przez REST API
- Konfigurowalne powiadomienia email dla moderatorów o nowych komentarzach
- Idealne dla formularzy kontaktowych Jamstack i systemów komentarzy headless
- Wszystko konfigurowane przez panel administracyjny WordPress

## Przykład kodu

```javascript
// Pobieranie postów ze wszystkimi rozszerzonymi danymi
fetch(&apos;/wp-json/wp/v2/posts&apos;)
  .then(res =&gt; res.json())
  .then(posts =&gt; {
    const post = posts[0];

    // Względne URL-e gotowe dla frontendu
    console.log(post.relative_link);        // &quot;/blog/tytul-posta&quot;
    console.log(post.author_data.url);      // &quot;/author/jan-kowalski&quot;

    // Kompletne dane autora w jednej odpowiedzi
    console.log(post.author_data);
    // {
    //   id: 1,
    //   name: &quot;Jan Kowalski&quot;,
    //   nicename: &quot;jan-kowalski&quot;,
    //   avatar: &quot;/path/to/avatar.jpg&quot;,
    //   description: &quot;Bio autora...&quot;,
    //   url: &quot;/author/jan-kowalski&quot;
    // }

    // Wszystkie rozmiary obrazów dostępne
    console.log(post.featured_image_urls);
    // {
    //   thumbnail: &quot;/uploads/image-150x150.jpg&quot;,
    //   medium: &quot;/uploads/image-300x200.jpg&quot;,
    //   large: &quot;/uploads/image-1024x768.jpg&quot;,
    //   full: &quot;/uploads/image.jpg&quot;
    // }

    // Szacowany czas czytania
    console.log(post.read_time); // &quot;5 min czytania&quot;

    // Dane wielojęzyczne (gdy Polylang aktywny)
    console.log(post.translations_data);
    console.log(post.available_languages); // [&quot;en&quot;, &quot;pl&quot;]
  });
```

## Zastosowanie w praktyce

Wtyczka powstała na potrzeby bloga [polo.blue](https://polo.blue) i jest tam aktywnie wykorzystywana. To wielojęzyczny blog motoryzacyjny zbudowany na frontendzie Astro z WordPressem jako headless backend.

**Implementacja polo.blue:**
- **Backend WordPress** - Zarządzanie treścią z Polylang dla tłumaczeń polsko/angielskich
- **Frontend Astro** - Generowanie stron statycznych korzystające z rozszerzonego REST API
- **Integracja GA4** - Sekcje popularnych postów oparte na rzeczywistych danych o odsłonach
- **Względne URL-e** - Płynne wdrożenia między wieloma środowiskami
- **Tryb headless** - Kompletna separacja frontendu z przekierowaniami 301

Wtyczka nadaje się również do innych implementacji headless WordPress:
- Wielojęzyczne blogi z nowoczesnymi frameworkami frontendowymi
- Strony z treściami i sekcjami trendów opartymi na GA4
- Strony marketingowe z backendem WordPress i prezentacją Next.js/Nuxt
- Zarządzanie treścią e-commerce z niestandardowymi taksonomiami

Wtyczka jest aktywnie rozwijana i przetestowana w środowiskach produkcyjnych.

&gt; Masz własnego WordPressa, który wymaga opieki, przyspieszenia lub migracji na headless? Zobacz [pakiety naprawy i opieki WordPress](/pl/naprawa-wordpress/) — od 450 zł za awaryjną naprawę do migracji na headless od 3 900 zł.

## Wykorzystane technologie

Wtyczka jest open-source (GPL v2 lub nowsza) i dostępna na GitHubie - zapraszam do współtworzenia. Wszystkie funkcje są opcjonalne i indywidualnie konfigurowalne przez panel administracyjny WordPress.</content:encoded></item><item><title>Spoko Design System</title><link>https://spoko.space/pl/spoko-design-system/</link><guid isPermaLink="true">https://spoko.space/pl/spoko-design-system/</guid><description>Open source&apos;owy Design System oparty na Astro z komponentami Vue 3 i stylami UnoCSS. Opublikowany jako pakiet npm z dokumentacją i biblioteką komponentów.</description><pubDate>Mon, 20 Jan 2025 00:00:00 GMT</pubDate><content:encoded>## Spoko Design System

Stworzyłem open source&apos;owy Design System, który łączy stronę dokumentacji z biblioteką komponentów wielokrotnego użytku w jednym pakiecie. System jest zbudowany z wykorzystaniem nowoczesnych technologii (Astro, Vue 3, UnoCSS) i opublikowany na npm, co ułatwia integrację z projektami.

## Architektura podwójnego zastosowania

To unikalne podejście pozwala projektowi pełnić dwie funkcje jednocześnie:

**Strona dokumentacji** - Interaktywna dokumentacja na [sds.spoko.space](https://sds.spoko.space/) z podglądem komponentów na żywo, przykładami kodu i kompleksowymi przewodnikami dla:
- Podstawowych tokenów designu (kolory, typografia, odstępy, cienie)
- Ponad 20 gotowych komponentów (przyciski, modale, formularze, karuzele)
- Wzorców projektowych i zaawansowanych komponentów
- Pełnej funkcjonalności wyszukiwania przez Pagefind

**Pakiet npm** - Instalowalna biblioteka komponentów (`spoko-design-system`) oferująca:
- Importowalne komponenty Vue 3 z obsługą TypeScript
- Eksportowalną konfigurację UnoCSS dla spójnego stylowania
- Konfigurację systemu ikon z ponad 10 wyselekcjonowanymi kolekcjami Iconify
- Eksporty wspierające tree-shaking dla optymalnego rozmiaru paczki

## Kluczowe funkcje

### Nowoczesna biblioteka komponentów

System zawiera starannie przygotowane komponenty, które działają w obu kontekstach - jako część strony dokumentacji Astro i jako importowalne komponenty z pakietu npm:
- Interaktywne elementy UI (przyciski, pola tekstowe, modale, dropdown&apos;y)
- Komponenty nawigacji (navbar, breadcrumbs, paginacja)
- Komponenty treści (karty, zakładki, akordeony)
- Specjalistyczne komponenty motoryzacyjne (używane produkcyjnie w projektach polo.blue)

### Spójne stylowanie z UnoCSS

Konfiguracja UnoCSS jest podzielona na łatwe w utrzymaniu moduły:
- **System motywów** - Kolory, typografia, breakpointy, wymiary
- **Skróty komponentów** - Prekonfigurowane style komponentów zorganizowane według kategorii
- **Eksportowalna konfiguracja** - Użytkownicy mogą rozszerzać bazową konfigurację przez `createSdsConfig()`

Takie podejście zapewnia spójność między projektami, jednocześnie umożliwiając dostosowanie do indywidualnych potrzeb.

### Integracja systemu ikon

Design System zawiera dwa skoordynowane systemy ikon współpracujące ze sobą:
- **UnoCSS Icons** - Statyczne importy przez klasy `i-{kolekcja}-{nazwa}`
- **astro-icon** - Dynamiczne importy dla komponentów Astro

Wyselekcjonowane kolekcje obejmują Material Design Icons, Lucide, Carbon, Boxicons oraz specjalistyczne zestawy ikon motoryzacyjnych i technologicznych.

### Zastosowanie w praktyce

Design System jest sprawdzony w boju na produkcji w wielu działających projektach:
- [catalog.polo.blue](https://catalog.polo.blue/) - Katalog części VW Polo 6R
- [polo.blue](https://polo.blue) - Główna strona motoryzacyjna
- [polo6r.pl](https://polo6r.pl) - Polska społeczność motoryzacyjna

Dzięki temu komponenty są gotowe do produkcji i radzą sobie z rzeczywistymi przypadkami brzegowymi.

## Zautomatyzowany proces wydawniczy

Projekt wykorzystuje semantic-release do zarządzania wersjami:
- Konwencjonalne commity określają zmiany wersji
- Automatyczne generowanie CHANGELOG
- Tworzenie wydań na GitHub
- Publikacja na npm po merge do main

To zapewnia spójne wersjonowanie i niezawodne aktualizacje pakietu.

## Wykorzystane technologie

Design System jest open source (licencja MIT) i aktywnie rozwijany z automatycznymi aktualizacjami zależności przez Renovate oraz kontrolą jakości kodu przez SonarQube.</content:encoded></item><item><title>Horze: rozwój frontendu e-commerce (Salesforce Commerce Cloud)</title><link>https://spoko.space/pl/horze-salesforce-commerce-cloud/</link><guid isPermaLink="true">https://spoko.space/pl/horze-salesforce-commerce-cloud/</guid><description>Rozwój frontendu dla platformy e-commerce Horze.de opartej na Salesforce Commerce Cloud.</description><pubDate>Mon, 29 Jan 2024 00:00:00 GMT</pubDate><content:encoded>## Przegląd projektu

Od początku 2020 do stycznia 2024, w ramach współpracy z [Rocksoft](https://rocksoft.pl), realizowałem projekt dla Horze.de - platformy e-commerce opartej na Salesforce Commerce Cloud. Przez niemal 4 lata ściśle współpracowałem z różnymi członkami zespołu nad dostarczaniem wysokiej jakości rozwiązań frontendowych.

## Rozwój front-endu

Na podstawie projektów Figma implementowałem responsywne komponenty i funkcje UI, utrzymując stałą komunikację z zespołem UX. Regularne spotkania refinement pozwalały omawiać szczegóły implementacji i zapewniać zgodność ze specyfikacjami projektowymi. Duży nacisk kładłem na dokładne testowanie mobilne z wykorzystaniem BrowserStack, zapewniając płynne działanie na różnych urządzeniach i przeglądarkach. Prowadziłem również ścisłą współpracę z zewnętrznym zespołem SEO, wdrażając optymalizacje i ulepszenia zgodnie z ich rekomendacjami, aby poprawić widoczność strony w wyszukiwarkach.

Zadania realizowałem metodologią Scrumban, która ewoluowała z początkowego Scruma, aby lepiej dostosować się do dynamicznych potrzeb projektu. Zakres prac obejmował rozwój szerokiej gamy komponentów dla Salesforce Page Designer, w tym promocyjnych landing page&apos;y na wydarzenia sezonowe (Boże Narodzenie, Wielkanoc, Walentynki), duże kampanie sprzedażowe (Black Friday) oraz różne inicjatywy marketingowe. Tworzyłem również standardowe komponenty e-commerce, takie jak karuzele, moduły checkout i inne niestandardowe elementy poprawiające doświadczenie zakupowe.

## Stos technologiczny

Frontend Horze.de powstał w ekosystemie Salesforce Commerce Cloud z wykorzystaniem nowoczesnych narzędzi front-endowych:

Projekt pozwolił mi pogłębić ekspertyzę w zakresie front-end developmentu oraz zrozumienie projektowania zorientowanego na użytkownika w dynamicznym środowisku e-commerce. Dzięki pracy zespołowej i efektywnej komunikacji między działami, moja praca odegrała kluczową rolę w dostarczaniu płynnego i angażującego doświadczenia zakupowego, pomagając Horze wyróżnić się na konkurencyjnym rynku sprzedaży online.</content:encoded></item><item><title>Strona agencji SEO</title><link>https://spoko.space/pl/seo-agency-website/</link><guid isPermaLink="true">https://spoko.space/pl/seo-agency-website/</guid><description>Wizytówka dla freelancera SEO zajmującego się poprawą widoczności online i generowaniem ruchu organicznego dla firm.</description><pubDate>Wed, 12 Apr 2023 00:00:00 GMT</pubDate><content:encoded>Freelancer oferuje kompleksowy zakres usług SEO, w tym optymalizację techniczną, dopracowanie treści i strategiczne budowanie linków. Audyty SEO są podkreślane jako kluczowe dla poprawy wydajności strony i zwiększenia sprzedaży. Freelancer specjalizuje się również w lokalnym SEO, pomagając firmom dotrzeć do klientów w ich okolicy.

## Stos technologiczny

Strona została zbudowana na nowoczesnym, statycznym stacku, który realnie wspiera pozycjonowanie — bo to, co klient sprzedaje (SEO), musi być widać także w jego własnej stronie:

## Zakres prac

- Projekt i implementacja strony wizytówkowej z blogiem i portfolio realizacji.
- Konfiguracja schematów danych strukturalnych (`Organization`, `Service`, `BreadcrumbList`, `FAQPage`) pod rich snippets w Google.
- Wdrożenie poprawnego hreflang oraz kanoniku dla przyszłej wersji wielojęzycznej.
- Optymalizacja obrazów (WebP/AVIF, lazy loading, `aspectRatio` eliminujący CLS).
- Integracja formularza kontaktowego oraz analityki GA4.
- Deploy w modelu ciągłym (CI/CD) — każdy merge do `main` automatycznie publikuje nową wersję.

## Efekty

- Core Web Vitals w zielonych wartościach (LCP &lt; 1,5 s, CLS &lt; 0,01) na urządzeniach mobilnych.
- Czas pełnego ładowania strony poniżej 1 sekundy przy typowym łączu 4G.
- Zero kosztu hostingu po stronie klienta (strona statyczna wdrożona na CDN).
- Łatwość rozbudowy treści — klient samodzielnie dodaje wpisy blogowe w Markdownie przez panel Git-based.</content:encoded></item><item><title>GotowySMS: Platforma z gotowymi tekstami SMS</title><link>https://spoko.space/pl/gotowysms/</link><guid isPermaLink="true">https://spoko.space/pl/gotowysms/</guid><description>Statyczna strona z gotowymi tekstami życzeń i szablonami SMS, zasilana z autorskiego CMS-a na Laravel 13 + FilamentPHP. Architektura odporna na sezonowe skoki ruchu.</description><pubDate>Sun, 12 Jan 2020 00:00:00 GMT</pubDate><content:encoded>## Przegląd projektu

GotowySMS.pl to platforma oferująca gotowe teksty życzeń i szablony SMS na różne okazje — święta, urodziny, imieniny, rocznice. Odpowiadałem za stworzenie layoutu, zaprojektowanie front-endu oraz rozwój autorskiego CMS-a dla backendu. Projekt jest nadal aktywnie rozwijany i w ostatnim czasie przeszedł głęboką przebudowę technologiczną.

## Kontekst biznesowy: życzenia i sezonowy ruch

GotowySMS.pl nie jest typową &quot;listą SMS-ów&quot; — to baza gotowych tekstów życzeń i wiadomości okolicznościowych, używanych głównie przez osoby szukające dopracowanej treści do szybkiego skopiowania. Specyfika niszy generuje wyraźnie **sezonowy ruch** — okresy przedświąteczne (Boże Narodzenie, Wielkanoc, Dzień Matki) przynoszą wielokrotne wzrosty odwiedzin z wąskim oknem konwersji.

Ta charakterystyka bezpośrednio wpłynęła na decyzje architektoniczne — platforma musi wytrzymać nagłe peak&apos;i ruchu bez obciążania bazy danych ani zaplecza.

## Projekt layoutu

Pierwszym krokiem było zaprojektowanie layoutu, który byłby zarówno atrakcyjny wizualnie, jak i funkcjonalny. Celem było stworzenie czystego, nowoczesnego designu ułatwiającego przeglądanie i wybieranie szablonów SMS. Wszystkie elementy, od menu nawigacyjnego po obszary wyświetlania treści, zostały intuicyjnie rozmieszczone.

## Rozwój front-endu

Po finalizacji layoutu, skupiłem się na rozwoju warstwy front-end z wykorzystaniem nowoczesnych technologii webowych. Front-end został zaprojektowany jako responsywny, zapewniając prawidłowe wyświetlanie na wszystkich urządzeniach. Zaimplementowałem elementy interaktywne, takie jak wyszukiwarka i filtry kategorii, ułatwiające użytkownikom szybkie znajdowanie potrzebnych szablonów.

## Niestandardowy CMS

Do zarządzania treścią na GotowySMS.pl stworzyłem autorski CMS dostosowany do potrzeb platformy. System pozwala administratorom łatwo dodawać, edytować i kategoryzować szablony życzeń, zapewniając elastyczność w zarządzaniu rosnącą bazą treści. CMS zawiera również funkcje zarządzania interakcjami użytkowników.

## Ewolucja stacka: od czystego PHP do Astro + Laravel 13

Projekt przeszedł trzy fazy technologiczne w ciągu swojego życia:

1. **Czysty PHP (start projektu).** Pierwsza wersja była klasyczną stroną PHP renderowaną po stronie serwera — templatki zaczynały się od czegoś w stylu `require_once $_SERVER[&apos;DOCUMENT_ROOT&apos;].&quot;/config/db.php&quot;;`, a każda podstrona uderzała bezpośrednio do bazy przy każdym requestcie. Wszystko wydawało się mocno skomplikowane, a optymalizacja zapytań SQL była ciągłym tematem, żeby strona nie ładowała się zbyt wolno przy większym ruchu. Do tego na froncie modne w tamtych czasach jQuery i biblioteki wymagane przez stary Bootstrap dokładały sporo JS — każdy kilobajt liczył się w Lighthouse. Suma tych czynników sprawiła, że całkowita przebudowa stała się bardziej racjonalną opcją niż kolejne łatanie.
2. **InfyOm Laravel Generator.** Migracja do [InfyOm](https://infyom.com/) dała skok produktywności — generator CRUD-ów oparty o Laravela zbudował kręgosłup panelu w kilka dni zamiast tygodni. Pozwoliło to wzbogacić CMS o funkcje, na które wcześniej brakowało czasu.
3. **Laravel 13 + FilamentPHP + Astro 6 (obecnie).** Ostatnia przebudowa rozdzieliła warstwy: Laravel 13 z [FilamentPHP](https://filamentphp.com/) jako panel CMS (spójny, dopracowany UI admina out-of-the-box), Astro 6 jako statyczny front-end konsumujący treść z API. Do tego Spatie Permissions dla ról redakcyjnych i Sanctum dla uwierzytelniania API. Panel obsługuje też zarządzanie redirectami (301/302) z poziomu UI — wcześniej każda zmiana URL-a wymagała ręcznej edycji `.htaccess`, dziś redakcja robi to sama w dwa kliknięcia, bez angażowania developera.

## Architektura: statyczny front, baza tylko podczas deploya

Kluczowa decyzja obecnej wersji to **generowanie stron statycznych przez API Laravela podczas build&apos;u Astro**. W praktyce oznacza to trzy rzeczy:

- **Runtime użytkownika → zero zapytań do bazy.** Każdy odwiedzający dostaje wstępnie wyrenderowane HTML z CDN — nawet tysiące jednoczesnych requestów nie dotykają Laravela ani MySQL.
- **Baza danych odzywa się tylko przy build/deploy.** Gdy redakcja doda nowe życzenia w FilamentPHP, webhook triggeruje build Astro → pobiera aktualną treść z API → generuje statyczne pliki → wrzuca na CDN.
- **Sezonowe peak&apos;i są nieszkodliwe.** Skalowanie sprowadza się do CDN, który jest praktycznie nieograniczony — zamiast stresować się o wydolność bazy w Wigilię, można spokojnie śledzić wykresy ruchu.

To podejście — statyczna generacja z [headless CMS na Laravelu](/pl/blog/frameworki-aplikacje-webowe-2026/) — jest jedną z najwydajniejszych architektur dla stron z cyklicznie zmienną treścią i gwałtownymi skokami ruchu.

Efekt końcowy: platforma działa stabilnie również w świątecznych peakach, z dobrymi wynikami w Core Web Vitals — rezultat, który na starym monolitycznym stacku PHP z jQuery i Bootstrapem byłby trudny do osiągnięcia bez agresywnego cache&apos;owania i regularnego stresowania się o wydolność serwera.

## Stos technologiczny

GotowySMS.pl łączy nowoczesny statyczny front-end z autorskim CMS-em opartym na Laravelu:

## Podsumowanie

Rozwój GotowySMS.pl był kompleksowym projektem łączącym kreatywny design z wiedzą techniczną. Tworząc atrakcyjny layout, responsywny front-end i niestandardowy CMS, dostarczyłem platformę skutecznie służącą użytkownikom szukającym gotowych szablonów SMS.</content:encoded></item><item><title>CITS Krosno: Wielojęzyczna strona WordPress</title><link>https://spoko.space/pl/cits/</link><guid isPermaLink="true">https://spoko.space/pl/cits/</guid><description>Wielojęzyczna strona WordPress zaprojektowana, aby dostarczać kluczowe informacje o usługach firmy.</description><pubDate>Thu, 09 Jan 2020 00:00:00 GMT</pubDate><content:encoded>## Przegląd projektu

CITS Krosno to prosta, wielojęzyczna strona zaprojektowana, aby dostarczać kluczowe informacje o usługach firmy. Stronę rozwijałem na platformie WordPress, pracując w Lizard Media Software House. Nacisk położony został na stworzenie przejrzystej, łatwej w nawigacji strony, która skutecznie obsługuje zróżnicowaną publiczność dzięki wsparciu wielu języków.

## Strategia wielojęzyczności

Wielojęzyczna strona firmowa to coś więcej niż dodanie wtyczki do tłumaczenia. Trzeba rozstrzygnąć kilka technicznych kwestii, które wpływają bezpośrednio na SEO i doświadczenie użytkownika:

- **Struktura URL**: każda wersja językowa w osobnej ścieżce (`/en/`, `/de/`) zamiast parametrów — lepiej indeksowalne przez Google i bardziej czytelne dla użytkowników.
- **Tagi `hreflang`**: automatycznie generowane przez Polylang, informują Google, która wersja strony jest przeznaczona dla którego rynku.
- **Przełącznik języka**: ujednolicony komponent na każdej podstronie, przekierowujący do odpowiednika w innym języku (a nie tylko na stronę główną).
- **Tłumaczenia treści**: redakcja mogła tworzyć osobne wersje językowe postów i stron, z jasnym oznaczeniem statusu tłumaczenia w panelu administracyjnym.

## Autorski motyw WordPress

Zamiast używać gotowego szablonu, zbudowałem motyw od zera w zgodzie z projektem graficznym dostarczonym przez klienta. Takie podejście ma konkretne zalety biznesowe:

- **Minimalny kod** = szybsze ładowanie strony i lepsze wyniki w Core Web Vitals.
- **Brak niepotrzebnych funkcji** oznacza mniejszą powierzchnię ataku i mniej aktualizacji w utrzymaniu.
- **Pełna kontrola nad layoutem** — pixel-perfect implementacja designu bez kompromisów narzucanych przez gotowe motywy.
- **Dopasowanie pod specyfikę klienta** — sekcje, typy treści i pola niestandardowe odzwierciedlają realną strukturę oferty firmy, nie generyczne kategorie z szablonu.

## Efekty i zarządzanie

Klient otrzymał stronę, którą może samodzielnie aktualizować — z intuicyjnym panelem administracyjnym dopasowanym do wielojęzycznej struktury. Lekki motyw generuje czysty, semantyczny HTML, co przekłada się zarówno na dobrą wydajność, jak i na poprawną indeksację w Google dla każdej wersji językowej.

## Stos technologiczny

Strona CITS powstała na WordPressie z autorskim motywem i wsparciem dla wielu języków:

## Podsumowanie

Rozwój CITS Krosno pokazuje skuteczność prostej, ale dobrze wykonanej wielojęzycznej strony WordPress. Zapewniła ona użytkownikom z różnych środowisk językowych łatwy dostęp do potrzebnych informacji, zachowując przejrzysty i funkcjonalny design.</content:encoded></item><item><title>Strona agencji UX &amp; Software House po rebrandingu</title><link>https://spoko.space/pl/software-house-website/</link><guid isPermaLink="true">https://spoko.space/pl/software-house-website/</guid><description>Strona LizardMedia UX &amp; Software House - niestandardowy rozwój WordPress i implementacja designu.</description><pubDate>Thu, 09 Aug 2018 00:00:00 GMT</pubDate><content:encoded>## Przegląd projektu

LizardMedia.pl to strona agencji UX &amp; Software House stworzona w ramach kompleksowego rebrandingu Lizard Media. Projekt obejmował stworzenie nowej wersji strony na podstawie designu dostarczonego w Adobe XD przez grafika.

  Zbudowana na platformie WordPress, strona została przygotowana na przyszłą wersję angielską, oferując niestandardowe pola i szablony, a także narzędzia do zarządzania banerami call-to-action i reklamami.

Dodatkowo duży nacisk położono na bezpieczeństwo WordPress, aby zapewnić integralność i ochronę strony.

 

   

## Stos technologiczny

Strona agencji to jej wizytówka — stos dobrany został pod szybki refresh treści przez zespół marketingu oraz łatwą rozbudowę o kolejne języki i landing page&apos;e kampanijne.

## Zakres prac

- Pełna implementacja projektu graficznego z Adobe XD w pixel-perfect, z naciskiem na zachowanie spójności identyfikacji wizualnej po rebrandingu.
- Autorski motyw WordPress przygotowany pod wersję wielojęzyczną (przyszłe wdrożenie EN).
- System zarządzania banerami call-to-action i reklamami wewnętrznymi — redakcja może publikować kampanie bez ingerencji developera.
- Niestandardowe szablony dla sekcji: *Usługi*, *Portfolio*, *Zespół*, *Blog*, *Kontakt*.
- Hardening WordPressa: ograniczenie prób logowania, zmiana domyślnych ścieżek, regularne backupy, aktualizacje automatyczne.
- Konfiguracja narzędzi SEO (meta, sitemap, schema `Organization`) oraz analityki.

## Efekty

- Strona odzwierciedlająca nową tożsamość marki po rebrandingu — spójna z materiałami drukowanymi i kampanijnymi.
- Redakcja treści w pełni obsługiwana przez marketing, bez udziału developera.
- Architektura przygotowana na rozbudowę (dodanie wersji angielskiej wymagało wyłącznie konfiguracji wtyczki tłumaczeń, nie refaktoru motywu).
- Zero udanych ataków/kompromitacji po wdrożeniu hardeningu (potwierdzone 18-miesięcznym oknem obserwacji).

## Podsumowanie

Rozwój LizardMedia.pl wymagał ścisłej współpracy, aby ożywić wizję rebrandingu poprzez nowoczesną i elastyczną stronę WordPress. Dzięki niestandardowym funkcjom i naciskowi na bezpieczeństwo, strona nie tylko odzwierciedla nową tożsamość marki, ale jest również przygotowana na przyszłe rozszerzenia, w tym dodanie wersji angielskiej.</content:encoded></item><item><title>Rozwój i zarządzanie forum dla entuzjastów technologii mobilnych</title><link>https://spoko.space/pl/gsm-forum/</link><guid isPermaLink="true">https://spoko.space/pl/gsm-forum/</guid><description>Rozwój i zarządzanie GSMX.pl: Forum dla entuzjastów technologii mobilnych.</description><pubDate>Sun, 12 Feb 2017 00:00:00 GMT</pubDate><content:encoded>## Przegląd projektu

GSMX.pl to popularne forum internetowe poświęcone dyskusjom o technologii mobilnej, oferujące przestrzeń do dzielenia się wiedzą i śledzenia najnowszych trendów. Przez lata forum przeszło kilka znaczących aktualizacji i migracji. Odpowiadałem za stworzenie początkowego layoutu, modyfikacje skryptów i szablonów, zarządzanie migracjami między różnymi platformami forów oraz administrację techniczną na serwerze VPS.

## Projekt layoutu i modyfikacje skryptów

Praca z GSMX.pl rozpoczęła się od zaprojektowania niestandardowego layoutu, który był zarówno atrakcyjny wizualnie, jak i łatwy w nawigacji. Layout został dostosowany do potrzeb użytkowników, z naciskiem na dostępność i funkcjonalność.

Oprócz layoutu, współpracowałem przy modyfikacji skryptów i szablonów forum, dostosowując funkcje, optymalizując wydajność i zapewniając kompatybilność z rosnącymi wymaganiami społeczności.

## Migracje forum

W miarę rozwoju forum i postępu technologii, konieczne stały się migracje GSMX.pl do nowocześniejszych rozwiązań. Pierwsza duża migracja obejmowała przeniesienie forum z **phpBB2** na **vBulletin 3** - bardziej zaawansowane oprogramowanie oferujące lepszą skalowalność i narzędzia zarządzania użytkownikami.

Po kilku latach na vBulletin przeprowadzono kolejną migrację, tym razem z **vBulletin 3** na **xenForo**. XenForo oferowało nowocześniejszy interfejs, lepszą wydajność i wsparcie dla współczesnych technologii webowych. Podczas tej migracji opracowałem również polską wersję językową dla xenForo.

## Zarządzanie serwerem

Oprócz prac nad designem i rozwojem, odpowiadałem za zarządzanie techniczne forum na serwerze **VPS** z **Debian 7 Wheezy**. Obejmowało to konfigurację i optymalizację środowiska serwerowego z wykorzystaniem **nginx** jako serwera WWW i **MariaDB** jako systemu bazy danych.

## Stos technologiczny

GSMX.pl przeszło przez kilka platform forumowych i stosów infrastruktury na przestrzeni lat:

## Podsumowanie

Praca nad GSMX.pl była kompleksowym projektem obejmującym zarówno wyzwania kreatywne, jak i techniczne. Od projektowania layoutu, przez zarządzanie migracjami, po administrację infrastrukturą serwerową - projekt pokazał znaczenie adaptacji i dbałości o szczegóły w utrzymaniu prosperującej społeczności online.</content:encoded></item><item><title>Platforma z recenzjami gier i aplikacji Android</title><link>https://spoko.space/pl/app-reviews/</link><guid isPermaLink="true">https://spoko.space/pl/app-reviews/</guid><description>Serwis na WordPressie do recenzowania gier i aplikacji na Androida — oceny, kategorie i wyszukiwarka dla polskiej społeczności mobilnej.</description><pubDate>Fri, 12 Feb 2016 00:00:00 GMT</pubDate><content:encoded>Strona z recenzjami gier i aplikacji na Androida, początkowo oparta na frameworku ZURB Foundation 5 z niestandardowym CMS-em jako backend, później zmigrowana do Bootstrap 3 jako frontend i WordPress jako backend.

## Przegląd projektu

Droida.pl to strona poświęcona szczegółowym recenzjom gier i aplikacji na Androida. Projekt skupiał się na stworzeniu przyjaznej i atrakcyjnej wizualnie platformy, która mogłaby obsłużyć dużą ilość treści, zapewniając jednocześnie łatwą nawigację. Początkowo strona została zbudowana z wykorzystaniem frameworka **ZURB Foundation 5** dla front-endu i niestandardowego CMS-a dla backendu. Z czasem przeszła znaczącą migrację do **Bootstrap 3** dla front-endu i **WordPress** dla backendu.

## Początkowy rozwój

Na wczesnym etapie Droida.pl została zaprojektowana z wykorzystaniem **ZURB Foundation 5**, frameworka znanego z możliwości responsywnego designu. Zapewniło to dostępność strony na różnych urządzeniach. Niestandardowy CMS na backendzie pozwalał na dostosowane zarządzanie treścią, specjalnie zaprojektowane pod potrzeby strony z recenzjami.

Początkowy design skupiał się na stworzeniu przejrzystego i intuicyjnego interfejsu, pozwalającego użytkownikom łatwo znajdować recenzje, nawigować po kategoriach i odkrywać nowe gry oraz aplikacje. Niestandardowy CMS zapewniał elastyczność potrzebną do zarządzania rosnącą bazą recenzji z ocenami, zrzutami ekranu i szczegółowymi opisami.

   

## Migracja i rozwój

W miarę rozwoju strony przeprowadzono migrację do **Bootstrap 3** i **WordPress**. Bootstrap 3 zapewnił nowocześniejszy i szerzej wspierany framework front-endowy, poprawiając responsywność i wygląd strony. Przejście na WordPress jako system backendowy przyniosło szereg korzyści: bardziej przyjazny interfejs zarządzania treścią, lepszą skalowalność oraz dostęp do szerokiej gamy wtyczek i narzędzi.

Ta zmiana pozwoliła Droida.pl obsługiwać rosnącą ilość treści przy zachowaniu użyteczności i wydajności. Migracja do WordPress otworzyła również nowe możliwości optymalizacji SEO i zaangażowania użytkowników poprzez komentarze i udostępnianie w mediach społecznościowych.

## Podsumowanie

Rozwój Droida.pl pokazuje znaczenie adaptacji w tworzeniu stron. Rozpoczęcie od rozwiązania niestandardowego i późniejsza migracja do popularnych technologii jak Bootstrap 3 i WordPress pozwoliły stronie rozwijać się bez poświęcania wydajności czy doświadczenia użytkownika.</content:encoded></item><item><title>Frontend dla sklepu z odzieżą zimową dla dzieci</title><link>https://spoko.space/pl/pilguni/</link><guid isPermaLink="true">https://spoko.space/pl/pilguni/</guid><description>Front-end dla sklepu z odzieżą zimową dla dzieci, skierowanego głównie na rynek rosyjski.</description><pubDate>Sat, 09 Jan 2016 00:00:00 GMT</pubDate><content:encoded>## Przegląd projektu

W konkurencyjnym świecie e-commerce stworzenie atrakcyjnej wizualnie i przyjaznej dla użytkownika strony sklepu jest kluczowe, szczególnie dla niszowych rynków jak odzież zimowa dla dzieci. Pracując w AQIMO, rozwijałem front-end dla **Pilguni.com** - sklepu specjalizującego się w wysokiej jakości zimowej odzieży dla dzieci. Projekt został zbudowany na frameworku Phalcon, zapewniając solidną i wydajną platformę spełniającą specyficzne potrzeby klienta.

## Rynek docelowy i pozycjonowanie marki

Sklep był głównie nastawiony na sprzedaż na rynku rosyjskim — w tamtych czasach, przed wojną, była to w pełni możliwa i obiecująca ekspansja. Drogie, prestiżowe zimowe ubrania dla dzieci, przyozdobione kryształami Swarovskiego, cieszyły się tam szczególnym uznaniem wśród zamożniejszych rodziców. Same ubrania były produkowane w Polsce, a płatności w sklepie przebiegały przez PayPal — rozwiązanie pasujące do międzynarodowej klienteli i eliminujące konieczność obsługi wielu lokalnych metod płatności.

## Rozwój front-endu

Rozwój front-endu Pilguni.com skupiał się na stworzeniu angażującego doświadczenia zakupowego dostosowanego do potrzeb rodziców szukających zimowej odzieży dla swoich dzieci. Wykorzystałem nowoczesne technologie webowe, aby strona była nie tylko estetyczna, ale również responsywna i łatwa w nawigacji na wszystkich urządzeniach - od komputerów stacjonarnych po smartfony.

Design został zaimplementowany z naciskiem na użyteczność, oferując przejrzyste kategorie produktów, szczegółowe opisy przedmiotów i wysokiej jakości zdjęcia prezentujące jakość i ciepło odzieży. Takie podejście zapewniało klientom łatwe znajdowanie i kupowanie poszukiwanych produktów, poprawiając ich ogólne doświadczenie zakupowe.

## Współpraca i integracja techniczna

Praca nad tym projektem dała mi cenne doświadczenie we współpracy - ściśle współpracowałem z grafikiem, aby ożywić koncepcje wizualne, oraz z programistą backend, aby zapewnić płynną integrację z frameworkiem Phalcon. Ta praca zespołowa była kluczowa w dostarczeniu produktu końcowego, który był nie tylko atrakcyjny wizualnie, ale również solidny technicznie, z płynnym działaniem i szybkim ładowaniem.

## Perfekcja w obsłudze przeglądarek mobilnych

Ciekawostką technologiczną projektu było bardzo wysokie wymaganie klienta co do spójności wersji mobilnej. Strona musiała wyświetlać się idealnie nawet w mniej popularnych przeglądarkach — testowałem ją m.in. w [Dolphin Browser](https://dolphin.com/), który w tamtych latach miał zauważalny udział w rynku mobile poza ekosystemami Chrome i Safari.

Dodatkowo w tamtym czasie Firefox nie obsługiwał wielu nowości z CSS, które już działały w silnikach opartych na WebKit. Sporo pracy szło więc na workaroundy — ręczne prefiksy przeglądarkowe, alternatywne implementacje layoutu i dodatkowe ścieżki w JavaScript dla zachowania spójnego wyglądu i zachowań między silnikami. Takie „drobiazgi&quot; najlepiej uczą dyscypliny cross-browser testing, która procentuje przez całą karierę.

## Stos technologiczny

Sklep Pilguni.com działał na backendzie opartym na Phalconie z autorską warstwą front-endową:

## Podsumowanie

Rozwój front-endu Pilguni.com był satysfakcjonującym projektem łączącym kreatywność z wiedzą techniczną. Udało się stworzyć sklep, który skutecznie prezentuje zimową odzież marki dla dzieci, czyniąc zakupy łatwymi i przyjemnymi dla klientów. Ścisła współpraca z innymi członkami zespołu była kluczowa w dostarczeniu udanego i spójnego sklepu internetowego spełniającego oczekiwania klienta.</content:encoded></item><item><title>Strona firmowa i sklep dla warsztatu elektroniki pojazdów VAG</title><link>https://spoko.space/pl/vwtech/</link><guid isPermaLink="true">https://spoko.space/pl/vwtech/</guid><description>Strona internetowa z panelem administracyjnym i projektami graficznymi (obróbka zdjęć, packshoty produktów). Autorski CMS dostosowany do potrzeb klienta.</description><pubDate>Wed, 09 Sep 2015 00:00:00 GMT</pubDate><content:encoded>## Przegląd projektu

VWtech to firma specjalizująca się w sprzedaży i personalizacji części samochodowych. Projekt obejmował stworzenie nowoczesnej i funkcjonalnej strony prezentującej produkty i usługi, wraz z dedykowanym panelem administracyjnym.

## Rozwój front-endu

Front-end strony VWtech został zaprojektowany jako przyjazny dla użytkownika i atrakcyjny wizualnie. Do stworzenia responsywnego i interaktywnego interfejsu wykorzystano **jQuery**, **Vanilla JS** i **Bootstrap 3**. Design strony jest przejrzysty, z intuicyjną nawigacją pozwalającą użytkownikom łatwo znaleźć potrzebne informacje - czy to przeglądanie części samochodowych, oglądanie zrealizowanych projektów, czy kontakt z firmą.

Jedną z kluczowych funkcji front-endu jest prezentacja produktów z wysokiej jakości zdjęciami i szczegółowymi opisami. Obrazy, w tym packshoty produktów, zostały przetworzone i zoptymalizowane dla web przy zachowaniu wysokich standardów wizualnych. Ta dbałość o szczegóły pomaga budować profesjonalny i wiarygodny wizerunek VWtech.

## Rozwój back-endu

Back-end strony został zbudowany z autorskim CMS (System Zarządzania Treścią) dostosowanym do specyficznych potrzeb VWtech. CMS zaprojektowano jako elastyczny i łatwy w użyciu, pozwalając klientowi zarządzać treścią strony bez rozległej wiedzy technicznej.

Kluczowe funkcjonalności CMS:

- **Publikowanie wpisów**: VWtech może łatwo publikować i zarządzać wpisami o swoich ostatnich projektach i aktualnościach, utrzymując treść strony świeżą i angażującą.
   

- **Oferty sprzedaży produktów**: CMS umożliwia klientowi zarządzanie ofertami sprzedaży części samochodowych, w tym dodawanie nowych produktów, aktualizację cen i zarządzanie stanem magazynowym.
   

- **Zarządzanie zdjęciami**: System zawiera rozbudowane narzędzia do zarządzania zdjęciami, pozwalające VWtech przesyłać, organizować i wyświetlać obrazy produktów i projektów.
   

- **Wyszukiwarka produktów**: Aby poprawić doświadczenie użytkownika, strona posiada zaawansowaną wyszukiwarkę produktów, ułatwiającą odwiedzającym szybkie znalezienie konkretnych części samochodowych.
  

- **Integracja formularza kontaktowego**: Aby zapewnić bezpieczną i wolną od spamu komunikację, formularze kontaktowe na stronie są zintegrowane z niewidocznym reCAPTCHA Google. Ta funkcja chroni stronę przed botami spamowymi, zapewniając jednocześnie płynne doświadczenie użytkownika.

## Wykorzystane technologie

## Podsumowanie

Starannie wykonując zarówno front-end, jak i back-end, udało się dostarczyć stronę spełniającą bieżące potrzeby klienta i stanowiącą solidną platformę do przyszłego rozwoju. Autorski CMS umożliwia VWtech łatwe zarządzanie swoją obecnością online, a responsywny design zapewnia płynne doświadczenie na wszystkich urządzeniach. Ten projekt pokazuje znaczenie dopasowania technologii do celów biznesowych, tworząc cyfrową obecność zarówno funkcjonalną, jak i skuteczną.</content:encoded></item></channel></rss>