01Przegląd projektu
Astrinajest platformą all-in-one dla wszystkich odpowiedzialnych za strony internetowe: właścicieli, studiów webowych, agencji, deweloperów i specjalistów SEO. Jej istota mieści się w jednym zdaniu — "każda strona, którą się opiekujesz, w jednym panelu". Analiza internetowa, codzienne monitorowanie SEO, recenzje i reputacja, publiczne katalogi i rankingi, plus zestaw API usług — wszystko to żyje za jednym logowaniem i jest zasilane jednym skryptem na stronie. Możesz zacząć za darmo: plan darmowy obejmuje trzy strony i nie wymaga podawania karty kredytowej.
Produkt powstał z obserwacji znanej każdemu, kto opiekuje się więcej niż jedną stroną. Ruch znajduje się w jednym narzędziu, SEO w innym, recenzje w trzecim, a każda strona ma swoje własne logowanie. Każda usługa jest dobra sama w sobie, ale utrzymanie ich w synchronizacji to praca, za którą nikt nie płaci, a ktoś i tak to robi. Astrina zastępuje te cztery narzędzia i cztery logowania jednym: jeden skrypt, jeden panel, i e-mail rano, gdy coś umknie.
Zaprojektowaliśmy i zbudowaliśmy produkt od podstaw — od architektury licznika pierwszej strony i nocnego robota do modelu cenowego, publicznych katalogów, dokumentacji i trzech wersji językowych (EN/RU/UK). Poniżej przechodzimy przez problem, który rozwiązuje Astrina, jak działa wewnętrznie i decyzje inżynieryjne, które utrzymują jej liczby w uczciwości — w tym dlaczego licznik przetrwa blokery reklam i dlaczego nawet właściciel strony nie może usunąć recenzji.
Słowo o kontekście. Astrina jest produktem własnego ekosystemu studia, a nie zleconą pracą zewnętrzną: zbudowaliśmy narzędzie, którego sami używamy. Strona ostohlo.com jest połączona z platformą jako strona #6 i zbiera swoje statystyki przez własną subdomenę, stats.ostohlo.com — to znaczy, przez dokładnie ten model pierwszej strony sprzedawany klientom. Korzystanie z własnych produktów dyscyplinuje zespół lepiej niż jakikolwiek plan testów: każda szorstka krawędź panelu to coś, co odczuwamy jako pierwsi.
02Kontekst i problem
Śledzenie strony internetowej jest łatwe "technicznie" — trudna część to robienie tego ciągle i na każdej stronie jednocześnie. Gdy rozłożyliśmy zadanie na części, pojawiła się cała lista problemów, z którymi boryka się każdy odpowiedzialny za kilka projektów:
- Analizy brakuje jednej trzeciej obrazu.Blokery reklam usuwają liczniki stron trzecich — mniej więcej jedna trzecia publiczności po prostu znika z raportów. Decyzje podejmowane są na podstawie niekompletnych danych.
- ZOO narzędzi i logowania.Ruch, SEO i recenzje znajdują się w trzech różnych usługach, a każda strona ma swoje własne dane logowania. Całościowy obraz istnieje tylko w czyjejś głowie lub w arkuszu kalkulacyjnym, który nikt nie pamięta, aby zaktualizować.
- Ciche regresje SEO.Aktualizacja motywu cicho usuwa kanoniczny — i nikt ci o tym nie mówi. Dowiadujesz się o tym tygodnie później, gdy ruch już się przeniósł, a ktoś inny pyta, dlaczego.
- Recenzje, w które nikt nie wierzy.Ocena, którą właściciel może poprawić, nie jest warta nic. A zewnętrzne platformy recenzji z uczciwymi ocenami żyją osobno od strony i jej metryk.
- Rutyna bez właściciela.Regularne „czy wszystko w porządku” przeszukiwanie to praca, której nikt nie oszacował w godzinach. Albo nie jest wykonywana, albo jest wykonywana kosztem prawdziwej pracy.
Zadanie sprowadzało się do tego: zbudować platformę, na której każda strona — twoja i twoich klientów — jest widoczna w jednej tabeli z żywym ruchem i wynikiem SEO, a rutynowe monitorowanie jest zautomatyzowane do tego stopnia, że „email przychodzi sam”. A liczby musiały być wiarygodne — dla właściciela i dla klienta agencji, któremu są pokazywane.
Osobną warstwą zadania było uczciwość jako cecha produktu. Analizy zablokowane przez blokery reklam są o jedną trzecią mniej wiarygodne; ocena, którą można edytować, nic nie znaczy. Od samego początku zdecydowaliśmy, że zaufanie do liczb będzie gwarantowane przez architekturę, a nie obietnice: licznik ładowany jest z własnej domeny klienta, a recenzje fizycznie nie mogą być zmieniane ani usuwane.
Na koniec była warstwa wielo-tenantowa. Platforma obsługuje setki stron innych osób z różnymi planami, limitami i językami — co oznacza, że limity muszą być sprawdzane przez kod, dane najemcy muszą być izolowane, a każda liczba na stronie cenowej musi odpowiadać liczbie w konfiguracji, a nie zaokrągleniu marketingowemu.
03Cele projektu
Z krótkiego opisu wyrosły konkretne cele produktowe i inżynieryjne, które mieliśmy na uwadze na każdym etapie:
- Jeden skrypt, jedno logowanie.Podłączenie strony to jedna linia przed zamykającym tagiem body. Żadnego SDK, żadnego menedżera tagów, żadnego kroku budowania — tag poniżej 2 KB, który zaczyna raportować przy pierwszym trafieniu.
- Pierwsza strona z definicji.Licznik ładowany jest z własnej domeny klienta, więc blokery reklam, które usuwają analizy stron trzecich, pozostawiają go w spokoju. Brak ciasteczek między stronami, a dane nigdy nie są sprzedawane.
- E-mail zamiast zmiany warty.Strona pod monitoringiem jest ponownie sprawdzana każdej nocy; jeśli wynik SEO spadnie, e-mail jest w skrzynce odbiorczej do rana. Właściciel słyszy to pierwszy — nie od klienta.
- Szczerość jako mechanizm.Recenzje w skali 1–5 gwiazdek nie mogą być edytowane ani usuwane przez właściciela — tylko publicznie odpowiadane. To właśnie dlatego wynik może być uważany za wiarygodny.
- API jako pierwsze.Wszystko widoczne w panelu sterowania można wyeksportować: API JSON, eksport CSV i MCP dla asystentów AI.
- Niska bariera wejścia.Darmowy plan dla 3 stron bez karty oraz 3 darmowe kontrole SEO dziennie w każdym planie — możesz spróbować, zanim zapłacisz.
- Trzy języki.Produkt jest w pełni trójjęzyczny (EN/RU/UK) — od interfejsu po e-maile i publiczne katalogi.
Jak w naszych innych produktach, te cele zostały sformułowane jako ograniczenia, a nie życzenia: każde z nich wykluczało nieodpowiednie opcje na etapie projektowania. Wymóg pierwszej strony natychmiast narzucił schemat obsługi licznika przez domeny klientów; wymóg szczerości zabronił jakichkolwiek edycji "admina" recenzji na poziomie modelu danych; a wymóg "e-mail zamiast zmiany w pracy" przekształcił harmonogram nocnego ponownego skanowania z funkcji w nośną strukturę produktu.
04Co zbudowaliśmy
Astrina pakietuje monitorowanie stron w cztery moduły, które działają na jednym skrypcie i jednym panelu sterowania:
Analiza internetowa
Licznik pierwszej strony poniżej 2 KB: aktywni odwiedzający, źródła ruchu i cele — na liczby, których blokery reklam nie przycinają.
Monitorowanie SEO
Pełne sprawdzenie techniczne w mniej niż minutę, nocne ponowne skanowanie monitorowanych stron, historia wyników i e-mail rano, gdy spadnie.
Opinie i reputacja
Szczere recenzje 1–5 gwiazdek, których właściciel nie może edytować ani usuwać; publiczne odpowiedzi, osadzany widget i odznaka SVG.
API dewelopera i usługi
API JSON z kluczami tylko w nagłówku i kwotą powtarzaną w każdej odpowiedzi, eksport CSV, logowanie społecznościowe, hostowane biura wsparcia i MCP dla asystentów AI.
Na szczycie modułów znajdują się publiczne katalogi i rankingi (ocena ruchu na stronie, katalogi wymiany i hostingu oraz inne wystawy w stylu App Store), model cenowy od Free do Business Plus oraz trójjęzyczny pulpit nawigacyjny. Wszystko to jest wdrażane jako jeden produkt na dedykowanej infrastrukturze.
Kluczowe jest to, że moduły nie są rozdzielone — tworzą jedną pętlę danych: skrypt na stronie zasila analitykę, crawler zasila wynik SEO, recenzje zasilają reputację, a publiczne katalogi są budowane na podstawie tych samych pomiarów, które właściciel widzi w panelu. Ta sama liczba ruchu pojawia się w prywatnym panelu i w publicznym rankingu — nie ma miejsca, w którym mogłaby się "rozjechać". Ta spójność to to, co oddziela platformę od zestawu usług pod wspólnym logo.
Produkt w jednym zdaniu: "Jeden skrypt, jedno logowanie — i każda strona, którą się opiekujesz, w jednym panelu. Rzeczywisty ruch, codzienne kontrole SEO, szczere recenzje i e-mail rano, gdy coś się nie uda."
05Architektura rozwiązania
W sercu Astriny znajduje się wielo-tenantowy rdzeń z modułami złożonymi wokół niego. Centralnym bytem jest strona: zdarzenia analityczne, kontrole SEO i ich historia, recenzje, pozycje w katalogu i kwoty planu wszystkie są z nią powiązane. Konto użytkownika to zbiór stron, a nie ma znaczenia, czy są to twoje, czy twoich klientów: agencja widzi sto projektów w tej samej tabeli, w której właściciel widzi trzy.
Logicznie system składa się z pięciu bloków: przyjmowanie zdarzeń (punkty końcowe licznika, do których trafiają dane z każdej podłączonej strony), crawler (sprawdzania na żądanie i nocnego ponownego skanowania z historią wyników), wystawy (publiczne katalogi i rankingi zbudowane na tych samych danych), warstwa API (JSON, CSV, MCP), i powiadomienia (poranne e-maile, gdy wynik spada). Każdy blok posiada swoją część cyklu obserwacji i komunikuje się z innymi przez wyraźne granice.
Jedną z konsekwencji architektonicznych wynikających bezpośrednio z modelu pierwszej strony jest to, że licznik musi ładować się z własnej domeny klienta, a nie z astrina.io. Oznacza to, że infrastruktura musi obsługiwać domeny innych osób — akceptować ruch na subdomenach klientów, dostarczać skrypt z nich i odbierać zdarzenia na nich. Dostarczanie tagów i przyjmowanie trafień zostały zaprojektowane z myślą o tym od samego początku, a nie dodane później: to najbardziej ruchliwa i publiczna część systemu, oddzielona od pulpitu i skanera.
Pod maską znajduje się stos serwerów na PHP 8.3 z MySQL, za Cloudflare (DNS, TLS, ochrona perymetryczna). Limity planu — liczba stron, głębokość historii, dzienne limity na kontrole i wywołania API — są sprawdzane przez kod przy każdej akcji: każda liczba na stronie cenowej odpowiada liczbie, którą system rzeczywiście egzekwuje. To uczciwość wobec użytkownika, ale także ochrona platformy przed zalewem przez jednego najemcę.
06Licznik pierwszej strony
Centralna decyzja inżynieryjna Astriny odpowiada na nieprzyjemny fakt w branży: blokery reklam usuwają liczniki stron trzecich, a mniej więcej jedna trzecia publiczności nigdy nie trafia do raportów konwencjonalnej analityki. Właściciel patrzy na wykres i wierzy, że widzi swój ruch — podczas gdy widzi tylko dwie trzecie z niego.
Odpowiedzią jest ładowanie licznika z własnej domeny klienta. Blokery reklam blokują żądania do znanych domen analitycznych; żądanie do subdomeny samej strony jest dla nich nieodróżnialne od ładowania zwykłego zasobu. Dlatego tag Astriny jest serwowany nie z astrina.io, ale z domeny właściciela, a statystyki obejmują całą publiczność — nie tylko tę część, która nigdy nie zainstalowała blokera.
Sam tag jest niezwykle lekki i niezwykle nudny — i to jest komplement: poniżej 2 KB, jedna linia przed zamykającym tagiem body. Żadnego SDK, żadnego menedżera tagów, żadnego kroku budowania; licznik zaczyna raportować przy pierwszym trafieniu. Dla odwiedzających z wyłączonym JavaScriptem istnieje piksel noscript, więc nawet ten ogon publiczności nie jest stracony. A pierwsza strona nie oznacza nadzoru: licznik nie używa ciasteczek między stronami, nie buduje profili między stronami, a dane właściciela nigdy nie są sprzedawane.
Model jest testowany w boju na stronie internetowej studia: ostohlo.com jest połączone z Astrina jako strona #6 i ładuje licznik z subdomeny stats.ostohlo.com — lekki tag a.js plus r.js do nagrywania sesji. To jest dowód produkcyjny schematu: to samo podejście CNAME, ta sama dostawa z domeny klienta, te same liczby w tym samym pulpicie nawigacyjnym, co dla każdego użytkownika platformy.
Kluczowa idea: kompletność danych tutaj nie jest "funkcją dodatkową", ale samym kształtem architektury. Licznik, który ładuje się z domeny właściciela, nie może być zablokowany przez listę domen zewnętrznych — i to jest silniejsze niż jakiekolwiek sztuczki po stronie skryptu.
07Kluczowe możliwości
Przyjrzyjmy się, co sprawia, że Astrina to nie "jeszcze jeden licznik", ale platforma, która obejmuje obserwację strony internetowej od początku do końca.
Analiza na żywo
Na żywo widok odwiedzających, źródeł ruchu i celów — niezbędny zestaw, ale oparty na danych pierwszej strony. Pulpit nawigacyjny pokazuje, co dzieje się na stronie w tej chwili, skąd pochodzą ludzie i czy osiągają docelowe działania. Wyższe plany dodają na żywo strumień odwiedzających i powtórki sesji — możesz obejrzeć prawdziwą wizytę zamiast zgadywać na podstawie liczb.
Sprawdzenie SEO w mniej niż minutę
Pełny audyt techniczny strony zajmuje mniej niż minutę — do 25 stron na raz. Trzy kontrole dziennie są darmowe w każdym planie, w tym w planie darmowym: produkt pozwala poczuć jego rdzeń bez płacenia. Każdy znaleziony problem ma gotowy podpowiedź dla asystenta AI — opis błędu można skopiować bezpośrednio do ulubionego narzędzia, które zaproponuje poprawkę.
Recenzje, widget i odznaka SVG
Moduł reputacji zbiera recenzje od 1 do 5 gwiazdek, na które właściciel może odpowiadać publicznie, ale nie może ich edytować ani usuwać. Ocena osadzana jest na stronie jako widget, a odznaka SVG pasuje do README, stopki lub podpisu. Dlaczego niemutowalność jest cechą, omówiono w osobnej sekcji poniżej.
Katalogi i rankingi
Astrina prowadzi publiczne pokazy oparte na własnych pomiarach: ocena ruchu stron korzystających z licznika, katalogi wymiany i hostingu z ocenami i recenzjami oraz katalog w stylu App Store. Pokazy są otwarte bez konta — każdy może sprawdzić, jak platforma liczy, co jest częścią modelu zaufania.
Interfejsy API usług
Poza podstawowymi modułami, platforma udostępnia praktyczne narzędzia: interfejs API inteligencji telefonicznej do sprawdzania numerów telefonów oraz sprawdzanie haseł w bazach danych wycieków. To te same dane, które zasilają katalogi — dostępne programowo.
Logowanie z Astrina i biura wsparcia
"Logowanie z Astrina" to gotowe logowanie społecznościowe skonfigurowane raz, co zdejmuje z właściciela strony obowiązek przechowywania haseł. A hostowane biura wsparcia dają każdemu projektowi gotową stronę wsparcia pod adresem astrina.io/support/<domain> — bez potrzeby wdrażania własnego systemu zgłoszeń.
MCP dla asystentów AI
Dane platformy są dostępne dla asystentów AI przez MCP: asystent może samodzielnie pobierać statystyki lub sprawdzać wyniki i pracować z nimi w rozmowie. Interfejs API zaprojektowany dla ludzi i skryptów okazał się również gotowy dla agentów.
08Monitorowanie SEO wewnętrznego
Jednorazowa kontrola strony jest przydatna, ale prawdziwa wartość monitorowania tkwi w regularności. Uszkodzony kanonikal nie ogłasza się sam; po prostu cicho siedzi w kodzie, aż rankingi spadną. Dlatego sercem modułu nie jest sama audyt, ale harmonogram nocny.
. Działa to w ten sposób. Jednorazowa kontrola jest dostępna dla wszystkich: pełne sprawdzenie techniczne do 25 stron w mniej niż minutę, trzy darmowe uruchomienia dziennie w każdym planie. Ale strona umieszczona pod monitoringiem jest ponownie sprawdzana przez platformę każdej nocy, sama — bez prośby, bez przycisku, bez przypomnień. Wynik każdej nocy trafia do historii: wynik SEO zmienia się z migawki w krzywą, a krzywa pokazuje dokładnie, kiedy coś się zepsuło i jak wyglądały rzeczy wcześniej.
Trzecim elementem jest poranny e-mail. Jeśli nocne sprawdzenie rejestruje spadek wyniku, e-mail przychodzi rano tego samego dnia. Sens tej decyzji jest głębszy, niż się wydaje: skrzynka odbiorcza staje się interfejsem monitorowania. Właściciel nie musi otwierać pulpitu nawigacyjnego "na wszelki wypadek" — pulpit przychodzi do niego, i to dokładnie wtedy, gdy jest coś do powiedzenia. Cisza w skrzynce odbiorczej to również informacja: oznacza, że wszystko jest w porządku.
Liczba stron w nocnym ponownym skanowaniu to jedna oś siatki cenowej: 3 strony w Pro, 25 w Business, 100 w Business Plus. To uczciwe odzwierciedlenie kosztów: nocne skanowanie jest najbardziej zasobożerną częścią platformy, a jej limity, jak wszystkie inne, są egzekwowane przez kod.
Sprawdzenie w minutę
Pełny audyt techniczny do 25 stron — szybciej niż parzy się kawa.
Nocne ponowne skanowanie
Monitorowane strony są sprawdzane na nowo każdej nocy; historia wyników gromadzi się sama.
Poranny e-mail
Wynik spadł w nocy — e-mail jest w skrzynce odbiorczej rano. Właściciel dowiaduje się o tym pierwszy, a nie klient.
09Niezmienialne recenzje
Moduł reputacji oparty jest na jednej twardej zasadzie: właściciel strony nie może edytować ani usuwać recenzji. Nie za pieniądze, nie przez wsparcie, nie "jako wyjątek". Jedynym narzędziem dostępnym dla nich jest publiczna odpowiedź obok recenzji.
Decyzja jest nieintuicyjna jak projektowanie produktu — z pewnością płacący klient zasługuje na kontrolę. Ale ocena, którą właściciel może poprawić, nic nie znaczy: to wynik, który sami sobie nadali. Niezmienność to jedyny powód, dla którego liczba obok gwiazdek może być w ogóle wierzona. Celowo wbudowaliśmy to w model danych, a nie w politykę: system po prostu nie ma operacji "edytuj czyjąś recenzję", a żadnej roli nigdy nie przyznaje się takiej możliwości.
Szczerość działa w obie strony. Publiczna odpowiedź pozwala właścicielowi przepracować sporną sytuację na oczach wszystkich — a przemyślana odpowiedź na krytyczną recenzję często przekonuje bardziej niż pięciogwiazdkowa. Skala 1–5 gwiazdek jest prosta i znana, a zebrana ocena może być przeniesiona na własną stronę właściciela jako osadzany widget lub lekka odznaka SVG — wynik przestaje żyć tylko na stronie katalogu i zaczyna działać tam, gdzie podejmowane są decyzje.
Dlaczego to ma znaczenie: "ocena, której nie napisałeś sam" jest rzadkością w internecie, gdzie recenzje są wymieniane. Nieodmienność przekształca wynik z dekoracji w walutę zaufania — a jednocześnie dyscyplinuje właściciela do radzenia sobie ze skargami publicznie.

