Skip to content

Installation

Before you begin, ensure you have the following installed:

  • Docker Desktop - For running Laravel Sail containers
  • PHP 8.5+ - For running Composer locally (optional with Sail)
  • Node.js 18+ - For frontend development
  • pnpm - Package manager for frontend
  • Composer - PHP dependency manager
  • Intelephense - PHP language server for IDE support (npm i -g intelephense)
Terminal window
git clone https://github.com/gocimit/volare.git
cd volare
Terminal window
cd backend
Terminal window
composer install
Terminal window
cp .env.example .env

Edit .env with your configuration:

Terminal window
APP_NAME=Volare
APP_ENV=local
APP_DEBUG=true
APP_URL=http://localhost
API_URL=http://localhost
DB_CONNECTION=pgsql
DB_HOST=pgsql
DB_PORT=5432
DB_DATABASE=volare
DB_USERNAME=sail
DB_PASSWORD=password
REDIS_HOST=redis
QUEUE_CONNECTION=database
# Stripe (see backend/services/stripe-setup for full guide)
STRIPE_KEY=pk_test_xxx
STRIPE_SECRET=sk_test_xxx
STRIPE_WEBHOOK_SECRET=whsec_xxx
CASHIER_CURRENCY=eur
CASHIER_CURRENCY_LOCALE=es_ES

APP_URL is the backend/admin origin. API_URL is the canonical public API origin used by browser-facing API requests and third-party callbacks. They are separate on production and should both be set explicitly.

For full Stripe setup including webhook forwarding and test data, see the Stripe Local Setup guide.

Terminal window
./vendor/bin/sail up -d

This starts:

  • Laravel application (port 80)
  • PostgreSQL database (port 5432)
  • Redis cache (port 6379)
  • Mailpit email testing (port 8025)
Terminal window
./vendor/bin/sail artisan key:generate
Terminal window
./vendor/bin/sail artisan migrate
Terminal window
./vendor/bin/sail artisan db:seed
Terminal window
cd ../frontend
Terminal window
pnpm install
Terminal window
pnpm dev

The frontend will be available at http://localhost:4321.

ServiceURLPort
Backend APIhttp://localhost80
Admin Panelhttp://localhost/admin80
API Docs (Swagger)http://localhost/api/documentation80
Telescopehttp://localhost/telescope80
Frontendhttp://localhost:43214321
Documentationhttp://localhost:43224322
Mailpithttp://localhost:80258025
Terminal window
# Start containers
./vendor/bin/sail up -d
# Stop containers
./vendor/bin/sail down
# Run tests
./vendor/bin/sail artisan test
# Run migrations
./vendor/bin/sail artisan migrate
# Clear cache
./vendor/bin/sail artisan cache:clear
# Format code
./vendor/bin/sail pint
Terminal window
# Development server
pnpm dev
# Production build
pnpm build
# Preview build
pnpm preview

If port 80 is in use, modify compose.yaml:

services:
laravel.test:
ports:
- '${APP_PORT:-8080}:80'

Ensure PostgreSQL container is running:

Terminal window
./vendor/bin/sail ps

Check database credentials in .env match compose.yaml.

If encountering permission issues:

Terminal window
sudo chown -R $USER:$USER .