A Django-based web application for managing HVAC service cases and vehicle maintenance records. The system supports multilingual content (Ukrainian/English) and provides an administrative interface for managing service cases, vehicles, and company information.
- 🌐 Multilingual support (Ukrainian/English)
- 📱 Responsive design with Bootstrap
- 🚗 Vehicle management system with support for:
- Different vehicle types (Fuel Engine, Electric, Hybrid)
- Automatic engine capacity handling based on vehicle type
- Case documentation and image management
- 💼 Service case management
- 📝 Rich text editing with CKEditor 5
- 🖼️ Image handling with automatic optimization
- 🔄 HTMX integration for enhanced interactivity
- Django 5.0.3
- Python 3.10
- Bootstrap 5
- CKEditor 5
- HTMX
- SQLite (Database)
- Python 3.10 or higher
- pip (Python package manager)
- Virtual environment (recommended)
- Clone the repository:
git clone [repository-url]
cd hvac- Create and activate a virtual environment:
python -m venv .venv
source .venv/bin/activate # On Windows, use `.venv\Scripts\activate`- Install dependencies:
pip install -r requirements.txt- Create database:
python manage.py migrate- Create a superuser:
python manage.py createsuperuser- Collect static files:
python manage.py collectstaticCreate a .env file in the project root and configure the following variables:
DEBUG=True
SECRET_KEY=your-secret-key
ALLOWED_HOSTS=localhost,127.0.0.1
TIME_ZONE=Europe/Kievpython manage.py runserverThe application will be available at http://127.0.0.1:8000
hvac/
├── cases/ # Main application directory
│ ├── admin.py # Admin interface configuration
│ ├── forms.py # Form definitions
│ ├── models.py # Database models
│ ├── signals.py # Signal handlers
│ ├── views.py # View definitions
│ ├── static/ # Static files (CSS, JS)
│ └── templates/ # HTML templates
├── hvac/ # Project configuration
├── locale/ # Translation files
│ ├── en/ # English translations
│ └── uk/ # Ukrainian translations
├── media/ # User-uploaded files
├── static/ # Collected static files
└── templates/ # Project-wide templates
To create or update translations:
- Generate message files:
python manage.py makemessages -l uk
python manage.py makemessages -l en-
Edit translation files in
locale/[lang]/LC_MESSAGES/django.po -
Compile translations:
python manage.py compilemessagesAccess the admin interface at /admin with your superuser credentials to manage:
- Cases
- Vehicles
- Services
- Contact Information
- About Messages
- Create a feature branch
- Commit your changes
- Push to the branch
- Create a Pull Request
[Your License Here]
[Your Contact Information or Support Instructions]