10Prywatność i bezpieczeństwo
Platforma analityczna z definicji obsługuje wrażliwe dane — ruch innych osób. Dlatego prywatność w Astrina nie jest sekcją warunków korzystania z usługi, ale zestawem decyzji architektonicznych. Licznik nie ustawia ciasteczek między witrynami i nie buduje profili między witrynami: model pierwszej strony oznacza, że dane każdej witryny żyją w kontekście tej witryny. A zasada platformy to, że dane właścicieli nigdy nie są sprzedawane: model biznesowy Astrina to subskrypcja, a nie handel publicznością.
Drugą warstwą jest bezpieczeństwo API. Klucz jest akceptowany tylko w nagłówku HTTP i nigdy w URL. To jest świadoma decyzja: parametry URL osiadają w logach serwera, proxy i historii przeglądarki, a klucz, który raz został przekazany w ciągu zapytania, powinien być uważany za skompromitowany. Nagłówki nie trafiają do logów — więc jedna linia specyfikacji zamyka całą klasę wycieków. Dla użytkowników ta sama dyscyplina zamienia się w usługę: sprawdzenie hasła w bazach danych wycieków jest wbudowane w platformę.
Trzecia warstwa to izolacja najemców. Strony, klucze, recenzje i limity każdego konta są oddzielone od danych innych; agencja z setką projektów klientów nie może zobaczyć danych innego najemcy ani wyczerpać limitów innego najemcy. Limity egzekwowane przez kod przy każdej akcji chronią nie tylko uczciwość cenową, ale także stabilność platformy: jeden niekontrolowany skrypt nie zablokuje crawlera dla wszystkich.
11Panel wielostanowiskowy
Główne okno Astriny to tabela wszystkich stron konta: odwiedzający w ciągu 30 dni, trend, wynik SEO, status na żywo. Ten punkt wejścia to świadomy wybór: produkt dla osób, które dbają o wiele stron, powinien otwierać się z odpowiedzią na "czy wszystko w porządku — we wszystkich naraz". Jedno spojrzenie na tabelę zastępuje poranną rundę pięciu usług.
Siatka cenowa jest zbudowana wokół rzeczywistych osi kosztów — liczby stron, głębokości historii i ilości automatyzacji.Darmowy ($0) — 3 strony, widok na żywo, źródła i cele, 3 kontrole SEO dziennie, recenzje i widget oceny, 33 dni historii.Pro ($19 / 30 dni) — 25 stron, 180 dni historii, 3 strony w nocnym ponownym skanowaniu z powiadomieniami, eksport CSV i strumień odwiedzających na żywo, 5,000 wywołań API dziennie.Biznes (59 $) — 100 stron, rok historii, 25 stron do ponownego przeszukania, odtwarzanie sesji i 25 000 połączeń.Biznes Plus (99 $) — nielimitowane strony, 730 dni historii, 100 stron do ponownego przeszukania, hostowane wsparcie dla własnych użytkowników i 100 000 połączeń dziennie.
Płatność jest obsługiwana w dojrzały, ekosystemowy sposób: plany są opłacane z salda konta doładowywanego kartą lub kryptowalutą przez Payora — inny produkt naszego ekosystemu, z własnym studium przypadku. Automatyczne odnawianie jest domyślnie wyłączone: nic nie obciąża cię niespodziewanie; odnawianie jest włączane przez samego użytkownika. Dla SaaS to rzadkość, prawie demonstracyjna uczciwość — i należy do tej samej rodziny co nieusuwalne recenzje.
Każda liczba w tej sekcji to nie tekst marketingowy, ale wartość z konfiguracji, którą kod sprawdza: stworzenie 26. strony na Pro nie jest "zniechęcane" — po prostu nie jest wykonywane. Trzymamy się zasady, że "strona z cenami jest dokumentacją ograniczeń", co dramatycznie upraszcza życie zarówno wsparciu, jak i użytkownikom.
12API dewelopera i integracje
Wszystko, co platforma pokazuje w panelu, może również przekazać. API dla deweloperów to JSON z przewidywalnymi odpowiedziami, a jego projekt zawiera dwie decyzje, które uważamy za wzorcowe dla każdego API.
Pierwsza to klucz tylko w nagłówku. API w ogóle nie akceptuje klucza w ciągu zapytania: URL z kluczem trafia do logów serwera WWW, proxy, historii przeglądarki i refererów, a stamtąd wycieka. Nagłówek nie. Prawidłowe zachowanie tutaj nie jest "zalecane przez dokumentację" — to jedyne możliwe. Drugą jest pozostała kwota odbijała się w każdej odpowiedzi. Klient nie potrzebuje ani osobnego punktu końcowego, ani własnej księgowości: każda odpowiedź mówi, ile wywołań pozostało. Skrypt może spowolnić się przed limitem, zamiast odkrywać go przez 429.
Poza JSON, eksport danych do CSV — dla raportów, arkuszy kalkulacyjnych i wszystkiego, co żyje poza kodem. Przez MCP te same dane są dostępne dla asystentów AI: agent prosi o statystyki lub sprawdza wyniki bezpośrednio w rozmowie. "Zaloguj się z Astrina" obejmuje logowanie społecznościowe dla stron na platformie, a hostowane biura wsparcia (astrina.io/support/<domain>) zapewniają wsparcie użytkowników bez własnego systemu zgłoszeń. Platforma jest również przyjazna dla świata zewnętrznego: Google Search Console, Google Analytics 4, Bing Webmaster i IndexNow są na liście wspieranych integracji.
Wreszcie, publiczne katalogi są również rodzajem integracji — z otwartym internetem. Ocena ruchu jest budowana na podstawie tych samych pomiarów z 30-dniowego licznika, które właściciel widzi w panelu; katalogi wymiany i hostingu z tych samych danych i recenzji. Platforma liczy na widoku, a każdy może zweryfikować jej działanie bez konta.
13Stos technologiczny i infrastruktura
Dla Astrina zebraliśmy dedykowane, izolowane środowisko z własnymi domenami, politykami i harmonogramem. Dla platformy, która obsługuje strony internetowe innych osób, porządek w środowisku jest częścią produktu.
- Backend — PHP 8.3: przyjmowanie zdarzeń liczników, wielo-tenantowy rdzeń, pulpit nawigacyjny, warstwa API i logika limitów.
- Dane — MySQL: zdarzenia analityczne, historia wyników SEO, recenzje, katalogi i limity planów w jednym spójnym modelu.
- Robot — moduł kontroli: audyty na żądanie do 25 stron oraz nocne ponowne skanowanie monitorowanych stron z gromadzeniem historii.
- Dostawa przez kuriera — dostarczanie tagu z domen klientów (model CNAME), z pikselem noscript jako zapasowym.
- Powiadomienia — powiadomienia e-mail: wiadomość przychodzi rano w dniu, w którym wynik spada.
- Infrastruktura — Cloudflare (DNS, TLS, ochrona perymetryczna) oraz izolowane środowisko z ważnymi certyfikatami.
Wybór PHP 8.3 i MySQL jest pragmatyczny: dojrzały, szybki, przewidywalny stos, na którym działają intensywne przyjęcia hitów, crawler, pulpit nawigacyjny i API w jednym środowisku. Dostarczanie z pierwszej strony dodaje nietypowy wymóg do stosu — obsługę domen innych osób jako własnych — i to właśnie ukształtowało konfigurację perymetryczną. Cloudflare pokrywa DNS i TLS, a całe środowisko jest zaprojektowane tak, aby najbardziej obciążona część (przyjmowanie zdarzeń) nie konkurowała o zasoby z najcięższą częścią (nocne crawlowanie): mają różne profile obciążenia i różne godziny szczytu.
14Projektowanie i UX
Narzędzie do codziennej rutyny sprzedaje spokój, więc zrobiliśmy interfejsy Astriny gęste i ciche. Główny ekran — tabela stron z trendem i wynikiem SEO — odpowiada na główne pytanie użytkownika w sekundę. Brak banerów powitalnych, brak "spostrzeżeń tygodnia": osoba z setką stron klientów przychodzi, aby sprawdzić, a nie przeglądać.
Pierwsze pięć minut otrzymało szczególną uwagę. Droga od rejestracji do pierwszego odwiedzającego na ekranie jest celowo krótka: wklej linię tagu — zobacz na żywo hit. Natychmiastowa informacja zwrotna działa tutaj jako onboarding: nie wycieczki po interfejsie, ale własny ruch pojawiający się przed twoimi oczami. Ta sama zasada napędza moduł SEO: pierwsza kontrola jest darmowa, trwa mniej niż minutę i kończy się konkretną listą problemów — każdy z gotowym podpowiedzią AI dołączoną.
Publiczna strona platformy — katalogi i rankingi — została zaprojektowana jako samodzielna witryna: otwarta, indeksowalna, działająca bez konta. Jest zarówno powierzchnią marketingową, jak i demonstracją metody: platforma nie boi się pokazać, jak liczy. Wreszcie, cały produkt jest trójjęzyczny — EN, RU i UK są równorzędne, od interfejsu i e-maili po strony publiczne, z poprawnym hreflang i zlokalizowanymi URL-ami. Dla produktu funkcjonującego w kilku środowiskach językowych jednocześnie to kwestia architektury treści, a nie tłumaczenia — i zostało to zaprojektowane od samego początku, a nie "zlokalizowane" później.
15Jak pracowaliśmy
Realizowaliśmy projekt w sekwencyjnych etapach, demonstrując wynik na każdym kroku:
- Badania. Mapowaliśmy scenariusze właścicieli, studiów i agencji, analizowaliśmy problemy "czterech narzędzi" i ustaliliśmy model "jeden skrypt → jeden pulpit → e-mail rano".
- Architektura. Zaprojektowaliśmy wielo-tenantowy rdzeń, schemat dostarczania licznika pierwszej strony, model kwot oraz umowę API — klucz tylko w nagłówku i echo kwoty były w specyfikacji przed pierwszą linią kodu.
- Rozwój modułów. Zbudowaliśmy przyjmowanie zdarzeń i analitykę, crawlera z nocnym harmonogramem i historią, moduł recenzji z niezmiennością na poziomie modelu, katalogi i pulpit.
- Przeprowadziliśmy testy na sobie.Połączyliśmy nasze własne projekty — ostohlo.com działa na platformie jako strona #6 z licznikiem na stats.ostohlo.com — i korzystaliśmy z produktu przez miesiące, zanim zaprosiliśmy kogokolwiek innego.
- Uruchom.Cennik z płatnościami przez Payora, trzy języki, publiczne katalogi, dokumentacja i MCP.
Kolejność nie jest przypadkowa: najpierw naprawiliśmy umowy — schemat kwot, format API, zasada niezmienności recenzji — a dopiero potem zbudowaliśmy implementację wokół nich. To pozwoliło modułom działać niemal równolegle: analityka, crawler i recenzje dzielą rdzeń, ale mają niezależne cykle życia. A zasada "najpierw używamy tego sami" działała jako ciągłe testowanie akceptacyjne: szorstki brzeg, który zauważasz każdego ranka na swoim własnym pulpicie, jest naprawiany szybciej niż jakiekolwiek zgłoszenie.
16Wynik
To, co otrzymaliśmy, to nie "jeszcze jeden licznik", ale platforma, która zastępuje zestaw codziennych narzędzi webmastera — i z której sami korzystamy.
- Strona łączy się w pięć minut: jeden slogan — a pierwszy odwiedzający już jest na ekranie.
- Analiza widzi całą publiczność, a nie dwie trzecie: licznik pierwszej strony nie jest blokowany przez blokery reklam.
- Regresje SEO przestały być ciche: nocne ponowne skanowanie, historia wyników i e-mail rano po spadku.
- Ocena jest godna zaufania: recenzje fizycznie nie mogą być edytowane ani usuwane — tylko publicznie odpowiadane.
- Dane nie są zablokowane: API JSON z kluczami tylko w nagłówku i kwotą w każdej odpowiedzi, CSV i MCP dla asystentów AI.
- Produkt działa w trzech językach i jest sprawdzony w produkcji na stronach naszego własnego ekosystemu.
Ale główny wynik nie tkwi w pojedynczych liczbach — chodzi o zmianę modelu. Obserwowanie stron internetowych kiedyś polegało na zestawie kart, logowaniach i "muszę pamiętać, żeby sprawdzić"; teraz to jedna tabela i skrzynka odbiorcza, do której platforma pisze sama — dokładnie wtedy, gdy jest coś do powiedzenia. Rutyna, której nikt nigdy nie oszacował w godzinach, przestała istnieć jako praca ręczna.
17Wnioski
Astrina jest przykładem zaufania, które jest projektowane, a nie deklarowane. Najcenniejszą rzeczą tutaj nie jest lista modułów, ale trzy decyzje, na których wszystko się opiera: licznik, który ładuje się z domeny klienta i dlatego widzi całą publiczność; recenzje, które nie mogą być usunięte i dlatego coś znaczą; API, w którym klucz fizycznie nie może trafić do logu. Każde z nich zostało stworzone raz, na poziomie architektury — a od tego momentu uczciwość produktu nie zależy od dyscypliny nikogo.
Dla nas był to projekt na styku analityki, skanowania i wielo-tenantowego SaaS — rodzaj pracy, w której jednocześnie potrzebne są myślenie produktowe i dyscyplina inżynieryjna. Jeśli potrzebujesz platformy z panelem, planami cenowymi i API, usługi analitycznej lub produktu obsługującego wielu klientów na wspólnej infrastrukturze — wiemy, jak to zrealizować do uruchomienia.
I jeszcze jedna, bardziej metodologiczna, lekcja. Najlepszym testem produktu jest twoja własna zależność od niego: podłączyliśmy nasze własne strony do Astrina przed innymi, a każdego ranka patrzymy na te same e-maile i te same tabele co nasi użytkownicy. Produkt, na którym zespół polega, nie może być cicho porzucony — i to być może jest najuczciwsza gwarancja jakości, jaka istnieje.



