Every technology choice prioritizes:
- Open source — full control and transparency
- Edge-first — fast, global by default
| Component | Technology | Purpose |
|---|
| Batch scheduler | GitHub Actions (cron) | Runs scraping every 30-60 min |
| RSS scraper | Python + Feedparser + BeautifulSoup | Lightweight feed parsing |
| Browser scraper | Python + Playwright | JS-rendered page scraping |
| On-demand scraper | Cloudflare Browser Run API | Real-time URL scraping |
| AI extraction | Groq API (Llama 3) | Structured data from raw HTML |
| Component | Technology | Purpose |
|---|
| API server | Cloudflare Workers (TypeScript) | All server-side logic |
| Framework | Hono (TypeScript) | Lightweight, edge-optimized |
| Auth | Cloudflare Turnstile + JWT | Bot protection + user sessions |
| Component | Technology | Purpose |
|---|
| LLM inference | Groq API | Article processing, fact-checking |
| Models | Llama 3, Mixtral (via Groq) | Open-source LLMs |
| Image generation | Playwright (HTML→screenshot) | Poster creation |
| Component | Technology | Purpose |
|---|
| Mobile app | React Native + Expo | iOS & Android |
| Web app | React Native Web (shared code) | PWA for desktop |
| State management | React Context + Zustand | Lightweight state |
| Component | Technology | Purpose |
|---|
| API hosting | Cloudflare Workers | Edge-deployed |
| Static site | Cloudflare Pages | Documentation + web app |
| CI/CD | GitHub Actions | Automated builds & deploys |