Skip to content

fmartns/todo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Todo - Task Manager App

Overview

Todo is a simple and efficient task management web application built with Django. It allows users to register, log in, and manage their personal tasks through a user-friendly interface. Each user has private access to their own task list and can organize tasks by status: pending or completed.

This project also implements enhanced user interactions using AJAX and SweetAlert for a more dynamic and modern experience.


Features

  • User registration and authentication (Django auth)
  • CRUD operations for tasks
  • Task filtering by status (pending, completed)
  • Private task lists for each user
  • Responsive design using Bootstrap
  • AJAX for real-time task actions
  • SweetAlert for beautiful alerts and confirmations
  • Automated tests with Django TestCase

Technologies Used

  • Python 3
  • Django
  • SQLite3 (for development)
  • Bootstrap (frontend styling)
  • JavaScript + AJAX
  • SweetAlert (JS alert replacement)
  • Django Auth System
  • Django Testing Framework

Screenshots

App Screenshot


Getting Started

Prerequisites

  • Python 3.8+
  • pip
  • Virtualenv (recommended)

Installation

  1. Clone the repository:
git clone https://github.com/fmartns/todo.git
cd todo
  1. Create and activate a virtual environment:
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
  1. Install dependencies:
pip install -r requirements.txt
  1. Configure environment variables:

Create a .env file in the root of your project and add the following:

SECRET_KEY=your-secret-key
DEBUG=True
ALLOWED_HOSTS=127.0.0.1,localhost

In settings.py, make sure to load this file using python-decouple or similar.

  1. Apply migrations:
python manage.py migrate
  1. Create a superuser:
python manage.py createsuperuser
  1. Run the server:
python manage.py runserver

Visit http://127.0.0.1:8000/ in your browser.


Running Tests

To run all automated tests:

python manage.py test

License

This project is licensed under the MIT License.


Author

Developed by Filipe Martins.

About

Django to-do app with auth, task filtering, AJAX, SweetAlert, Bootstrap, and tests.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors