Skip to content

mohdjami/url-manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

4f80694 Β· Feb 10, 2025
Feb 7, 2024
Sep 8, 2024
Feb 10, 2024
Jan 16, 2025
Sep 8, 2024
Feb 10, 2025
Feb 7, 2024
Feb 7, 2024
Sep 8, 2024
Jan 12, 2025
Feb 7, 2024
Sep 8, 2024
Sep 12, 2024
Feb 7, 2024
Jan 5, 2025
Jan 26, 2025
Feb 7, 2024
Feb 7, 2024
Jul 6, 2024

Repository files navigation

URL Manager

Deploy with Vercel License: MIT Made with Next.js Powered by Supabase

A powerful URL management system built with modern technologies, offering advanced features beyond traditional URL shortening services. This project combines robust architecture with high performance to deliver a seamless URL management experience.

✨ Features

Core Functionality

  • URL Shortening: Transform long URLs into concise, shareable links
  • Smart Redirection: Lightning-fast redirection to original URLs
  • User Management: Secure authentication and personalized URL management
  • Analytics Dashboard: Track and analyze URL performance metrics
  • Enterprise-Grade Security: Industry-standard security practices

Technical Highlights

  • High Performance
    • Redis caching for frequently accessed URLs
    • Kafka message queue for asynchronous operations
    • Optimized database queries with Prisma
  • Robust Architecture
    • Server-side rendering with Next.js
    • Real-time analytics processing
    • Rate limiting and request throttling
  • Modern Stack
    • Next.js for frontend and API routes
    • Prisma ORM for database operations
    • Supabase for backend infrastructure
    • NextAuth for authentication
    • Tailwind CSS for styling

πŸš€ Getting Started

Quick Demo

Try out the application instantly using these credentials:

Email: jamikhan8439@gmail.com
Password: 12341234

Installation

  1. Clone the repository
git clone https://github.com/mohdjami/url-manager.git
cd url-manager
  1. Install dependencies
npm install
  1. Set up environment variables
cp .env.example .env.local
  1. Start the development server
npm run dev

πŸ›  Architecture

Loading
graph TD
    A[Client] --> B[Next.js Frontend]
    B --> C[API Routes]
    C --> D[Redis Cache]
    C --> E[Prisma ORM]
    E --> F[Supabase Database]
    C --> G[Kafka Queue]
    G --> H[Email Service]

πŸ“ˆ Performance

  • Response Time: <100ms for cached URLs
  • Availability: 99.9% uptime
  • Scalability: Handles millions of requests/day

πŸ”’ Security Features

  • JWT-based authentication
  • Rate limiting
  • SQL injection protection
  • XSS prevention
  • CSRF protection
  • Input sanitization

πŸ“Š Analytics

Track important metrics for your URLs:

  • Click-through rates
  • Geographic distribution
  • Device statistics
  • Time-based analytics
  • Referrer tracking

πŸ”„ API Documentation

Base URL

https://mjkm.vercel.app/api

Endpoints

Method Endpoint Description
POST /api/v2/urls/create-url Create short URL
GET up/:slug Redirect to original URL
GET /stats/:code Get URL statistics
DELETE /url/:id Delete URL

πŸ›£ Roadmap

  • Custom domain support
  • Advanced analytics dashboard
  • API rate limiting dashboard
  • Team collaboration features
  • Bulk URL management
  • Enhanced security features

🀝 Contributing

We welcome contributions! Please see our Contributing Guidelines for details.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

πŸ™ Acknowledgments

πŸ“§ Contact

Jami Khan - @mohdjami786

Project Link: https://github.com/mohdjami/url-manager


Made with ❀️ by Mohd Jami

Releases

No releases published

Packages

No packages published