Skip to content

GM-327/odoo-Flight_School_Management

✈️ Flight School Management System

Odoo 19.0 Python 3.10+ License LGPL-3.0 PostgreSQL

A comprehensive Military Flight School Management System built on Odoo 19, following EU JAR-FCL (EASA) regulations.


πŸ“‹ Table of Contents


🎯 Overview

The Flight School Management System is a comprehensive ERP solution designed specifically for military and civilian flight training organizations. Built on the powerful Odoo 19 framework, it provides end-to-end management of:

  • πŸ›©οΈ Aircraft Fleet - Complete fleet management with maintenance tracking
  • πŸ‘¨β€βœˆοΈ Personnel Management - Students, instructors, and staff administration
  • πŸ“š Training Programs - Curriculum management following EASA regulations
  • πŸ“Š Scheduling & Operations - Flight scheduling and resource allocation
  • πŸ“ Compliance & Documentation - Regulatory compliance and record-keeping

Why Choose This System?

Feature Benefit
EASA Compliant Built following EU JAR-FCL regulations out of the box
Modular Design Install only the modules you need
Full Integration Seamlessly integrates with other Odoo apps
Open Source Transparent, customizable, and community-driven
Modern Stack Built on Odoo 19 with the latest technologies

✨ Features

Core Module (fs_core)

  • πŸ” Role-Based Security - Four-tier access control (User, Instructor, Manager, Admin)
  • βš™οΈ Centralized Configuration - System-wide settings management
  • πŸ“ Module Framework - Foundation for all Flight School modules

Fleet Module (fs_fleet)

  • ✈️ Aircraft Registry - Complete aircraft information management
  • πŸ”§ Maintenance Tracking - Schedule and track maintenance activities
  • πŸ“ˆ Flight Hours Logging - Accurate flight time tracking
  • πŸ“‹ Airworthiness Management - Certificate and compliance tracking

People Module (fs_people)

  • πŸ‘¨β€πŸŽ“ Student Management - Enrollment, progress tracking, certifications
  • πŸ‘¨β€βœˆοΈ Instructor Profiles - Qualifications, ratings, and assignments
  • πŸ“œ License Management - Track all pilot certifications and renewals
  • πŸ₯ Medical Certificate Tracking - Class 1/2 medical compliance

Coming Soon

  • πŸ“… Training Module - Syllabus management and progress tracking
  • πŸ—“οΈ Scheduling Module - Resource and flight scheduling
  • πŸ“Š Reports Module - Advanced analytics and reporting

πŸ—οΈ Module Architecture

Flight_School_Management/
β”œβ”€β”€ fs_core/                 # Core settings and security
β”‚   β”œβ”€β”€ security/           # Access rights and groups
β”‚   β”œβ”€β”€ views/              # Configuration views
β”‚   └── models/             # Core models
β”‚
β”œβ”€β”€ fs_fleet/               # Fleet management
β”‚   β”œβ”€β”€ models/             # Aircraft models
β”‚   β”œβ”€β”€ views/              # Fleet views
β”‚   β”œβ”€β”€ security/           # Fleet-specific access
β”‚   └── data/               # Default data
β”‚
└── fs_people/              # Personnel management
    β”œβ”€β”€ models/             # People models
    β”œβ”€β”€ views/              # Personnel views
    β”œβ”€β”€ wizards/            # Action wizards
    └── security/           # Access rights

πŸ“¦ Requirements

System Requirements

Component Minimum Version Recommended
Operating System Ubuntu 22.04 / Windows 10 Ubuntu 24.04 / Windows 11
Python 3.10 3.12+
PostgreSQL 13 15+
RAM 4 GB 8 GB+
Disk Space 10 GB 50 GB+

Python Dependencies

All dependencies are listed in requirements.txt. Key packages include:

  • psycopg2 - PostgreSQL adapter
  • lxml - XML processing
  • Pillow - Image handling
  • reportlab - PDF generation
  • Werkzeug - WSGI toolkit
  • Jinja2 - Templating engine

πŸš€ Installation

Option 1: Quick Start (Development)

