A simple project purely aimed for testing/interacting with Python's Flask framework.
- Overview
- Features
- Tech Stack
- Screenshots
- Installation and Setup
- Contributing
- License
- Acknowledgments
This is a URL Shortener application built using the Flask framework in Python. It allows users to input a long URL and get a shortened version of it, which can then be shared or used elsewhere. The shortened URLs redirect to the original URLs when accessed.
- URL Shortening: Converts long URLs into short, manageable links.
- Redirect Functionality: Shortened URLs redirect users to the original long URLs.
- Custom Short URLs: Option to create custom short links ( Reroll ).
- Analytics Dashboard: Track clicks and provide analytics for shortened URLs.
- Persistent Storage: Stores the original and shortened URLs in a database for easy retrieval.
- Error Handling: Includes basic error handling for invalid URLs and duplicate entries.
- Python: Core programming language used for developing the backend.
- Flask: Lightweight web framework used for building the application.
- HTML/CSS: Frontend structure and styling.
- SQLite: Database for storing URL mappings.
- Jinja2: Template engine used in Flask for rendering dynamic content.
- Bootstrap: Used for responsive design and UI components.
-
Clone the repository:
git clone https://github.com/yourusername/your-repository.git cd your-repository
-
Create and activate a virtual environment:
python -m venv venv source venv/bin/activate # On Windows use `venv\Scripts\activate`
-
Install the required packages:
pip install -r requirements.txt
-
Run the application:
python3 app.py # On Windows use `python app.py`
-
Access the application: Open a web browser and go to
http://localhost/
.
Contributions are welcome! Please fork this repository and submit a pull request for any feature enhancements or bug fixes.
This project is licensed under the MIT License - see the LICENSE file for details.
Special thanks to the Flask community and all the developers who contribute to open-source software.