Skip to content

SnapLink is a full-stack URL shortener built with React.js, Spring Boot, and MySQL. It features secure JWT authentication, real-time analytics with Chart.js, QR code generation, and a mobile-first responsive UI. Deployed using Netlify, Render, and Docker for scalable cloud hosting.

Notifications You must be signed in to change notification settings

Khateebxtreme/SnapLink

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 

Repository files navigation

SnapLink

SnapLink is a powerful URL shortener app designed for both personal and professional use. It not only shortens links but also provides detailed usage analytics. Built with security in mind, SnapLink ensures that all shortened links are protected, offering features like password protection and expiration dates to control access.

Table of Contents

Features

  • Developed SnapLink, a full-stack URL shortener web app using React.js, Spring Boot, and MySQL, with a focus on scalability and mobile-first responsive design.
  • Implemented secure JWT-based authentication with Spring Security, enabling safe user registration, login, and link management.
  • Integrated real-time link analytics using Chart.js, offering users insights into total clicks and link performance via interactive dashboards.
  • Deployed the application using Netlify (frontend), Render (backend), Neon database, and Docker for backend containerization, ensuring efficient cloud hosting and CI/CD workflows.
  • Built a QR code generation feature on the React frontend, allowing users to easily create, preview, and share QR codes for their Long URLs.
  • Enhanced user experience with responsive UI components built using Material-UI and Tailwind CSS, ensuring mobile and desktop compatibility.

TechStack

Client: React.js, Tailwind-CSS, Axios, React-Hook-Forms, Material-UI, Chart.js, Vite.js

Server: SpringBoot, Docker, JWT, MySQL, Spring Security, Spring Data JPA

Hosting Services: Netlify (Front-End), Render (Back-End), Neon's Cloud Database (SQL Database)

Screens

1) Homepage

localhost_5173_(Nest Hub Max)

 

2) QRify Page

Qrify

 

3) Sign-Up Page

Register_page

 

4) Login Page

Sign_in

 

5) Dashboard Page - Total Clicks Analytics / Short URL Creation button

Dashboard_graph

 

6) Dashboard Page - List of Created URLs (by a user)

List_of_Created_Urls

 

7) Dashboard Page - Click Analytics Per URL

per_url

 

Authors

Roadmap

  1. 🗑️ Delete Functionality for User-Created URLs. -> We have implemented the ability for users to delete their own shortened URLs. This feature :

     - Removes the selected URL from the user’s link list.
     - Deletes all associated data from the database, including analytics and redirection history.
     - Ensures full cleanup of records to maintain data integrity and privacy.
    

    ✅ This feature is now officially released in the codebase and will be available on the web application soon.

 

  1. 🎨 Visual Theme Update -> The platform has received a major UI enhancement with a new visual theme that:

     - Improves color contrast and readability for better accessibility.
     - Refines visual hierarchy to make navigation and usage more intuitive.
     - Aligns the interface with modern design standards for a cleaner, more professional look.
    

    ✅ The updated theme is now live on the website.

 

  1. 📱 Temporary QR Code Generation for Guest Users -> Guest users can now generate temporary QR codes for any URL, enabling quick and convenient sharing or access without needing to log in. This feature is designed to enhance usability for casual visitors and one-time users by:

     - Allowing QR generation directly from the QRify Page.
     - Creating non-persistent codes that are not stored in the user database.
     - Ensuring fast, frictionless access for immediate use cases.
    

    ✅ This feature is now live as part of the V1.0.2 update.

 

  1. 🚀 Chrome Extension -> We are developing a lightweight Google Chrome extension to integrate the core features of the URL shortener directly into the browser. Planned capabilities include:

     - A popup interface for quickly shortening the current tab's URL.
     - One-click copy and open options for shortened links.
    

    🔗 Temporary URL Shortening for Guests Users -> We are introducing a temporary URL shortening service tailored for guest users who prefer not to sign up. Key aspects of this feature include:

     - Instantly shorten URLs without the need for an account or login.
     - Shortened links will remain active for a limited time, ideal for quick, one-time sharing.
    

    🔒 Malicious Link Detection -> To enhance safety, we will integrate link scanning using threat detection services such as Google Safe Browsing or VirusTotal:

     - Automatic scanning of URLs to detect phishing, malware, or other malicious content.
     - Warnings or alerts when suspicious links are detected.
     - Optionally block or flag high-risk links before shortening.
    

    These features are currently under development and will be rolled out in stages. We welcome feedback and contributions from the community as we continue to build a safer and more convenient link management tool.

About

SnapLink is a full-stack URL shortener built with React.js, Spring Boot, and MySQL. It features secure JWT authentication, real-time analytics with Chart.js, QR code generation, and a mobile-first responsive UI. Deployed using Netlify, Render, and Docker for scalable cloud hosting.

Topics

Resources

Stars

Watchers

Forks

Languages