# 1. Clone the repository
git clone https://github.com/GM-327/odoo-Flight_School_Management.git
cd flight-school-management

# 2. Create virtual environment
python -m venv .venv
source .venv/bin/activate  # Linux/Mac
# OR
.venv\Scripts\activate     # Windows

# 3. Install dependencies
pip install -r requirements.txt

# 4. Configure database connection
cp odoo.conf.example odoo.conf
# Edit odoo.conf with your database settings

# 5. Initialize database and install modules
./odoo-bin -c odoo.conf -d your_database -i fs_core,fs_fleet,fs_people --stop-after-init

# 6. Start the server
./odoo-bin -c odoo.conf

Option 2: Production Deployment

See the Deployment Guide in our wiki for detailed production setup instructions.

Option 3: Docker (Coming Soon)

docker-compose up -d

βš™οΈ Configuration

Basic Configuration (odoo.conf)

[options]
; Database settings
db_host = localhost
db_port = 5432
db_user = odoo
db_password = your_password
db_name = flight_school

; Server settings
http_port = 8069
longpolling_port = 8072
workers = 4

; Addons path
addons_path = addons,odoo/addons

; Logging
log_level = info
logfile = /var/log/odoo/odoo.log

Module Configuration

After installation, navigate to: Settings β†’ Flight School β†’ Configuration

Here you can configure:

  • Default flight school information
  • Regulatory authority settings
  • Notification preferences
  • Integration options

πŸ“– Usage

Getting Started

  1. Login to Odoo with admin credentials
  2. Navigate to the Flight School menu
  3. Configure your organization settings
  4. Add your aircraft fleet
  5. Register instructors and students
  6. Start managing your flight school!

Quick Actions

Action Navigation
Add Aircraft Flight School β†’ Fleet β†’ Create
Register Student Flight School β†’ People β†’ Students β†’ Create
Add Instructor Flight School β†’ People β†’ Instructors β†’ Create
View Dashboard Flight School β†’ Dashboard

For detailed documentation, see our User Guide.


πŸ”§ Development

Setting Up Development Environment

# Clone with development tools
git clone --recurse-submodules https://github.com/GM-327/odoo-Flight_School_Management.git

# Install development dependencies
pip install -r requirements.txt
pip install ruff pytest

# Run linting
ruff check .

# Run tests
./odoo-bin -c odoo.conf -d test_db --test-enable -i fs_core --stop-after-init

Project Structure

.
β”œβ”€β”€ addons/                     # Custom addons
β”‚   └── Flight_School_Management/  # Main module suite
β”œβ”€β”€ odoo/                       # Odoo core
β”œβ”€β”€ doc/                        # Documentation
β”œβ”€β”€ .github/                    # GitHub templates
β”œβ”€β”€ requirements.txt            # Python dependencies
β”œβ”€β”€ odoo.conf                   # Configuration file
└── README.md                   # This file

AI Agent Development Support

This project includes AGENTS.md with guidelines for AI coding assistants. When using AI tools:

  1. Refer to local Odoo 19 documentation first
  2. Follow existing code patterns
  3. Use the validation commands provided in AGENTS.md

🀝 Contributing

We welcome contributions! Please see our Contributing Guidelines for details.

How to Contribute

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Development Guidelines


πŸ”’ Security

Security is a top priority. If you discover a security vulnerability:

  1. DO NOT open a public issue
  2. Review our Security Policy
  3. Report via our Responsible Disclosure process

Supported Versions

Version Supported
19.0 βœ… Active Development
18.0 βœ… Security fixes
< 18.0 ❌ Not supported

πŸ“„ License

This project is licensed under the LGPL-3.0 License - see the LICENSE file for details.

Flight School Management System
Copyright (C) 2024 Ghazi Marzouk

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

πŸ’¬ Support

Community Support

πŸ™ Acknowledgments

  • Odoo S.A. - For the amazing ERP framework
  • EASA - For aviation safety standards
  • All contributors who help improve this project

Made with ❀️ for the aviation training community

⬆️ Back to Top

About

A Multi App Architecture for a Flight School Management App in Odoo 19 Community

Topics

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors