
Snippy (URL Shortener)
Personal full-stack shortener — auth, custom slugs, geo/device targeting, password links, OG metadata, QR codes, and click analytics.
Next.jsReactTypeScriptTailwind CSSShadcn UIPrismaMongoDBbetter-authTanstack QueryZodDocker
Personal side project (Snippy): shorten links with optional expiry, password gate, country/OS redirects, social preview metadata, QR codes, and an owner analytics dashboard.
Highlights
- better-auth email/password + Prisma/MongoDB; session-gated dashboard
- Geo + device targeting (
geoip-lite,ua-parser-js) with geo-first fallback to default URL - bcrypt-protected and expiring links; per-key Open Graph/Twitter metadata
- Click model (IP, UA, country, device, referrer) + dashboard aggregates and 7-day chart
- nanoid custom slugs, infinite-scroll link list (TanStack Query), Docker deploy path
Honest scope
Landing-page stats are mock marketing copy — not real usage. Settings / forgot-password incomplete. Prefer demo of targeting + analytics over scale claims.