1
Verify Default Configuration
Out of the box, Geni uses sensible defaults that work for the vast majority of standard Laravel projects. Before starting your server, confirm these defaults match your project layout:
If your project uses a non-standard route prefix or stores migrations elsewhere, open
config/geni.php and update the relevant values before proceeding.2
Browse the Documentation Portal
Start your local Laravel development server:Then open the documentation portal in your browser:You will see an interactive portal built with Blade and Alpine.js. It includes:
- Live search across all endpoints, parameters, and schemas
- Syntax-highlighted request and response examples
- Try It console to send real HTTP requests directly from the browser, with no JavaScript build step required
The docs portal is restricted to the
local environment by default. If you visit the URL on a non-local environment and see a 404, check the environments setting in config/geni.php.3
Export the OpenAPI Specification
Write a static OpenAPI 3.1.0 JSON file to your project using the On success, Geni prints a confirmation line:The exported file conforms to the OpenAPI 3.1.0 standard and is compatible with any tooling that accepts it — including Swagger UI, Redoc, Stoplight, and AI agent tool manifests.
geni:export Artisan command:4
Run CI Drift Detection
Commit the exported Geni compares the committed file against a freshly generated specification from your current source code:
openapi.json to your repository, then add a drift-check step to your CI pipeline:- Exit code
0— the committed spec matches the source. Your CI step passes. - Exit code
1— one or more routes, parameters, or schemas have changed since the file was committed. Geni prints a human-readable diff and your CI step fails, blocking the merge until the spec is updated.