An open API service indexing awesome lists of open source software.

https://github.com/mpankajarun/url-shortner-with-mean-stack

This project is a URL shortening service built using Node.js, Express, MongoDB and Angular (MEAN stack).
https://github.com/mpankajarun/url-shortner-with-mean-stack

angularjs mean-stack mongodb nodejs url-shortener

Last synced: about 2 months ago
JSON representation

This project is a URL shortening service built using Node.js, Express, MongoDB and Angular (MEAN stack).

Awesome Lists containing this project

README

        

# URL Shortner with MEAN Stack

##Summary
This project is a URL shortening service similar to sites like bitly.com using Node.js, Express, MongoDB and Angular (MEAN stack). Express will be used to handle our routing and redirection, while MongoDB takes care of storing and looking up the shortened links.

##Requirement
- Node.js backend with Express and MongoDB
- AngularJS frontend
- Modular Angular components (controllers, services)

##Target
At a high level, the URL shortener works by taking a long URL and applying a hashing algorithm to spit out a shorter version of the URL and stores them in a database for later lookup.

- long URL -> short URL
- short URL -> long URL

Converting a unique integer ID (which is in base10) to it's equivalent in base59. The base59 alphabet we will be using is: `0123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ`. It is just the numbers `0-9`, `a-z`, and `A-Z`, giving us a total of 59 characters, hence the 59 in base59. We are excluding `l`, `O` to avoid confusion when sharing the URL over the phone or copying it manually.

##Application Structure
```
- app
---- data.js
---- rules.js
---- db.js
---- startup.js
- node_modules
- public
---- css
---- js
-------- shared
-------- app.js
---- fonts
- views
---- index.html
- package.json
- server.js
```

##Usage
Please go to [this site](#)