SmartPost
AI-powered social media automation platform with multi-platform posting, content generation, and a full SaaS website.
Overview
SmartPost is a full-stack social media automation platform built in two layers: a FastAPI backend that handles AI content generation (text, image, video via Gemini), multi-platform posting (Telegram, Twitter, Instagram, LinkedIn, and more), and content scheduling; and a Next.js 14 SaaS website with authentication, Stripe/Paddle billing, per-user encrypted platform credentials, and a dashboard for generating and publishing posts. It solves the problem of managing social media presence across channels without juggling separate apps or API keys.
Key Features
- AI content generation with up to 4 variations per prompt, token estimation, and unused content archiving
- Multi-platform posting via Telegram Bot API and Zernio OAuth aggregator (Twitter, Instagram, Facebook, LinkedIn, TikTok, and more)
- Scheduled posting with APScheduler; per-user bot tokens and channel IDs stored with AES-256-GCM encryption
- SaaS subscription system with FREE / STARTER / PRO / ENTERPRISE tiers, Stripe and Paddle billing, and usage enforcement
- Multilingual website (English, Arabic RTL, Portuguese) using next-intl with locale-aware routing
- Dockerized deployment behind Caddy reverse proxy with internal service-to-service API key auth
Technical Decisions
The project separates concerns into a Python/FastAPI backend (content logic, platform plugins, scheduling) and a TypeScript/Next.js frontend (user-facing SaaS, billing, auth), communicating over an internal API. Prisma 7 with a driver adapter pattern was chosen for the Next.js side to support edge-compatible PostgreSQL access. Per-user Telegram bot tokens are decrypted server-side and forwarded to FastAPI at post time rather than stored in the session, keeping credentials out of the browser entirely.