A Django-powered web app for managing tasks. It enables users to create tasks,
assign team members, monitor progress, and apply labels for organization.
The project has been deployed on the free demo service render.com,
which offered time-limited resources during the deployment process.
- User Management: Registration, authentication, profile editing
- Task Management: Create, view, edit and delete tasks
- Task Statuses: Flexible status system to track progress
- Labels: Categorize tasks with custom labels
- Filtering: Convenient task filtering by status, executor, and labels
- Multilingual: Russian and English language support
- Security: Permission separation (only author can delete a task)
The application supports two languages:
- English (en)
- Russian (ru)
Language switching is available in the navigation menu.
- Python 3.13+
- Django 6.0+
- PostgreSQL (production) / SQLite (development)
- Bootstrap 5 (via django-bootstrap5)
- Gunicorn (WSGI server)
- Whitenoise (static files)
- Rollbar (error tracking)
- django-filter (task filtering)
- python-dotenv (environment variables management)
- Python 3.13 or higher
- PostgreSQL (optional, for production)
- Make (for convenient command execution)
install the project via pip
pip install --user git+https://github.com/annetmyshkina/python-project-52.gitor clone the repository:
git clone https://github.com/annetmyshkina/python-project-52.git
cd python-project-52Install dependencies and run:
make install # Install dependencies (including dev)
make migrate # Apply migrations
make run # Start development serverTesting & Linting:
make check # Run linter
make format # Format code
make fix # Auto-fix linting errors
make test # Run tests with coverage reportDeployment:
make deploy # Apply migrations, collect static files