An open API service indexing awesome lists of open source software.

https://github.com/bigprogrammers/django-todo-app

A beginner-friendly Django project to build a fully functional To-Do app. This repository includes a step-by-step implementation of models, views, templates, and CRUD operations, with a clean and user-friendly UI.
https://github.com/bigprogrammers/django-todo-app

Last synced: over 1 year ago
JSON representation

A beginner-friendly Django project to build a fully functional To-Do app. This repository includes a step-by-step implementation of models, views, templates, and CRUD operations, with a clean and user-friendly UI.

Awesome Lists containing this project

README

          

# Django To-Do App

## πŸ“‹ Overview
This repository contains the source code for a simple To-Do application built with Django. The project demonstrates the use of Django's models, views, templates, and forms to perform CRUD (Create, Read, Update, Delete) operations. It's an ideal beginner-friendly project to learn and practice Django fundamentals.

---

![Video](thumb.png.png)

## πŸš€ Features
- Add new tasks
- View all tasks in a list
- Mark tasks as complete or incomplete
- Edit existing tasks
- Delete tasks
- User-friendly interface with Bootstrap

---

## πŸ› οΈ Tech Stack
- **Backend:** Django (Python)
- **Database:** SQLite (default Django database)
- **Frontend:** HTML, CSS, and Bootstrap

---

## πŸ“‚ Project Structure

```plaintext
django-todo-app/
β”‚
β”œβ”€β”€ todo/
β”‚ β”œβ”€β”€ migrations/ # Database migrations
β”‚ β”œβ”€β”€ templates/ # HTML templates for the app
β”‚ β”‚ β”œβ”€β”€ base.html # Base template for all pages
β”‚ β”‚ β”œβ”€β”€ index.html # Home page template
β”‚ β”‚ └── form.html # Template for adding/editing tasks
β”‚ β”œβ”€β”€ static/ # Static files (CSS, images, etc.)
β”‚ β”œβ”€β”€ models.py # Task model definition
β”‚ β”œβ”€β”€ views.py # Logic for handling requests and responses
β”‚ β”œβ”€β”€ urls.py # URL routing for the app
β”‚ └── admin.py # Django admin customization
β”‚
β”œβ”€β”€ manage.py # Django project management script
β”œβ”€β”€ db.sqlite3 # SQLite database file
β”œβ”€β”€ requirements.txt # Python dependencies
└── README.md # Project documentation
```

---

## βš™οΈ Setup and Installation

### Prerequisites
- Python 3.x installed
- pip (Python package manager)

### Steps
1. Clone the repository:
```bash
git clone https://github.com/your-username/django-todo-app.git
cd django-todo-app
```

2. Create a virtual environment:
```bash
python -m venv env
source env/bin/activate # On Windows: env\Scripts\activate
```

3. Install dependencies:
```bash
pip install -r requirements.txt
```

4. Apply migrations:
```bash
python manage.py migrate
```

5. Run the server:
```bash
python manage.py runserver
```

6. Open your browser and navigate to:
```
http://127.0.0.1:8000
```

---

## πŸ–ΌοΈ Screenshots
### Home Page
![Home Page](Screenshot.png)

### Register
![Add Task](register.png)

### Login
![Add Task](login.png)

---

## 🀝 Contributing
Contributions are welcome! Here's how you can contribute:
1. Fork the repository
2. Create a feature branch:
```bash
git checkout -b feature-name
```
3. Commit your changes:
```bash
git commit -m "Add your message here"
```
4. Push to the branch:
```bash
git push origin feature-name
```
5. Submit a pull request

---

## πŸ“œ License
This project is licensed under the MIT License. See the `LICENSE` file for details.

---

## ⭐ Acknowledgements
- Django documentation: [https://docs.djangoproject.com/](https://docs.djangoproject.com/)
- Bootstrap framework: [https://getbootstrap.com/](https://getbootstrap.com/)

---

### 🌟 If you found this helpful, please give this repository a star!
```

Let me know if there’s anything you’d like to add or modify!