Fast, privacy-respecting URL shortener running on Bunny Magic Containers.
- ✅ Project structure created
- ✅ Go 1.21.6 installed
- ✅ Go module initialized
- ✅ Database migration ready
- ⏳ Bunny Database (in progress)
- ⏳ Backend implementation (next)
maskthis/
├── cmd/api/ # Main application
├── internal/
│ ├── database/ # Database connection
│ ├── shortener/ # URL shortening logic
│ └── analytics/ # Click tracking
├── web/static/ # Frontend files
├── migrations/ # SQL migrations
├── .env.template # Environment template
└── README.md # This file
- Create Bunny Database at https://bunny.net
- Copy
.env.templateto.env - Fill in database credentials
- Run migration: Apply
migrations/001_initial.sqlto your database - Build the backend (we'll do this together)
- Test locally
- Deploy to Bunny Magic Containers
Simple 2-table design:
- urls - Short codes mapped to long URLs
- clicks - Analytics for each redirect
- Backend: Go 1.21
- Database: Bunny Database (libSQL)
- Frontend: HTML + Tailwind CSS
- Deployment: Bunny Magic Containers
Full documentation in funlab-docs:
- Design:
docs/maskthis-url-shortener-design.md - Quick Start:
docs/maskthis-url-shortener-quickstart.md