A comprehensive task management system built with Django that allows you to set tasks, assign performers, and track their statuses. Registration and authentication are required to work with the system.
🌐 Live Demo: Task Manager on Render
- Task Management - Create, edit, and track task completion status
- Labels & Statuses - Organize tasks using labels and track their status
- User Management - Register, authenticate, and manage user profiles
- Team Collaboration - Assign tasks to other users and work together
- Access Control - Secure authentication and authorization system
- Python 3.12+
- PostgreSQL
- UV package manager
- Clone the repository
git clone https://github.com/oleg-dixon/python-project-52.git
cd python-project-52- Install UV (if not already installed)
curl -LsSf https://astral.sh/uv/install.sh | sh
source $HOME/.local/bin/env- Install dependencies
make install- Configure environment
cp .env.example .env
# Edit .env with your settings:
# SECRET_KEY="your-secret-key"
# DATABASE_URL="postgresql://user:password@localhost:5432/task_manager"- Setup database
make migrate
make collectstatic- Run the application
make startRunning Tests
make testCode Quality
make lint # Run linters
make format # Auto-format codeBuild Package
make build- Python 3.12+ - Programming language
- Django 5.2+ - Web framework
- PostgreSQL - Primary database
- Psycopg2-binary - PostgreSQL adapter
- Dj-database-url - Database URL parsing
- Django-bootstrap5 - Bootstrap 5 integration
- Django-filter - Filtering support
- Flake8 - Code linting
- Ruff - Fast Python linter
- Pytest - Testing framework
- Dotenv - Environment variables
- Gunicorn - WSGI server
- Rollbar - Error monitoring
- make install - Install dependencies
- make start - Run development server
- make test - Run test suite
- make lint - Run code linters
- make migrate - Run database migrations
- make collectstatic - Collect static files
- make build - Build package
The application is deployed on Render.com and available at:
Live Demo: https://python-project-52-ya5h.onrender.com
This project is part of the Hexlet educational program.