Shorti.fy is a simple and fast URL shortening service built with Python + Django.
It allows users to create short, clean links and manage them in a personal dashboard.
- User registration and authentication (sign up / log in / log out)
- Edit profile information (username, email)
- Change password
- Create short links from long URLs
- Automatic short code generation (if left empty)
- View, edit and delete your links
- Form validation & error handling
- Clean minimalistic CSS interface
- Instant redirection via
/s/<code>/ - 18 automated unit tests (Django TestCase)
- Python 3.11+
- Django 5.x
- HTML, CSS
- SQLite (for development)
link-shortener/
├── links/ # Models, views, forms, tests
├── shortener/ # Project settings and URLs
├── templates/ # HTML templates
├── static/ # CSS, images
├── manage.py
├── requirements.txt
└── .gitignore
git clone https://github.com/eva-maker/link-shortener.git
cd link-shortenerpython -m venv venv
source venv/bin/activate # macOS / Linux
venv\Scripts\activate # Windowspip install -r requirements.txtpython manage.py migratepython manage.py runserverOpen your browser at: http://127.0.0.1:8000/
python manage.py test linksExpected output: Ran 18 tests — OK

