Skip to content

The Laboratory ​

A multi-app experimental territory housing three Laravel 12 + Vue 3 applications, four VS Code extensions, and one npm package. Personal project used by friends, deployed on Railway.

Tech Stack ​

  • Backend: Laravel 12, PHP 8.4 (per experiment)
  • Frontend: Vue 3, TypeScript (per experiment)
  • Database: PostgreSQL
  • Hosting: Railway
  • Default branch: main

Architecture ​

The Laboratory is an orchestrator repository containing multiple independent experiments as submodules. Each experiment is a full-stack Laravel + Vue application with its own CI pipeline, database, and deployment.

All experiments follow the same Action pattern as the other projects — final readonly action classes, Form Request → DTO → Action pipeline, and architecture tests enforcing conventions.

Experiments ​

ExperimentDomainDescription
The GatekeeperAuthenticationCentralized OAuth provider serving the other experiments. Manages users, sessions, and cross-experiment authentication.
The War TableGamingHelldivers 2 companion app. Consumes game API data and presents strategic overviews.
The CrucibleFitnessStrava integration for activity tracking and analysis.

Gadgets ​

Four VS Code extensions and one npm package at early versions (v0.1.0). Secondary artifacts — the experiments are the primary focus.

Cross-App Integration ​

The experiments communicate through The Gatekeeper's OAuth system. Users authenticate once via Gatekeeper and access other experiments via token-based authorization. This creates a shared session model across subdomains.

Key Decisions ​

DecisionStatusImpact
Config Attribute InjectionAccepted#[Config] attribute for all config access
Cascade DeletionAcceptedExplicit deletion, no database cascading
Action Class ArchitectureAcceptedShared pattern across all experiments
FormRequest → DTO FlowAcceptedType-safe pipeline in all experiments
Domain-Driven FrontendAcceptedVertical slices by business domain

Active Campaigns ​

CampaignTypeStatus
Quality baselineQuality EnforcementPlanned — Quartermaster M1 pending
Security hardeningFortificationIn Progress — Tier 1 quick wins deployed (session fixation, token encryption)

Architecture documentation for contributors and collaborators.