A versatile ToDo site built with Django and JavaScript that lets you write and save tasks both online and offline, complete with user authentication support. this app allows users to create and delete, and track tasks with ease. Features
- Add Tasks: Quickly create new tasks with descriptions and due dates.
- Online & Offline Task Management: manage tasks whether you're connected or offline.
- Delete Tasks: Remove tasks that are no longer needed.
- User Authentication: Secure user accounts with login, registration, and session management.
- Responsive Design: Works seamlessly on desktop and mobile devices
- Dark and Ligth Mode :
. [Optional: Add any unique features, e.g., Task Categories, Filtering, or Local Storage]
| Component | Technologies |
|---|---|
| Backend/API | Django (Python) |
| Frontend UI | JavaScript, HTML, CSS |
| Offline Sync | Browser storage/Web APIs (e.g., localStorage or Service Workers) |
Follow these steps to set up the ToDo app locally: Steps
git clone https://github.com/UndrDsk0M/ToDo-app.git
cd ToDo-app
pip install -r requirements.txt
python manage.py runserver 127.0.0.1:80000
Open your browser and navigate to http://localhost:[port] (default: [e.g., 3000 or 8000]). ( also you can run python manage.py migrate if needed )
- Create a Task: Enter task details in the input field and click "Add" or press Enter.
- Add a SubTask: You can enhance one or many tasks in a single main task!
- Delete a Task: Click the delete icon to remove a task.
- Create local account: enter the sign in/up and enter the captcha, username and password
- Mark Complete: Check the box next to a task to mark it as complete.
not deployed yet.
todo/ – Core Django app containing models, views, forms, and templates.
templates/ – Shared HTML templates for rendering pages.
static/ – Frontend assets: CSS, JavaScript, images, etc.
data/ – Storage for database files or other runtime-generated data (e.g., db.sqlite3).
manage.py – Django’s management script for running commands.
Contributions are highly appreciated! Whether it’s bug fixes, feature enhancements, or documentation improvements:
Fork the repo
Create a new branch (git checkout -b feature/awesome-feature)
Make your changes and commit (git commit -m "Add awesome feature")
Push to your branch (git push origin feature/awesome-feature)
Open a Pull Request with a clear description
Please ensure your code follows the project's coding standards and includes relevant tests.
This project is licensed under the MIT License. Feel free to use, modify, and distribute this application as you see fit. Contact For questions or feedback, reach out to UndrDsk0M. Also the base of the front-end was built by Tamana and the back-end was built by Me! thanks everyone for supporting and helping this project.