Studiu de caz · 2026
Viaqui: 113.093 de atracții din Europa, pornite de la un site românesc, în 11 zile.
Un site în engleză pentru călători: ce merită văzut în fiecare oraș european, pe hartă, în trasee și într-un plan de călătorie. A pornit ca o copie a bilete.online, generalizată pentru mai multe țări, monede și limbi.
- Rol
- Fondator. Produs, design, cod, date
- Perioadă
- 6 - 16 octombrie 2026
- Stare
- Live pe viaqui.com din 8 octombrie
- Construit pe
- ePAS, pornind din codul bilete.online
- Problema
- Voiam să văd cât de repede devine bilete.online un produs pentru toată Europa.
- Ce am construit
- 113.093 de atracții din 51 de țări, din date deschise, cu 17 monede, hărți, trasee și un planificator.
- Rezultatul
- Public după trei zile, terminat în 11, cu 80 de commit-uri. Deocamdată câștigă din recomandările către parteneri.
- 113.093 atracții în catalog
- 51 de țări europene
- 17 monede de afișare
- 11 zile, de la primul la ultimul commit
Atracțiile sunt numărate în fișierele de date din repo; restul de pe site și din git, pe 5 noiembrie 2026.
01 · Ideea
Același produs, dar pentru toată Europa.
bilete.online avea deja harta, traseele, planificatorul și panoul pentru operatori, dar doar pentru România și doar în română. Am vrut să văd cât de repede poate deveni același cod un produs internațional.
Răspunsul: 80 de commit-uri în 11 zile. Pe 8 octombrie site-ul era public și indexabil.
02 · Cele 11 zile
Cum a crescut, zi cu zi.
- 6 oct.
Copia și scheletul în engleză
Am pornit de la codul bilete.online: interfață în engleză, 12 categorii, locurile Europei din GeoNames, pagini de țară și de oraș, prețuri în euro.
- 7 oct.
Toate atracțiile
Atracțiile din Wikidata pentru 50 de țări, cu descriere, date, insignă UNESCO și vecinii cei mai apropiați. Hărți pe țări, 16 trasee, planificator pe țară, experiențe de la parteneri, zboruri, sitemap-uri.
- 8 oct.
Monede, limbi, lansare
Vizitatorul își alege moneda. Toate textele trec printr-un strat de traducere, inclusiv panoul pentru operatori. Am automatizat trimiterea paginilor către motoarele de căutare și am deschis site-ul.
- 9-16 oct.
Viteză și indexare
Runde de PageSpeed, date de modificare reale în sitemap, cod 503 în loc de 404 când platforma din spate e ocupată, descrieri proprii pentru fiecare pagină.
03 · Datele
Doar date deschise, cu sursa scrisă pe pagină.
Nu am copiat poze și nu am cumpărat baze de date. Catalogul e construit offline din surse cu licență deschisă, apoi încărcat în platformă de un seeder care nu suprascrie niciodată o copertă aleasă manual.
- 01
GeoNames
- 51 de țări, 585 de regiuni
- 9.038 de orașe peste 10.000 de locuitori
- Licență CC BY 4.0
- 02
Wikidata
- 113.093 de atracții în 50 de fișiere
- Descrieri, coordonate, UNESCO
- Licență CC0
- 03
Wikimedia Commons
- Poze afișate de la sursă, la 960 px
- Autorul și licența, păstrate
- Pagină de credite foto
- 04
ePAS și site-ul
- Seeder idempotent în platformă
- 161 de fișiere statice pentru hărți și planificator
- Pagini servite din cache
Germania are cele mai multe atracții (16.834), urmată de Italia (15.471), Franța (12.428), Spania (12.302) și Regatul Unit (9.736).
04 · Componente
Ce am adăugat peste bilete.online.
Monede
Prețul apare în moneda țării, iar filtrele compară în euro.
- 17 monede la alegerea vizitatorului
- Cursuri zilnice, cu tabel de rezervă
- Cache de pagină separat pentru fiecare monedă
- Curs BCE în platformă pentru prețurile operatorilor
Limbi
Catalogul e deocamdată în engleză, dar codul e pregătit pentru oricare limbă.
- Fiecare text trece prin funcția de traducere
- Același strat și în JavaScript
- Prefixul de limbă se adaugă la linkuri automat
- Câmp de limbă pe fiecare marketplace din ePAS
Parteneri
Până apar operatorii, banii vin din recomandări către parteneri de călătorie.
- Tururi audio, zboruri, transferuri, eSIM, mașini
- Un singur punct de ieșire, cu listă de domenii permise
- Scripturile partenerilor, doar după acordul de marketing
- Atribuire pe tip de pagină și pe oraș
Indexare
Aproape 140.000 de pagini trebuie găsite de motoarele de căutare.
- Sitemap-uri împărțite pe țări, sub limita de 50.000
- Data reală a ultimei modificări, luată din git
- IndexNow și Search Console, zilnic, automat
- Categoriile goale nu se indexează
05 · Metrici
Ce am numărat.
Măsurat în repo și în sitemap-urile live, pe 5 noiembrie 2026. Paginile de atracție sunt informative: biletele se cumpără deocamdată prin parteneri.
- 113.093atracții, suma celor 50 de fișiere pe țărimăsurat
- 129.840adrese în sitemap-urile de atracții și liste pe orașemăsurat
- 9.087pagini de locuri: țări, regiuni, orașemăsurat
- 53de sitemap-uri, cel mai mare cu circa 17.500 de adresemăsurat
- 80de commit-uri în 11 zilegit
- 0,24 stimpul de răspuns al paginii principale, o singură măsurătoaremăsurat
Cât cod
- 224
- fișiere PHP
- 68k
- linii de PHP
- 161
- fișiere de date pentru hărți
- 23 MB
- date despre Europa
- 17
- trasee
- 12
- categorii
06 · Ce am învățat
Ce iau cu mine.
Generalizează a doua oară, nu prima
bilete.online a fost scris pentru o singură țară. Abia când am avut nevoie de a doua am știut ce trebuie scos în configurare: moneda, limba, sursa de date.
Data falsă din sitemap strică totul
Dacă toate paginile spun că s-au schimbat azi, motorul de căutare nu mai crede niciuna. Data vine acum din istoricul git al fiecărui fișier.
Când platforma din spate nu răspunde, spune-o corect
Un 404 scoate pagina din index. Un 503 cere doar să revină mai târziu.
O decizie de produs se poate schimba de două ori în trei zile
Euro peste tot, apoi moneda țării, apoi la alegerea vizitatorului. Fiecare variantă a fost ieftin de testat pentru că prețul trece printr-un singur loc.
07 · Unde e acum
Un catalog european, deocamdată în engleză.
Toate textele trec deja prin stratul de traducere, dar singura limbă publicată e engleza. Coșul, plata și panoul de operator sunt pregătite, însă pe 5 noiembrie 2026 sitemap-ul nu avea încă nicio experiență de vânzare directă. Până atunci, Viaqui câștigă din recomandările către parteneri.
Ai un proiect asemănător?
Construiesc produse web de la idee la lansare, ca dezvoltator sau ca cofondator tehnic. Scrie-mi și vedem dacă se potrivește.