This project is a URL Shortener with analytics and modern tooling.
-
Backend: Golang
-
Database:
- PostgreSQL – persistent storage
- Redis – caching and fast lookups
-
Frontend:
- Next.js – React-based web framework
- Shorten long URLs into unique short codes
- Redirect short codes to original URLs
- Store link data in PostgreSQL
- Cache lookups in Redis for performance
- Basic analytics (click counts, timestamps, referrers, etc.)
- Web UI built with Next.js
- Go 1.22+
- Node.js 18+
- PostgreSQL 14+
- Redis 7+
go run ./cmd/servercd frontend
npm install
npm run dev/cmd/server # Main server entrypoint
/internal # Application code
/api # Handlers
/db # Database models, migrations
/cache # Redis logic
/frontend # Next.js frontend
- User accounts and authentication
- Custom short codes
- Detailed analytics dashboard
- Deployment with Docker
- CI/CD setup