---
# System prepended metadata

title: Bitly

---

Bitly
===
## Build your own url shortening service
![](https://impythonist.files.wordpress.com/2015/10/base62.png)
## 1. Requirement
1. String mapping algorithm to map long string to short strings
2. A user interface that help user create short url
3. Database to store shorten url
4. Add User authentication
5. Do analytic: How many time this link was clicked


## 2. String mapping
- Using base62 to encode DB Record ID
- [base62](https://github.com/amitt001/pygmy/blob/master/pygmy/core/hashdigest.py)
- [pip install pybase62](https://pypi.org/project/pybase62/)

## 3. Software Development
- Define requirement
- Design database
- Design system architecture
- Modulize and Implement