This project is a simple web application built with Django that helps users manage their daily tasks. It allows users to add new tasks, mark them as completed, edit existing tasks, and delete tasks they no longer need. Designed with scalability in mind, the application serves as a solid foundation for further enhancements and feature additions.
└── ToDo_app.git/
├── db.sqlite3
├── manage.py
├── templates
│ ├── edit_task.html
│ └── home.html
├── todo
│ ├── __init__.py
│ ├── __pycache__
│ ├── admin.py
│ ├── apps.py
│ ├── migrations
│ ├── models.py
│ ├── tests.py
│ ├── urls.py
│ └── views.py
└── todo_main
├── __init__.py
├── __pycache__
├── asgi.py
├── settings.py
├── urls.py
├── views.py
└── wsgi.py
This project requires the following dependencies:
- Programming Language: Python
Build ToDo_app.git from the source and intsall dependencies:
-
Clone the repository:
❯ git clone https://github.com/MattaKacz/ToDo_app.git
-
Navigate to the project directory:
❯ cd ToDo_app
-
Create and activate virtual env:
❯ python -m venv venv source venv/bin/activate # Unix/macOS venv\Scripts\activate # Windows
-
Install the dependencies:
❯ pip install -r requirements.txt
-
Apply migrations:
❯ python manage.py migrate
-
Run the development server:
❯ python manage.py runserver
-
Open the application in your browser:
Go to http://127.0.0.1:8000/ to see the running application.
The project is designed with scalability in mind. Potential future developments include:
- User Authentication:
Implementing a registration and login system to allow users to manage their own per sonal task lists. - Task Categories:
Adding the ability to group tasks into categories or projects. - Priorities and Deadlines:
Allowing tasks to be assigned priority levels and deadlines for better organization. - Notifications:
Integrating a notification system (e.g., email) to remind users about upcoming deadlines. - Responsive Design:
Adapting the user interface for optimal experience on mobile devices.