TechSelect
Automated multi-platform deal aggregation and syndication engine — live on AWS EC2
Project Overview
TechSelect collects product offers, resolves and deduplicates product ASINs, and distributes deal content automatically across Telegram, X (Twitter), RSS 2.0, and the web — all running live on AWS EC2 in Docker.
The platform combines a Python automation engine with a Next.js 15 web platform, Upstash Redis caching, SQLite deduplication, and a three-tier resilient failover publishing system. It has processed more than 1,200 product ASINs with 99.9% uptime.
System Architecture
The engine uses a three-tier failover: Session GraphQL Engine → Official Tweepy v2 API → Local CSV Queue Sweeper, ensuring zero dropped broadcasts during rate limits or network issues.
Architecture and Features
- Three-tier publishing failover with Session GraphQL Engine → Official Tweepy v2 API → Local CSV Queue Sweeper, ensuring zero dropped broadcasts.
- Zero-cost headless GraphQL posting using session token authentication, saving $2,400/year in Twitter API subscription costs.
- Regex ASIN resolution and link sanitization optimized to sub-2ms latency.
- Automated 10-minute RSS 2.0 polling with a 7-day TTL SQLite deduplication store.
- Next.js 15 web platform with Upstash Redis caching, dynamic
/feed.xmlRSS feed, and/api/dealswebhook endpoint. - Deployed on AWS EC2 via Docker with 99.9% uptime and 1,200+ ASINs processed.
Technology Stack
Python, Telethon (MTProto), Next.js 15, TypeScript, Upstash Redis, SQLite, Docker, AWS EC2, GraphQL, Webhooks, and Linux.
Live Resources
- TechSelect live website and Sales Hub
- Dynamic RSS 2.0 feed
- Telegram channel @TechSelectDeals
- X profile @techselect_blog
- Automation Engine GitHub
- Web & API GitHub
Engineering Challenges & Solutions
Building TechSelect required solving several non-trivial distributed systems problems in a zero-budget, solo-developer environment:
Zero-Cost X (Twitter) Posting
The official Twitter v2 API costs $100–$500/month for write access. TechSelect bypasses this entirely using a headless GraphQL posting engine that authenticates with session tokens (auth_token and ct0), saving $2,400/year while enforcing the strict 280-character word-boundary limit for every deal post.
Resilient Three-Tier Failover
To ensure zero missed broadcasts during rate limits or network failures, the engine implements a cascading failover system. If the primary session GraphQL engine hits a rate limit, it automatically falls back to the official Tweepy v2 API. If that also fails, deals are written to a local CSV queue that a sweeper process clears on the next cycle. This design guarantees every deal is eventually published.
Sub-2ms ASIN Resolution
Amazon product links come in many formats — short links, full URLs, affiliate tags, and redirects. TechSelect uses a compiled regex pipeline to resolve and sanitize any Amazon product identifier to a canonical ASIN in under 2 milliseconds, enabling high-throughput processing without blocking the Telegram listener event loop.
7-Day TTL Deduplication
A SQLite store keyed by ASIN and timestamp prevents the same product from being posted twice within a 7-day window. The database is lightweight, serverless, and runs entirely on the EC2 instance without external dependencies — keeping infrastructure costs at zero.
Key Metrics
- 1,200+ product ASINs processed and deduplicated since launch (June 2026)
- 99.9% uptime on AWS EC2 t2.micro Docker container
- $2,400/year saved by avoiding official Twitter API subscription
- Sub-2ms average ASIN regex parse and sanitization latency
- 10-minute RSS polling cycle — deals published within one polling window of going live
- Zero dropped broadcasts since three-tier failover implemented
What I Learned
TechSelect taught me how to architect resilient, production-grade automation systems with no team and near-zero budget. The project required deep knowledge of MTProto (Telethon), HTTP session management, GraphQL mutations, RSS 2.0 specification, Docker deployment on Linux, and Next.js API routes. It is the project I am most proud of because it solves a real problem, runs continuously without manual intervention, and demonstrates end-to-end full-stack and DevOps skills in a single codebase.