LinkEdge is a full-stack URL shortener app built using React.js and Supabase. It provides users with a fast, clean way to shorten links, track clicks, generate QR codes, and analyze performance—all with secure authentication and a beautiful UI powered by ShadCN and TailwindCSS.
-
🔐 Secure Authentication
User login & signup handled by Supabase Auth (JWT sessions). -
🔗 Link Shortening
Easily shorten long URLs into compact, shareable links. -
📈 Real-Time Click Analytics
Track number of clicks, timestamps, and locations (via third-party APIs). -
📄 User Dashboard
Personalized dashboard displaying all your shortened URLs and performance metrics. -
🧾 QR Code Generation
Instantly generate downloadable QR codes for any short link. -
🛡️ Admin Panel (Role-Based)
Admins can manage users, links, and monitor activity with Supabase role support.
| Layer | Technology |
|---|---|
| Frontend | React.js, TailwindCSS, ShadCN UI |
| Backend (BaaS) | Supabase (Auth, DB, Realtime) |
| Database | PostgreSQL (via Supabase) |
| Auth | Supabase Auth (JWT-based) |
| Extras | QR Code Generator, IP-based Geo API |
git clone https://github.com/yourusername/linkedge.git
cd linkedgenpm install- Create a project on https://supabase.com
- Create the required tables:
urls: for storing original and short linksclicks: for storing click records (optional)
- Enable email/password Auth
- Get your Supabase Project URL and Anon Public Key
Create a .env file in the root folder:
VITE_SUPABASE_URL=your_supabase_url
VITE_SUPABASE_ANON_KEY=your_anon_keynpm run devYou can deploy LinkEdge to:
- Vercel – Connect your repo and add environment variables
- Netlify – Same as above
- Supabase – Already handles your backend
Contributions are welcome! Feel free to fork the repo and submit a pull request.
MIT License. Free for personal and commercial use.
Made with ❤️ by Utkarsh Agarwal
📧 [email protected]
🌐 GitHub