A simple To-Do List web application built with Flask, featuring user authentication, database migrations, and task management. This project is ideal for beginners learning Flask or anyone who wants a starter template for a CRUD-based web app.
This is a lightweight Flask-based To-Do List application supporting:
- User registration & login
- Secure password hashing
- Each user manages their own tasks
- Database migration workflow (Flask-Migrate)
It can be used as a simple productivity tool or as a base project to learn Flask fundamentals.
- Python 3
- Flask
- Flask-Login
- Flask-Migrate
- SQLAlchemy
- HTML / Bootstrap
Follow these steps to set up and run the project locally.
Make sure Python and pip are installed.
pip install -r requirements.txtUse Flask-Migrate to initialize and manage migrations:
flask db init # Run once, creates migrations folder
flask db migrate # Generate migration scripts after model changes
flask db upgrade # Apply latest migrationsWindows:
py app.pyMacOS / Linux:
python3 app.pyThe app should now be accessible at: http://localhost:5000
docker build -t flask-todo-app .docker run -d -p 5000:5000 flask-todo-appThis project is open-source and available under the MIT License.