The Problem

Fleetbase addresses the complexity of building logistics and supply chain operations software from scratch. Organizations needing fleet tracking, order management, and delivery optimization typically face fragmented tools or expensive custom development. Fleetbase attempts to provide a modular operating system with a web console, API backend, and extension architecture.

What This Does

The repository contains two main projects: console/ (589 files) is an Ember.js-based admin dashboard for managing fleet operations, orders, and organizations. The api/ directory (96 files) is a Laravel PHP backend providing REST endpoints. The system supports real-time tracking, order workflows, and integration with external services.

The architecture is deliberately modular—the console/lib/fleetbase-extensions-generator/ suggests a plugin system for extending functionality. Infrastructure files (infra/, docker/, builds/) show Kubernetes and Docker support for deployment.

How It Is Wired

The import graph shows 432 internal modules with only 24 import edges—a surprisingly sparse dependency structure. The most-connected module is console/app/utils/remove-boot-loader (10 modules import it, 0 it imports), making it a leaf utility with wide reach. The console/config/environment module imports 4 modules and is imported by 0, marking it as a source node. No circular dependencies exist.

Entry points are api/resources/js/app.js and console/app/app.js. The console's admin controllers (console/app/controllers/console/admin/organizations/index.js) handle organization management. The API's RouteServiceProvider.php routes requests to controllers.

The console relies on adapters (console/app/adapters/application.js, brand.js) for data access. These form a thin layer between UI components and the API. The console/app/components/admin/widget/ directory contains dashboard widgets (kpi-tile.js, list-panel.js, chart-panel.js) that consume these adapters.

The wiring for external effects (database writes, API calls) is not fully mapped in this analysis—the import graph shows internal structure but not runtime behavior. The API's Laravel controllers and models handle persistence, but the specific call paths are unverified.

How To Use It

Setup: The repo has package.json files in both console/ and api/, plus api/composer.json for PHP dependencies. Dockerfiles exist for container builds. The README doesn't document setup commands clearly.

Configuration: Environment templates exist at api/.env.example and console/environments/.env.development (note: the latter is committed—see health issues). The API uses Laravel's standard .env configuration.

Running it: No explicit run instructions are documented in the README excerpt. The console/Dockerfile suggests a containerized deployment. Without documented commands, you'd need to inspect the Dockerfiles and scripts/ directory for the actual build process.

Real-World Use

A delivery company would deploy the API backend with PostgreSQL, configure the console to point at it, and manage drivers, orders, and zones through the dashboard. The console's dashboard widgets provide real-time KPIs; the order board offers Kanban-style workflow management. The extension generator enables custom modules for specific logistics workflows.

Code Health & Issues

Static analysis found 23 issues (6 high, 17 medium) across 4 categories:

  • High - Deep nesting (x15): api/app/Providers/RouteServiceProvider.php, console/app/controllers/console.js, console/lib/fleetbase-extensions-generator/index.js have indentation depth of 8, making control flow hard to follow.
  • High - Duplicated code: 307 repeated 6-line blocks across 83 files, including api/resources/lang/*/validation.php translation files.
  • Medium - Oversized file: scripts/package-linker.mjs at 1059 lines.
  • Medium - High branching density (x6): console/app/components/admin/widget/list-panel.js has 32 branch points over 72 lines.

The code health audit adds 11 findings (2 high, 7 medium, 2 low):

  • High - Committed .env files: console/environments/.env.development and .env.production are tracked. Rotate any credentials they contain.
  • High - Unpinned GitHub Actions: Workflows use @v2, @v4 tags instead of commit SHAs—a supply-chain risk.
  • Medium - No least-privilege token permissions in create-release.yml.
  • Medium - No Dependabot/Renovate configured despite 5 manifest files.
  • Medium - Mutable base images (node:22.22.0-alpine3.22, nginx:alpine).
  • Medium - No dependency vulnerability scan in CI.
  • Medium - No pre-commit secret gate.
  • Medium - persist-credentials: false not set on checkout in cd.yml.
  • Medium - No non-root user in the Dockerfile.

Tests exist (197 files) and CI is configured, but the committed secrets and unpinned actions are the most urgent fixes.

The Bottom Line

Fleetbase is a substantial, well-structured logistics platform with real functionality and a sensible modular architecture. The sparse import graph suggests clean boundaries between components. The main concerns are operational: committed .env files, unpinned CI dependencies, and no automated dependency updates. Teams wanting a self-hosted logistics platform with a modern admin console and API should evaluate it, but address the security findings before production use.