https://github.com/sudo-arash/flask-todo
A simple, yet powerful TODO list application using Flask and HTMX that features many things!
https://github.com/sudo-arash/flask-todo
flask flask-application flask-authentication htmx python todo-list web-development
Last synced: about 2 months ago
JSON representation
A simple, yet powerful TODO list application using Flask and HTMX that features many things!
- Host: GitHub
- URL: https://github.com/sudo-arash/flask-todo
- Owner: sudo-arash
- Created: 2024-08-25T13:44:56.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-08-25T13:47:43.000Z (almost 2 years ago)
- Last Synced: 2025-02-28T06:00:14.269Z (over 1 year ago)
- Topics: flask, flask-application, flask-authentication, htmx, python, todo-list, web-development
- Language: HTML
- Homepage:
- Size: 27.3 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
# 📝 Flask TODO
Welcome to Flask TODO! 🚀 A simple, yet powerful TODO list application using Flask and HTMX that features user authentication, TODO creation and management, and a host of other interactive interface features.
## 🛠️ Features
### 🔒 User Authentication
- **Register**: Create a new account with just your full name. You will receive a **unique 16-character key** to use for logging in. 🔑
- **Login**: Access your TODO list effortlessly with your unique key—no email or password needed! ✨
### ✅ TODO Management
- **Add TODOs**: Quickly add new tasks to your list. 🆕
- **Toggle Completion**: Mark TODOs as completed or incomplete with a single click. ✔️❌
- **Delete TODOs**: Remove tasks from your list easily. 🗑️
### 🌟 Dynamic Updates
- **Real-Time Updates**: Thanks to HTMX, the TODO list updates dynamically without refreshing the page. 🖥️🔄
> [!NOTE]
> There is a small issue and because of that, we need to refresh the page everytime you make a new task. We will be happy to see someone who can fix it! (Read [contributing](#-contributing).)
## 🚀 Getting Started
### Prerequisites
- Python 3.x
- Flask
- Flask-SQLAlchemy
- Flask-Login
- Python-dotenv (for environment variables)
### Installation
1. **Clone the repository:**
```bash
git clone https://github.com/sudo-arash/flask-todo.git
cd flask-todo
```
2. **Create a virtual environment:**
```bash
python -m venv venv
```
3. **Activate the virtual environment:**
- On Windows:
```bash
venv\Scripts\activate
```
- On macOS/Linux:
```bash
source venv/bin/activate
```
4. **Install dependencies:**
```bash
pip install -r requirements.txt
```
5. **Set up the environment variables:**
- Copy `.env.example` to `.env`:
```bash
cp .env.example .env
```
- Update `.env` with your own values.
6. **Initialize the database:**
```bash
python
>>> from app import db
>>> db.create_all()
```
7. **Run the application:**
```bash
python app.py
```
All that remains now is to open `http://127.0.0.1:5000/` in the web browser of your choice, and voilà! You now have your shiny, new todo application up and running.
## 🤝 Contributing
Issues and PRs welcome! Also, feel free to open issues or submit pull requests. 🎉
## 📄 License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.