- User Authentication: Users can sign up, log in, and manage their tasks securely.
- Create, Read, Update, Delete (CRUD) Operations: Perform all basic CRUD operations on tasks effortlessly.
- Priority Levels: Assign priority levels to tasks to manage them effectively.
- Filtering and Sorting: Filter and sort tasks based on priority, date, or completion status.
- Responsive Design: Access the app seamlessly from any device - desktop, tablet, or mobile.
-
Clone the repository:
git clone https://github.com/sinanazem/django-todo-app.git
-
Navigate into the project directory:
cd django-todo-app/config
-
Build and start the Docker containers:
docker-compose up --build
-
Visit
http://127.0.0.1:8000
in your browser to access the application.
If you prefer not to use Docker, follow these steps:
-
Clone the repository:
git clone https://github.com/sinanazem/django-todo-app.git
-
Navigate into the project directory:
cd django-todo-app/config
-
Install the required dependencies:
pip install -r requirements.txt
-
Apply the migrations:
python manage.py migrate
-
Create a superuser:
python manage.py createsuperuser
-
Start the development server:
python manage.py runserver
-
Visit
http://127.0.0.1:8000
in your browser to access the application.
- Sign Up: Create a new account or log in if you already have one.
- Add Tasks: Click on the "Add Task" button to create a new task. Provide a title, description, and select the priority level.
- Update Tasks: Click on a task to view its details. You can edit or delete the task from there.
- Filter and Sort: Use the filter and sort options to organize your tasks based on priority, date, or completion status.
- Mark as Completed: Once a task is completed, click on the checkbox to mark it as done.
Contributions are welcome! Here's how you can contribute to this project:
- Fork the repository
- Create your feature branch (
git checkout -b feature/YourFeature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin feature/YourFeature
) - Open a pull request
Please make sure to update tests as appropriate and adhere to the Python PEP 8 coding style.
This project is licensed under the MIT License - see the LICENSE file for details.
- Hat tip to anyone whose code was used
- Inspiration
- etc.
For any inquiries or feedback, please contact Sina Nazem.