Overview
Build, test, version, bundle, and publish custom Fleetbase extensions using the CLI.
Publishing Extensions
The CLI gives you the full lifecycle for authoring and shipping a Fleetbase extension — from scaffolding a new project to publishing it on the Extension Registry.
The Lifecycle
flb scaffold → Generate a new extension from the starter template
↓
develop locally — write your addon and server code
↓
flb version-bump → Bump version in extension.json / package.json / composer.json
↓
flb bundle → Pack the extension into a distributable .tar.gz
↓
flb bundle-upload → Upload the bundle to the registry's storage
— or —
flb publish → Run npm publish against the registry
↓
Extension is now installable via flb installPages
Scaffold
Generate a new extension from the starter template.
Version Bump
Increment major / minor / patch / prerelease across all manifest files.
Bundle
Pack the extension into a versioned .tar.gz, optionally uploading.
Bundle Upload
Upload an existing bundle to the registry.
Publish
Run
npm publish against the registry.Unpublish
Remove a published extension from the registry.
Prerequisites
Before you can publish, you need:
- A registry developer account — see Register
- A verified email — see Verify
- A registry auth token — saved via
flb set-author environment variable for CI
Extension Anatomy
A Fleetbase extension is a single repository that contains both:
- An Ember addon — the console UI (npm package, e.g.
@yourcompany/yourext-engine) - A Laravel package — the API server code (composer package, e.g.
yourcompany/yourext-api)
Both packages are published from the same source tree. The starter template the scaffolder clones gives you both halves wired up.
For deeper development docs (architecture, services, registries, IAM), see the Extension Development.