PrestaShop, który ładuje się od razu. Nawet przy 147 000 produktów.PrestaShop that loads instantly. Even with 147,000 products.
Migrujemy z 1.7 do 9, budujemy frontend headless w Nuxt i aplikację, którą klient instaluje na telefonie. Backend skaluje się sam: przy większym ruchu uruchamia się więcej PrestaShopów. Tak działają LavMag.eu i YouLook.pl.We migrate from 1.7 to 9, build a headless Nuxt frontend and an app shoppers install on their phone. The backend scales by itself: more traffic starts more PrestaShop instances. That is how LavMag.eu and YouLook.pl run.
Zaczynamy od audytu Twojego sklepu. Panel zostaje ten sam.We start with an audit of your store. The back office stays the same.
- ruch rośnietraffic grows
- load balancer rozdziela klientówthe load balancer spreads shoppers
- klaster dokłada instancjethe cluster adds instances
Sklep rośnie. PrestaShop zaczyna łapać zadyszkę.The store grows. PrestaShop starts to struggle.
Stara wersja, dużo modułów i duży katalog. Każda zmiana to ryzyko, a każda wyprzedaż to nerwy.An old version, many modules and a large catalogue. Every change is a risk and every sale is stressful.
W wyprzedaż sklep stoi.The store goes down during sales.
Jeden serwer nie wytrzymuje ruchu z kampanii. Klienci odchodzą z pełnym koszykiem.One server cannot take campaign traffic. Shoppers leave with full carts.
Boimy się aktualizacji.We are afraid to update.
Wersja 1.7, kilkadziesiąt modułów i nikt nie wie, co się rozsypie.Version 1.7, dozens of modules and nobody knows what will break.
Strona ładuje się wolno.Pages load slowly.
Google widzi to w Core Web Vitals, a reklamy liczą zakupy z dziurami.Google sees it in Core Web Vitals and ads miss purchases.
Dlaczego nasz PrestaShop jest szybki? 8 scen.Why is our PrestaShop fast? 8 scenes.
Każda scena pokazuje jeden powód, dla którego sklep ładuje się od razu. Na górze kadru zobaczysz go w jednym zdaniu.Each scene shows one reason the store loads instantly. You will see it in one sentence at the top of the frame.
Klient wchodzi do sklepu. Cloudflare podaje stronę z serwera najbliżej niego, więc pierwsze wejście jest szybkie także z telefonu.The shopper enters the store. Cloudflare serves the page from the server closest to them, so the first visit is fast even on a phone.
Frontend w Nuxt składa stronę na serwerze, a powtarzalne dane bierze z pamięci Redis. Google dostaje pełny HTML, klient przechodzi między stronami bez przeładowania.The Nuxt frontend builds the page on the server and takes repeated data from Redis memory. Google gets full HTML, the shopper moves between pages without reloads.
Pod spodem pracuje PrestaShop 9 w klastrze Kubernetes. Gdy rośnie ruch, uruchamiają się kolejne instancje, a gdy spada, wyłączają się same. Nowa instancja startuje od razu, bo zdjęcia nie leżą w PrestaShop.Underneath, PrestaShop 9 runs in a Kubernetes cluster. More traffic starts more instances and they shut down when it drops. A new instance starts at once because photos do not live inside PrestaShop.
Wyszukiwarka i filtry działają na ElasticSearch. Wyniki i podpowiedzi pojawiają się od razu, nawet przy 147 000 produktów.Search and filters run on ElasticSearch. Results and suggestions appear at once, even with 147,000 products.
Zamówienia, klienci i katalog są w MySQL 8. Zdjęcia trzymamy poza PrestaShop, w osobnym storage, skąd lecą prosto do klienta. Serwer sklepu jest lżejszy, a kopie zapasowe szybsze.Orders, customers and catalogue live in MySQL 8. Photos are kept outside PrestaShop, in separate storage, and go straight to the shopper. The store server stays light and backups are faster.
Każda zmiana przechodzi automatyczne testy i wdrożenie. Sentry łapie błędy, zanim zauważy je klient.Every change goes through automated tests and deployment. Sentry catches errors before a shopper notices.
Klient dodaje sklep do ekranu telefonu jednym kliknięciem, bez App Store i Google Play. Sklep otwiera się jak aplikacja, na pełnym ekranie, a powiadomienia push przypominają o koszyku i promocjach.Shoppers add the store to their phone home screen in one tap, no App Store or Google Play. It opens like an app, full screen, and push notifications bring them back to the cart and promotions.
Tak działa LavMag.eu z 147 000 produktów i YouLook.pl z ok. 20 000. Panel zostaje zwykłym PrestaShop, a klient dostaje sklep klasy premium.This is how LavMag.eu runs with 147,000 products and YouLook.pl with about 20,000. The back office stays regular PrestaShop, the shopper gets a premium store.
Twój sklep łapie zadyszkę? Zacznij od bezpłatnego audytu i wyceny.Is your store struggling? Start with a free audit and quote.
Bezpłatna wycenaFree quoteSześć rzeczy, które klient poczuje od razu.Six things your shoppers feel at once.
To nie jest lista technologii. To efekty, które widać w sprzedaży.This is not a tech list. These are results you see in sales.
Natychmiastowe przejściaInstant transitions
Kliknięcie w kategorię nie przeładowuje strony. Klient przegląda dalej zamiast czekać.Clicking a category does not reload the page. Shoppers keep browsing instead of waiting.
SEO od pierwszego dniaSEO from day one
Strony składane na serwerze. Googlebot dostaje gotowy HTML, nie pusty skrypt.Server-rendered pages. Googlebot gets finished HTML, not an empty script.
Wyszukiwarka w milisekundySearch in milliseconds
ElasticSearch z podpowiedziami i filtrami, także przy 147 000 produktów.ElasticSearch with suggestions and filters, even at 147,000 products.
Analityka odporna na AdBlockiAd blocker proof analytics
Zdarzenia idą z przeglądarki i z serwera (GTM server-side, Meta CAPI). Reklamy liczą zakupy dokładnie.Events go from the browser and the server (server-side GTM, Meta CAPI). Ads count purchases accurately.
Instalowalna aplikacjaAn installable app
Klient instaluje sklep na telefonie jednym kliknięciem (PWA), bez App Store i Google Play. Ikona na ekranie, pełny ekran i powiadomienia push.Shoppers install the store on their phone in one tap (PWA), no App Store or Google Play. A home screen icon, full screen and push notifications.
Płatność i dostawa bez tarciaFrictionless payment and delivery
BLIK i szybkie przelewy przez tpay, Przelewy24 i Autopay, InPost Pay, Paczkomaty na mapie, ORLEN Paczka i termin dostawy przy produkcie.BLIK and fast transfers via tpay, Przelewy24 and Autopay, InPost Pay, parcel lockers on a map, ORLEN Paczka and a delivery date on the product.
Zwykły PrestaShop i PrestaShop od nas.Standard PrestaShop and PrestaShop by us.
Panel zostaje ten sam. Zmienia się wszystko, co widzi klient.The back office stays the same. Everything the shopper sees changes.
| Typowy sklep na motywieTypical theme store | Contelizer headless | |
|---|---|---|
| Przejście między stronamiPage transition | pełne przeładowaniefull reload | natychmiastinstant |
| Co widzi GoogleWhat Google sees | zależy od motywudepends on the theme | pełny HTML (SSR)full HTML (SSR) |
| WyszukiwarkaSearch | zapytania do bazydatabase queries | ElasticSearch |
| Szczyt ruchuTraffic peak | jeden serwerone server | autoskalowanieautoscaling |
| Zdjęcia produktówProduct photos | na serwerze sklepuon the store server | osobny storageseparate storage |
| AnalitykaAnalytics | tylko przeglądarkabrowser only | przeglądarka i serwerbrowser and server |
| TelefonMobile | stronawebsite | PWA i pushPWA and push |
| Panel dla zespołuBack office | PrestaShop | ten sam PrestaShopthe same PrestaShop |
Przykładowe sklepy na naszej architekturze.Example stores on our architecture.
Zobacz je na komputerze i na telefonie: stronę główną, listing i kartę produktu. Ogromna rotacja towaru i ciągłe zmiany stanów to najtrudniejszy test dla bazy. Te sklepy go zdają.See them on desktop and mobile, from the homepage to the product page. Huge stock rotation and constant inventory changes are the hardest test for a database. These stores pass it.
- filtry i wyszukiwarka na Elasticsearch, z licznikami produktówElasticsearch filters and search, with product counts
- rozmiary jednego modelu zgrupowane w jeden kafeleksizes of one model grouped into one tile
- sortowanie, także „najczęściej oglądane”sorting, including “most viewed”
- zdjęcia z CDN, bez obciążania serweraphotos from a CDN, no load on the server
- „Zamów do 15:20, wyślemy dziś”: termin dostawy z naszego modułu“Order by 3:20 pm, ships today”: delivery date from our module
- wybór rozmiaru jednego modelusize picker for one model
- InPost Pay i PaczkomatyInPost Pay and parcel lockers
- zdjęcia z CDNphotos from a CDN
- historia cen OmnibusOmnibus price history
Potężny katalog i ciągłe aktualizacje stanów. ElasticSearch i Redis trzymają szybkość frontendu.A huge catalogue and constant stock updates. ElasticSearch and Redis keep the frontend fast.
- filtry i wyszukiwarka na Elasticsearch, z licznikami produktówElasticsearch filters and search, with product counts
- rozmiary jednego modelu zgrupowane w jeden kafeleksizes of one model grouped into one tile
- sortowanie, także „najczęściej oglądane”sorting, including “most viewed”
- zdjęcia z CDN, bez obciążania serweraphotos from a CDN, no load on the server
- „Zamów do 15:20, wyślemy dziś”: termin dostawy z naszego modułu“Order by 3:20 pm, ships today”: delivery date from our module
- wybór rozmiaru jednego modelusize picker for one model
- InPost Pay i PaczkomatyInPost Pay and parcel lockers
- zdjęcia z CDNphotos from a CDN
- historia cen OmnibusOmnibus price history
Moda z dynamicznie zmieniającą się ofertą. Frontend działa niezależnie od panelu.Fashion with a constantly changing range. The frontend runs independently of the back office.
Przeczytaj, jak zbudowaliśmy te sklepyRead how we built these stores
12 własnych modułów pracuje w naszych sklepach.12 of our own modules run in our stores.
Piszemy je sami i utrzymujemy przy każdej aktualizacji PrestaShop. Do tego wdrażamy i pilnujemy sprawdzonych modułów zewnętrznych, od płatności po wysyłki.We write them ourselves and keep them working through every PrestaShop update. On top of that we install and look after proven third-party modules, from payments to shipping.
contelizerrestCałe API dla frontendu w Nuxt: około 164 endpointy, od katalogu i koszyka po płatności, dostawy i push.The whole API for the Nuxt frontend: about 164 endpoints, from catalogue and cart to payments, delivery and push.
contelizer_product_imagesZdjęcia jako linki do CDN w osobnej tabeli (około 4 mln wierszy). Bez milionów plików na serwerze.Photos as CDN links in a separate table (about 4 million rows). No millions of files on the server.
contelizerallegrohashWspólny klucz serii rozmiarów. Frontend składa z niego wybór rozmiaru, a wyszukiwarka grupuje wyniki.A shared key for a size series. The frontend builds the size picker from it and search groups results.
contelizer_webhookNowe zamówienie od razu trafia do Easyitem, przez HTTP albo RabbitMQ.A new order reaches Easyitem at once, over HTTP or RabbitMQ.
contelizergmcGoogle Merchant Center: XML co 6 h i Merchant API, kolejka zmian, nocne uzgadnianie, tytuły z AI.Google Merchant Center: XML every 6 h plus Merchant API, change queue, nightly reconciliation, AI titles.
contelizerfacebookfeedKatalog dla reklam Meta: kolejka zmian, nocna pełna wysyłka, etykieta z ceną na zdjęciu.Catalogue for Meta ads: change queue, nightly full sync, price label on the photo.
contelizeraffiliateTwórcy UGC i ich kody: raport obrotu z eksportem CSV, statystyki na koncie twórcy.UGC creators and their codes: revenue report with CSV export, stats in the creator account.
contelizerekomiCo godzinę prośba o opinię do Zaufane.pl i formularz na stronie podziękowania.Hourly review requests to Zaufane.pl and a form on the thank-you page.
contelizer_hyros_integrationZamówienia do Hyros z około 2 h opóźnieniem, żeby objąć późniejsze płatności.Orders to Hyros with about a 2 h delay to include later payments.
contelizercarrierhours„Zamów do 14:00, wyślemy dziś” dla dni, godzin i przewoźników, na karcie produktu i w checkoutcie.“Order by 2 pm, ships today” per day, hour and carrier, on the product page and at checkout.
contelizer_product_viewsLicznik wyświetleń: sortowanie „Najczęściej wyświetlane” i sekcja „Bestsellery”.View counter: “Most viewed” sorting and the “Bestsellers” section.
contelizersalesreportPozycje zamówień z wybranego okresu do miesięcznych rozliczeń.Order lines for a chosen period, for monthly settlements.
Potrzebujesz modułu na miarę?Need a custom module?Polskie szablony maili i tłumaczenia też przygotowujemy.We also prepare Polish email templates and translations.
Zintegrujemy Cię z każdym narzędziem, które ma API.We connect you to any tool that has an API.
Poniżej to, z czym już pracujemy. Twojego systemu nie ma na liście? Jeśli ma API, napiszemy integrację i będziemy ją utrzymywać.Below is what we already work with. Your system is not listed? If it has an API, we will build the integration and maintain it.
Zapytaj o swoją integracjęAsk about your integrationPython, PHP, REST, webhooki. Integracje piszemy i utrzymujemy sami.Python, PHP, REST, webhooks. We build and maintain integrations ourselves.
Pytania, które słyszymy najczęściej.Questions we hear most.
Czy migracja z 1.7 do 9 jest bezpieczna dla danych?Is migrating from 1.7 to 9 safe for my data?
Tak. Stawiamy nową, czystą bazę i przenosimy klientów, historię zamówień, katalog oraz relacje cech i atrybutów z zachowaniem pełnej integralności.Yes. We set up a new clean database and move customers, order history, catalogue and feature relations with full integrity.
Czym jest headless i co mi daje?What is headless and what do I get?
PrestaShop dostarcza dane przez API, a wygląd sklepu działa osobno w Nuxt. Zyskujesz natychmiastowe przejścia, lepsze Core Web Vitals i swobodę w projektowaniu.PrestaShop serves data through an API and the storefront runs separately in Nuxt. You get instant transitions, better Core Web Vitals and design freedom.
Jak działa autoskalowanie?How does autoscaling work?
Backend działa w klastrze Docker Swarm albo Kubernetes. Przy większym ruchu uruchamia się więcej instancji PrestaShop, a gdy ruch spada, wyłączają się same.The backend runs in a Docker Swarm or Kubernetes cluster. More traffic starts more PrestaShop instances, and they shut down by themselves when traffic drops.
Mam bardzo duży katalog. Dacie radę?I have a huge catalogue. Can you handle it?
Tak. Obsługujemy katalogi od 20 000 do 147 000 produktów przy dużej rotacji. ElasticSearch i Redis odciążają bazę.Yes. We run catalogues of 20,000 to 147,000 products with high rotation. ElasticSearch and Redis offload the database.
Czy muszę iść w headless?Do I have to go headless?
Nie. Headless ma sens przy dużym katalogu i ruchu. Mniejsze sklepy migrujemy na klasyczny motyw.No. Headless makes sense for large catalogues and traffic. Smaller stores we migrate on a classic theme.
Czy przejmiecie utrzymanie?Will you take over maintenance?
Tak. Utrzymujemy i rozwijamy istniejące moduły, także pisane przez kogoś innego.Yes. We maintain and extend existing modules, including ones written by others.
Opowiedz o swoim sklepie.Tell us about your store.
Wersja, liczba produktów i co boli najbardziej. Wrócimy z planem audytu i bezpłatną wstępną wyceną.Version, catalogue size and what hurts most. We will come back with an audit plan and a free initial quote.
- 1OdpowiadamyWe reply
W ciągu jednego dnia roboczego, osobiście, bez automatów.Within one business day, in person, no bots.
- 220 minut rozmowyA 20 minute call
O Twoich produktach i liczbach, nie o naszej ofercie.About your products and numbers, not our pitch.
- 3Próbka albo planA sample or a plan
Widzisz wynik na swoich danych, zanim cokolwiek podpiszesz.You see results on your own data before you sign anything.
To prototyp, więc nic nie zostało wysłane.This is a prototype, so nothing was sent.



