Žemiau trys skyriai. Projekto istorija pasakoja, kaip platforma atsirado ir augo, su kiekvieno mėnesio skaičiais. Perkėlimas — apie tai, kaip pasiėmiau parduotuvės duomenis iš ankstesnio rangovo, kuris nenorėjo atiduoti projekto. Techninis priedas skirtas inžinieriams: iš ko platforma sudaryta ir kodėl ji sukurta būtent taip.
Last-mile Delivery Platform
Pristatymo į namus paslauga, kurią sukūriau nuo nulio ir prižiūriu vienas: pirmasis užsakymas praėjus trims savaitėms po pirmojo commit'o, 1 035 užsakymai ir 124,9 tūkst. $ apyvartos 2026 m. rugsėjį.
Parduotuvės pavadinimas, domenas, miestas ir asortimentas paslėpti. Skaičiai paimti 2026 m. spalio 19 d. iš užsakymų duomenų bazės, Google Search Console ir git istorijos.
Kas viduje
- 2026 m. sausio 25 d. platforma priėmė pirmąjį užsakymą, praėjus trims savaitėms po pirmojo commit'o.
- 5 834 pristatyti užsakymai ir 660 tūkst. $ apyvartos nuo 2026 m. sausio 25 d. iki spalio 18 d.
- Ankstesnis rangovas projekto neatidavė: parduotuvės duomenys paimti per jo administravimo skydelio API, paskutinis užsakymas senojoje sistemoje — sausio 24 d., pirmasis naujojoje — 25 d.
- 2026 m. rugsėjis: 1 035 užsakymai, 124,9 tūkst. $, 506 pirkėjai; vasarį buvo 148 užsakymai ir 17,2 tūkst. $.
- 79 % rugsėjo užsakymų buvo pakartotiniai, 160 pirkėjų užsisakė 10 ir daugiau kartų.
- Paspaudimai iš Google: 77 sausį, 1 985 rugsėjį; užklausų be parduotuvės pavadinimo vidutinė pozicija pakilo nuo 49 iki 11.
- Trys sandėliai viename tinkle: užsakymas pats patenka į sandėlį, kuris aptarnauja pirkėjo adresą.
- Devynios paslaugos produkcijoje: API, svetainė, administravimo skydelis, trys mini programėlės ir trys botai Telegram.
- 1 689 commit'ai, 110 duomenų bazės migracijų, 4 037 automatiniai API testai, 513 automatinių diegimų.
- Spalio 12 d. sugedo pagrindinis serveris: po 52 minučių parduotuvė veikė rezerviniame serveryje, duomenys neprarasti.
Stekas
- TypeScript, Turborepo
- NestJS 10
- PostgreSQL 16, TypeORM
- Redis 7: podėlis ir pub/sub
- Next.js 14
- React 18 / 19, Vite
- Tailwind CSS
- Socket.IO
- Telegram Mini Apps
- Python, aiogram 3
- Docker Compose
- GitHub Actions, GitHub Container Registry
- nginx, Let's Encrypt
- PostgreSQL srautinė replikacija
- Jest, Vitest, pytest
- Twilio
- WhatsApp, SMS per Android šliuzą
- Pushover
- Google Search Console
- Claude Code, Codex
Skaityti išsamiau
- 01 · ~8 min
Verslo logika
Kaip sukūriau ir prižiūriu pristatymo platformą: duomenų perkėlimas, tūkstantis užsakymų per mėnesį, augimas Google, trys sandėliai ir avarija.
Skaityti →
- 02 · ~4 min
Perkėlimas nuo svetimos platformos
Ankstesnis rangovas neatidavė projekto. Kaip pasiėmiau parduotuvės duomenis per jos skydelį ir perkėliau pardavimus be nė vienos prastovos dienos.
Skaityti →
- 03 · ~7 min
Tech stekas
Inžinieriams: devynios pristatymo platformos paslaugos, diegimas be rankinių žingsnių, karštasis rezervas ir mano sprendimai su kiekvieno kaina.
Skaityti →