Skip to content

πŸ”— Full-Stack(backend-focused) ExpressJS URL shortener allowing users to create custom short links, view click leaderboards. No authentication required.

License

Notifications You must be signed in to change notification settings

EcjTn/url-short

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

21 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ”— Custom URL Shortener

A simple URL shortener service made in ExpressJS that lets users create their own custom short links (if the name is available), view leaderboards of the most-clicked links, and enjoy a smooth frontend experience.

This project is built with a backend-first mindset,,the frontend was heavily assisted by AI (~80%) while I focused on building backend.


✨ Features

  • πŸ”₯ Custom Short URLs
    • Users can shorten their URLs and choose their own custom alias (if available).
  • πŸ“Š Leaderboard
    • See the top links with the highest number of clicks/views.
  • πŸ›‘οΈ Security
    • Secured with Helmet and best practices to prevent common web vulnerabilities.
  • πŸ› οΈ Validation
    • Robust input validation using Joi.
  • 🚫 No Auth Required
    • Anyone can shorten URLs and view statsβ€”no accounts or sign-in needed.
  • 🌐 Frontend & Backend Separation
    • Backend (Express.js) and frontend are in separate folders and communicate via REST API.

πŸ›  Tech Stack

Backend

Frontend

  • Vanilla JS / HTML / CSS

πŸ“Έ Screenshots

Screenshot 1

Screenshot 2

Screenshot 3

Screenshot 4

Screenshot 5


πŸš€ Getting Started

1️⃣ Backend Setup

cd backend
npm install
node --watch app

Make sure Neon DB is configured properly. Create the necessary tables with the provided SQL schema.

2️⃣ Frontend Setup

cd frontend

# Open with LiveServer/port 5500

πŸ“’ Notes

  • No authentication means anyone can use itβ€”designed for quick, frictionless URL shortening.
  • The frontend is kept minimal since the focus was on backend logic and API design.

πŸ“ƒ License

This project is licensed under the MIT License. See LICENSE for details.

About

πŸ”— Full-Stack(backend-focused) ExpressJS URL shortener allowing users to create custom short links, view click leaderboards. No authentication required.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published