A simple, user-friendly To-Do application built with Django, enabling users to add, update, and delete tasks. This app can be used as a personal productivity tool or as a foundation for more complex task management applications.
- User Authentication: Login and logout functionality.
- CRUD Functionality: Users can create, read, update, and delete tasks.
- Task Completion Status: Mark tasks as complete or incomplete.
- Search Functionality: Search tasks by keywords.
- Responsive UI: Styled with HTML and CSS for a clean and responsive design.
- Python 3.7+
- Django 3.2+
- Git
- (Optional) A PostgreSQL database for production
-
Clone the Repository:
git clone https://github.com/your-username/your-repo-name.git cd your-repo-name
-
Create a Virtual Environment: python -m venv venv source venv/bin/activate # On Windows, use
venv\Scripts\activate
-
Install Dependencies: pip install -r requirements.txt
-
Set Up Environment Variables:
Create a .env file in the root directory and add a SECRET_KEY for Django. Example .env: plaintext Copy code SECRET_KEY=your_secret_key DEBUG=True
-
Run Migrations:
bash Copy code python manage.py migrate
-
Create a Superuser (to access Django admin):
bash Copy code python manage.py createsuperuser
-
Run the Development Server:
bash Copy code python manage.py runserver
Open http://127.0.0.1:8000 in your browser to access the app.
Project Structure
- base/ - Main app folder containing views, models, and templates.
- templates/ - HTML templates for the app’s UI.
- static/ - Static files like CSS and JavaScript.
- manage.py - Django’s command-line utility for administrative tasks.
Usage
- Register for a new account or login if you already have one.
- Add tasks using the "Add Task" button.
- Update or delete tasks as needed.
- Search tasks using keywords.