Tree management application built with Laravel and Inertia.js + Vue 3.
- PHP 8.5+ with the following extensions:
pdo_pgsqlpgsqlffi(dev/test only — for H3 factory in tests)
- PostgreSQL 15+ with PostGIS 3.3+ extension
- Node.js 20+
- Composer 2.6+
- pnpm or npm
FFI is only needed for running tests and seeding data (the TreeFactory uses h3-php to generate H3 indices). Production web requests compute H3 on the frontend via h3-js.
Add to your php.ini for CLI/test usage:
ffi.enable=trueFor Laravel Herd, add to ~/Library/Application Support/Herd/config/php/85/php.ini:
ffi.enable=trueThen restart the PHP service.
Create the database and enable PostGIS:
CREATE DATABASE yito;
\c yito
CREATE EXTENSION IF NOT EXISTS postgis;composer install
npm install
cp .env.example .env
php artisan key:generate
php artisan migrate
npm run buildcomposer run devOr run services separately:
php artisan serve
npm run devphp artisan test- Backend: Laravel 13, PHP 8.4
- Frontend: Inertia.js v3, Vue 3, TypeScript, Tailwind CSS v4
- Database: PostgreSQL with PostGIS
- Spatial: H3 hexagonal indexing, Clickbar Magellan (PostGIS ORM)
- Maps: Leaflet (vue-leaflet)