Karol Leszczyński Build & Develop EN

Aplikacje webowe aktualizacja 15 sierpnia 2026

Jak zbudowałem Matury Online: aplikacja z płatnościami i oceną wypracowań przez AI, którą prowadzę od 2025 roku

Co się dzieje pod maską platformy do nauki do matury: co jest stroną statyczną, co aplikacją, dlaczego stoi na jednym serwerze, jak AI ocenia wypracowanie według kryteriów CKE i skąd bierze się ruch. Z liczbami z Search Console.

Karol Leszczyński · Toruń

Okładka wpisu: biurko ucznia z notatkami i laptopem — jak zbudowałem Matury Online

Przez rok stawiałem strony statyczne: poradniki, serwisy firmowe, landingi. Taka strona jest szybka i prawie darmowa w utrzymaniu, ale kończy się w chwili, gdy użytkownik ma się zalogować, zapisać postęp albo wysłać wypracowanie do oceny. Matury Online to pierwszy projekt, w którym przeszedłem tę granicę: platforma do nauki do matury z polskiego, z bazą zadań CKE, interaktywnymi arkuszami, oceną wypracowań przez AI według oficjalnych kryteriów i symulacją egzaminu. Ma płatności, konta, kolejki zadań i użytkowników, którzy płacą.

Ten wpis opisuje, jak to jest zbudowane i co z tego wynika dla firmy, która chce mieć własną aplikację. Liczby są aktualne na sierpień 2026.

Co jest stroną, a co aplikacją

Serwis dzieli się na dwie warstwy pracujące na wspólnym zapleczu.

WarstwaCo zawieraJak jest zbudowana
Baza wiedzystrony przedmiotów i lektur, baza zadań, archiwum arkuszy CKE 2002–2026, blog, FAQstatyczny HTML, gotowy w chwili publikacji, serwowany z sieci CloudFront
Aplikacjapanel ucznia, postęp, rozwiązywanie zadań, wypracowania z oceną AI, symulacja egzaminu, płatnościserwer Node.js z bazą Postgres i kolejką zadań

Baza wiedzy przyciąga ruch z Google, część odwiedzających zakłada konto, a konto otwiera funkcje aplikacji. Każda warstwa robi to, do czego się nadaje: strony wiedzy ładują się w ułamku sekundy i mają wynik 95–100 w pomiarze szybkości Google, a aplikacja przetwarza dane tam, gdzie musi.

Jeden serwer zamiast chmury bezserwerowej

Kuszący był model, w którym płaci się za każde wywołanie i nie ma serwera do pilnowania. Wybrałem pojedynczy serwer z bazą danych i menedżerem procesów, z trzech powodów.

Ocena wypracowania przez model AI trwa 15–40 sekund, a wynik płynie do ucznia na bieżąco. W modelu bezserwerowym takie długie, strumieniowe operacje są kłopotliwe i drogie. Na własnym serwerze są zwykłym połączeniem.

Koszt przy obecnym ruchu (kilkaset ocen dziennie plus ruch na bazie wiedzy) to około 30 dolarów za serwer i dysk, 15 dolarów za sieć dostarczania treści i domeny, plus faktyczne zużycie AI. Łącznie poniżej 100 dolarów miesięcznie, z jednym rachunkiem, który daje się przewidzieć.

Wdrożenie nowej wersji to jedno polecenie. Kod trafia na serwer, buduje się obok działającej wersji i podmienia w kilka sekund; użytkownik widzi co najwyżej krótką planszę serwisową. Kopie bazy robią się codziennie, sonda sprawdza dostępność co minutę, alarmy przychodzą mailem.

Ta prostota ma swoją cenę: gdy serwer padnie, pada cały serwis. Przy obecnej skali czas przywrócenia mierzy się w minutach i to ryzyko akceptuję świadomie; gdy ruch urośnie, dołożę drugą maszynę.

Ocena wypracowania przez AI: trzy podejścia, jedno zostało

Uczeń pisze wypracowanie, klika „oceń” i po kilkudziesięciu sekundach dostaje punkty według czterech kryteriów CKE (treść, kompozycja, język i styl, ortografia i interpunkcja) z komentarzem, co poprawić. Doprowadzenie tego do powtarzalnych wyników zajęło kilka miesięcy.

Pierwsza wersja wysyłała modelowi cały tekst i pełne kryteria w jednym zapytaniu. Wyniki były losowe: raz 32 punkty na 35 za przeciętną pracę, innym razem 18 za dobrą. Druga wersja dzieliła zapytanie na kryteria, ale nadal oceniała je w jednym ciągu, więc ocena jednego kryterium wpływała na następne. Została trzecia: każde kryterium to osobne zapytanie z osobną instrukcją, po dwa przykłady prac z prawdziwą oceną CKE na kryterium i wyłączona losowość modelu. Wyniki składa dopiero mój serwer. W testach na pięćdziesięciu wypracowaniach z ocenami CKE rozrzut spadł do poziomu, który daje się pokazać uczniowi.

Wniosek z tych miesięcy jest prosty i przenosi się na każde wdrożenie AI w firmie: jedno zapytanie do modelu nie da powtarzalnej oceny; daje ją dopiero pięć małych zapytań ułożonych w proces. Do tego dochodzi rachunek liczony na każde wywołanie i limit, żeby użytkownik z pięćdziesięcioma wypracowaniami nie wygenerował rachunku, którego nikt nie planował.

Skąd bierze się ruch

Przez pierwsze miesiące domena matury-online.pl była w Google prawie niewidoczna: frazy typu „matura polski” należą do serwisów z treściami sprzed piętnastu lat i ogromną liczbą linków. Ruch przyniosła siostrzana domena maturapolski.pl z tą samą bazą wiedzy, wcześniej zaindeksowana i podlinkowana z moich serwisów o tematyce edukacyjnej.

DomenaKliknięcia z Google, 90 dniWyświetleniaŚrednia pozycja
maturapolski.pl6 881148 608ok. 8
matury-online.pl71935 643rośnie od wiosny

Dane z Search Console, 17.05–13.08.2026. Statyczna baza wiedzy jako brama do aplikacji zadziałała lepiej niż pozycjonowanie samej aplikacji, a linki z własnych serwisów przyniosły więcej ruchu niż płatna reklama.

Jak to przełożyć na Twój projekt

Aplikacja webowa dla firmy ma zwykle tę samą budowę: część publiczna, którą znajduje Google, i część za logowaniem, gdzie klienci pracują i płacą. Matury Online pokazuje, że da się to postawić i utrzymać w budżecie poniżej stu dolarów miesięcznie, z płatnościami, kolejką długich operacji, kopiami zapasowymi i monitoringiem od pierwszego dnia. Dokładnie tak buduję aplikacje webowe na zamówienie: od 15 000 zł netto, z Twoim dostępem do kodu i serwera. Jeśli masz pomysł na produkt, w którym użytkownicy zakładają konta, opisz go w kilku zdaniach; odpowiem, co dostaniesz w pierwszej wersji i ile to zajmie.

Więcej z bloga

Inne rzeczy, które zbudowałem.

Kontakt

Masz produkt, który powinien trafić dalej niż tylko na własną stronę?

Robię to od początku do końca: aplikacja, infrastruktura, wydanie w sklepach i katalogach, utrzymanie. Odpisuję zwykle tego samego dnia — najchętniej na konkret, choćby to był jeden akapit i pytanie „da się to zrobić taniej?”.