Go to file
Nabeel Shahzad 235cdb13f3 refactor(airport): delete AirportRepository
- Frontend/AirportController: drop airportRepo, use
  Airport::with('files')->find($id) ($id was already uppercased
  earlier in the method)
- Frontend/PirepController: drop airportRepo from constructor
  (only reference was a commented-out selectBoxList call). Phase
  2 precedent (Aircraft was the same case).
- Filament/Actions/ExportAction: AIRPORT case uses Airport::all()
- Delete app/Repositories/AirportRepository.php (dead selectBoxList
  goes with it)
- phpstan.neon: suppress larastan.relationExistence for
  FilesTrait::files() across Aircraft/Airline/Airport/Subfleet.
  The morphMany is trait-defined and works at runtime, but
  larastan can't statically resolve trait-declared polymorphic
  relations. First direct Eloquent with('files') call lands in
  this commit, hence the new suppression.

Final commit of Phase 3. AirportRepository is gone; 9 repositories
remain (was 10 at branch start). First Query class
(AirportSearchQuery) and search Form Request (SearchAirportsRequest)
are now in production, ready to be reused by Phases 4/6/7.
2026-04-25 12:57:38 -05:00
.github add formatting step for version.yml in build process 2026-03-26 15:48:13 +01:00
.hooks fix(pre-commit): add '--' to npm commands for proper argument handling 2026-04-25 10:15:33 +02:00
app refactor(airport): delete AirportRepository 2026-04-25 12:57:38 -05:00
bin Laravel 9 Update (#1413) 2022-03-14 11:45:18 -04:00
bootstrap [8.x] refactor: upgrade pint (#2152) 2026-03-14 13:34:18 -05:00
config Merge branch 'main' into vite8 2026-04-25 10:04:03 +02:00
database Merge branch 'main' into vite8 2026-04-25 10:04:03 +02:00
modules [8.x] Laravel 12 Upgrade (#2031) 2025-05-07 09:07:58 -05:00
public feat(assets): publish log viewer assets after composer update (#2172) 2026-04-15 22:00:30 -05:00
resources Merge branch 'main' into vite8 2026-04-25 10:04:03 +02:00
routes refactor(airport): migrate Api/AirportController to AirportSearchQuery 2026-04-25 12:33:43 -05:00
storage [8.x] Add composer run dev command (#2009) 2025-03-14 12:26:44 -05:00
tests refactor(airport): migrate services to direct Eloquent 2026-04-25 12:37:54 -05:00
.editorconfig Workflow fixes 2025-01-10 14:09:48 -06:00
.env.example feat(admin): upgrade to Filament v4 (#2062) 2025-08-13 10:20:23 -05:00
.gitignore [8.x] feat: add laravel/boost (#2148) 2026-03-15 10:45:05 -05:00
.htaccess Remove vendor from .htaccess (#1994) 2025-02-14 14:24:19 -06:00
.oxfmtrc.json add oxlint and oxfmt 2026-03-18 23:17:18 +01:00
.oxlintrc.json add oxlint and oxfmt 2026-03-18 23:17:18 +01:00
artisan laravel base files 2017-06-08 13:28:26 -05:00
CHANGELOG.md add oxlint and oxfmt 2026-03-18 23:17:18 +01:00
composer.json Merge branch 'main' into vite8 2026-04-25 10:04:03 +02:00
composer.lock build(deps): bump composer/composer from 2.9.4 to 2.9.6 2026-04-24 16:52:43 -05:00
Directory.Build.props chore: remove outdated release notes step and add GitVersioning configuration 2025-08-13 11:33:05 -05:00
docker-compose.example.yml add oxlint and oxfmt 2026-03-18 23:17:18 +01:00
docker-compose.sail.yml add oxlint and oxfmt 2026-03-18 23:17:18 +01:00
Dockerfile ci: build assets during pipeline instead of committing them (#2072) 2025-08-15 09:45:14 -05:00
intellij_style.xml 7.0.0-beta3 Release (#541) 2020-02-08 13:29:34 -05:00
LICENSE Update LICENSE 2024-10-15 09:14:15 -05:00
Makefile Update Readme (#1963) 2025-01-20 10:57:01 -06:00
package-lock.json fix CVE in vite 2026-04-25 10:05:31 +02:00
package.json fix CVE in vite 2026-04-25 10:05:31 +02:00
phpstan.neon refactor(airport): delete AirportRepository 2026-04-25 12:57:38 -05:00
phpunit.xml [8.x] feat: improve tests suite (#2166) 2026-03-18 16:35:19 -05:00
pint.json add oxlint and oxfmt 2026-03-18 23:17:18 +01:00
Procfile Working docker-compose files for development 2019-05-10 18:40:07 -05:00
README.md add oxlint and oxfmt 2026-03-18 23:17:18 +01:00
rector.php [8.x] Add RectorPHP (#1986) 2025-03-14 11:38:16 -05:00
symfony.lock [8.x] Drop PHP 8.2, add PHP 8.5 support & upgrade core dependencies (#2142) 2026-02-03 11:29:44 -06:00
version.json add oxlint and oxfmt 2026-03-18 23:17:18 +01:00
vite.config.js add oxlint and oxfmt 2026-03-18 23:17:18 +01:00

phpVMS 8

Build StyleCI License

phpVMS is a PHP application to run and simulate an airline. It allowed users to register, view flight schedules that you create, and file flight reports, built on the Laravel framework. The latest documentation, with installation instructions is available on the phpVMS documentation site.

Installation

A full distribution, with all the composer dependencies, is available at this GitHub Releases link.

Requirements

  • PHP 8.3+, extensions:
    • cURL
    • JSON
    • fileinfo
    • mbstring
    • openssl
    • pdo
    • tokenizer
    • intl
    • zip
  • Database:
    • MySQL 5.7+ (or MySQL variant, including MariaDB and Percona)

View more details on requirements

Installer

  1. Upload to your server
  2. Visit the site, and follow the link to the installer

View installation details

Development Environment with Docker

A full development environment can be brought up using Docker and Laravel Sail, without having to install composer/npm locally

make docker-test

# **OR** with docker directly

docker run --rm \
    -u "$(id -u):$(id -g)" \
    -v "$(pwd):/var/www/html" \
    -w /var/www/html \
    laravelsail/php84-composer:latest \
    composer install --ignore-platform-reqs

# Then you can start sail
./vendor/bin/sail up

Then go to http://localhost.

Instead of repeatedly typing vendor/bin/sail to execute Sail commands, you may wish to configure a shell alias that allows you to execute Sail's commands more easily:

alias sail='[ -f sail ] && sh sail || sh vendor/bin/sail'

Then you can execute php, artisan, composer, npm, etc. commands using the sail prefix:

# PHP commands within Laravel Sail...
sail php --version

# Artisan commands within Laravel Sail...
sail artisan about

# Composer commands within Laravel Sail...
sail composer install

# NPM commands within Laravel Sail...
sail npm run dev

To interact with databases (MariaDB, Redis...), please refer to the Laravel Sail documentation

Building JS/CSS assets

Yarn is required, run:

make build-assets

This will build all the assets according to the webpack file.

Laravel Boost

If you want to use AI agents for your development workflow, please ensure you install Laravel Boost by running the following command:

php artisan boost:install

Contributors

Thank you to everyone who've contributed to phpVMS!

contributors images