Naredil sem SaaS za monitoring avtomobilskih oglasov pri 18 letih
Živjo.
Pred pol letom sem na r/Slovenia objavil, da sem naredil Telegram bota za avto.net. Od takrat sem zadevo precej nadgradil in mislim, da je zdaj bolj primerna za ta subreddit.
Tehnični stack:
Backend je Python 3 z FastAPI, frontend Next.js 16 App Router, baza PostgreSQL na Supabase (Frankfurt). Vse skupaj teče v Docker Compose na Hetzner VPS z tremi servisoma: bot, api, dashboard. Avtentikacija je prek Clerk, plačila prek Stripe.
Zanimivejši del je avto.net scraping arhitektura. Namesto da bi scrapali za vsakega uporabnika posebej, teče master crawler vsake 90 sekund, ki polni globalno MarketData tabelo. Uporabniki se nato matchajo v memoriji proti tej tabeli, kar pomeni en HTTP request za vse namesto enega na uporabnika.
Obvestila gredo prek Telegrama ali WhatsAppa (neonize za WA Web protokol). Za scraping uporabljam curl_cffi.
Trenutno stanje: sistem je v produkciji, Stripe je v live modu, prvi pravi uporabniki so se registrirali danes.
Največji izziv je bil Stripe integracija, posebej webhook handling za subscription lifecycle in proration pri plan switchih. Drugi izziv je bil identity model kjer je Clerk account master identity, Telegram in WhatsApp pa sta samo delivery kanala.
Koda ni open source zaenkrat, ampak rad slišim feedback ali vprašanja o arhitekturi.