A technical journey through architecture, decisions, and trade-offs in developing a modern, high-performance URL shortener.
Next.js for UI + ElysiaJS for API = End-to-End Type-Safety
App Router: Server Components for SEO and performance
Middleware: Middleware for link redirection
Shadcn/UI: Accessible and consistent design system
Type-Safe: TypeBox for runtime validation with type inference
Fast: Bun Native APIs (SQL, Redis, Password)
OpenAPI: Automatic documentation at /api/docs
100% containerized, self-hosted and production-ready
Monthly event partitioning
Type-safe queries with Drizzle
Versioned migrations
Hot-path caching for redirects
Rate limiting (Sliding Window)
Negative cache for invalid codes
Distributed traces
Performance metrics (SLOs)
Structured logs
Architectural choices, motivations and alternatives considered
Metrics and SLOs for engineering demonstration
Redis Cache + Edge Middleware
Bun Runtime + Native APIs
Health Checks + Circuit Breaker
Gustavo Sotero - Full-Stack Developer
This project was developed as a demonstration of technical skills in software architecture, performance engineering and development best practices. It is not a commercial product, but rather a case study and portfolio.
Dive into the technical details through the complete API documentation and source code on GitHub.