https://github.com/arnavrneo/url-shortener
https://github.com/arnavrneo/url-shortener
Last synced: 4 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/arnavrneo/url-shortener
- Owner: arnavrneo
- Created: 2024-01-12T08:31:58.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-04-17T16:36:08.000Z (about 1 year ago)
- Last Synced: 2024-04-17T18:03:23.893Z (about 1 year ago)
- Language: JavaScript
- Size: 10.2 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# url.ly - a url-shortener service
This project aims to implement a decoupled & scalable architecture for url shortener service.
# Showcase
| Login | Signup |
| ------------- | ------------- |
|  |  || Main |
| -------- |
|  |# Architecture
This project uses:
- `Nextjs` as its frontend;
- `Golang` & `Expressjs` as the backend servers configured with Nginx for load-balancing;
- `MongoDB` as non-relational db for authentication
- `Redis` as in-memory key-value db for url keys management- For scalability and portability, both the frontend and backend are containerized using Docker and can be spun-up easily using docker-compose and can be orchestrated using the Kubernetes (the manifest files have been provided).
- Terraform is used for Infrastructure creation and Ansible playbooks and roles are used for configuring EC2 instances created on AWS providing:
- Installation of Docker on those instances
- Running of the url-shortener service through user input