Skip to content

This is a full-stack URL shortening service that allows users to shorten long URLs, create custom aliases, and track analytics (clicks, unique visitors, and geographic data). It’s designed for high performance with a static frontend and a scalable backend, deployed entirely on AWS.

Notifications You must be signed in to change notification settings

djnovin/urlshortener

Repository files navigation

URL Shortening Service Full-Stack

Description

This is a full-stack URL shortening service that allows users to shorten long URLs, create custom aliases, and track analytics (clicks, unique visitors, and geographic data). It’s designed for high performance with a static frontend and a scalable backend, deployed entirely on AWS.

Stack

Tech Stack

Frontend:

  • Astro – Static site generator for modern web apps.
  • React.js – Library for building interactive UIs.
  • Tailwind CSS – Utility-first CSS framework for rapid UI development.

Backend:

  • Node.js – Runtime environment for executing JavaScript on the server.
  • Nest.js – A progressive Node.js framework for building scalable server-side applications.
  • GraphQL – API query language for requesting only the data needed.

Database:

  • PostgreSQL (AWS RDS) – Relational database for storing URLs and click data.

Cloud Infrastructure: AWS (S3, CloudFront, RDS, Lambda, ECR) – Cloud services for hosting and deployment.

Features

  • 🌐 URL Shortening – Generate short URLs with custom aliases.
  • 🚀 Cloud Native – Deployed entirely on AWS for high scalability.

Getting Started

Prerequisites

  • Node Version Manager (NVM) Install NVM from here

  • PNPM (Node Package Manager): Install PNPM globally using NPM:

npm install -g pnpm

Setup Instructions

  1. Clone the repository:
git clone <repo-url>
cd <repo-name>
  1. Install Node.js using NVM:
nvm install
nvm use
  1. Enable Corepack and install dependencies:
corepack enable
corepack install
pnpm install
  1. Start the development server:
pnpm run dev

Contributing

We welcome contributions! Feel free to open issues, suggest improvements, or submit pull requests.

Stay in touch

About

This is a full-stack URL shortening service that allows users to shorten long URLs, create custom aliases, and track analytics (clicks, unique visitors, and geographic data). It’s designed for high performance with a static frontend and a scalable backend, deployed entirely on AWS.

Resources

Stars

Watchers

Forks