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.
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.
- 🌐 URL Shortening – Generate short URLs with custom aliases.
- 🚀 Cloud Native – Deployed entirely on AWS for high scalability.
-
Node Version Manager (NVM) Install NVM from here
-
PNPM (Node Package Manager): Install PNPM globally using NPM:
npm install -g pnpm
- Clone the repository:
git clone <repo-url>
cd <repo-name>
- Install Node.js using NVM:
nvm install
nvm use
- Enable Corepack and install dependencies:
corepack enable
corepack install
pnpm install
- Start the development server:
pnpm run dev
We welcome contributions! Feel free to open issues, suggest improvements, or submit pull requests.
- Author - Novin Noori
- Website - novinnoori.com