Sections
← Back to Home

SiroPHP Docs

Build an API with auth in 5 minutes. 6 commands, zero bloat, instant debugging.

KSearch commands, topics
Flow:StartCreate APITestWhyReplayFix & TestRegressionDeploy
01

Quick Start

From zero to running in 2 commands.

$ composer create-project sirosoft/api my-app
Copy
$ cd my-app && php siro key:generate
Copy
$ php siro serve
Copy

Your dev server is live at http://localhost:8080. That's it.

02

First CRUD API

Scaffold a complete CRUD in 2 seconds.

$ php siro make:crud products
Copy
$ php siro make:crud products --simple --seed --force
Copy
$ php siro make:crud orders --simple
Copy
$ php siro migrate
Copy

Generated files: app/Models/Product.php, app/Controllers/ProductController.php, database/migrations/..., routes/api.php (5 routes), tests/Feature/...
Flags: --simple (minimal files), --seed (auto seed), --force (overwrite existing)

03

Testing APIs

Test endpoints right from your terminal. No Postman needed.

$ php siro t GET /api/products
Copy
$ php siro t POST /api/products name=Laptop price=999
Copy
$ php siro t POST /api/auth/login email=admin@test.com password=secret --as=admin
Copy
$ php siro t GET /api/products --as=admin --loop=50
Copy
$ php siro make:test ProductApi
Copy
$ php siro make:test ProductApi --from-trace=a1b2c3d4
Copy
$ php siro test
Copy
$ php siro test --filter=Product --coverage
Copy

--from-trace generates a PHPUnit test from a real production trace. Flags: --filter (test name filter), --coverage (code coverage report)

04

Debugging Workflow

The signature Siro workflow. Find and fix bugs in seconds.

$ php siro why
Copy
$ php siro api:why GET /api/products
Copy
$ php siro db:why abc123 --slow
Copy
$ php siro replay a1b2c3d4
Copy
$ php siro replay a1b2c3d4 --test
Copy
$ php siro replay
Copy
$ php siro fix
Copy
$ php siro log:trace a1b2c3d4
Copy
$ php siro log:slow --limit=10
Copy

Every response includes X-Siro-Trace-Id. No guessing. No log diving.
api:why — debug a specific request by METHOD+path. db:why — EXPLAIN query with index suggestions. replay (alias) — replay latest trace. fix — watch mode auto re-tests on save. --test flag generates a regression test from the replay.

05

Production Safety

Safe debugging in production. No data leaks.

$ php siro replay a1b2c3d4 --dry-run
Copy
$ php siro replay a1b2c3d4 --diff
Copy
$ php siro log:export --status=500 --format=json --output=errors.json
Copy
$ php siro log:export --status=500 --format=postman --output=collection.json
Copy
$ php siro doctor --prod
Copy
$ php siro rate:status
Copy

Credentials auto-[REDACTED]. Dry-run by default in production. Replay lock prevents accidental writes.
--format=postman exports a Postman collection from traces. doctor --prod checks production readiness. rate:status shows rate limiter state.

06

OpenAPI + Postman

API docs generated from your validation rules.

$ php siro make:openapi --with-swagger
Copy
$ php siro make:postman
Copy

Swagger UI at /api/docs. Postman collection ready to import.

07

Deploy

Ship to production in one command.

$ php siro deploy --init
Copy
$ php siro optimize
Copy
$ docker compose up -d
Copy
08

Log Management

Monitor, analyze, and clean up logs from your terminal.

$ php siro log:tail -f
Copy
$ php siro log:top --limit=10
Copy
$ php siro log:stats --days=7
Copy
$ php siro log:cleanup --days=30 --dry-run
Copy
$ php siro log:cleanup --days=30
Copy
$ php siro log:replay --test
Copy
$ php siro log:replay --force
Copy
$ php siro debug:health
Copy

log:tail -f tails realtime logs. log:top shows slowest requests. log:stats gives summary. log:cleanup --dry-run previews deletion. log:replay --test generates regression tests from traces. --force bypasses POST safe mode. debug:health checks logging health.

09

Queue System

Manage background jobs and queues.

$ php siro queue:work
Copy
$ php siro queue:retry
Copy
$ php siro queue:flush
Copy
$ php siro queue:status
Copy
10

Environment & Maintenance

Manage env, migrations, routes, and maintenance mode.

$ php siro env:check
Copy
$ php siro env:switch production
Copy
$ php siro migrate:reset
Copy
$ php siro migrate:refresh --seed
Copy
$ php siro route:list
Copy
$ php siro route:search users
Copy
$ php siro route:rules
Copy
$ php siro down
Copy
$ php siro up
Copy
11

Advanced CLI

Project scaffolding, trace management, and more.

$ php siro new my-project
Copy
$ php siro trace:list
Copy
$ php siro traces
Copy
$ php siro make:auth
Copy
$ php siro make:crud orders --seed
Copy
$ php siro make:service Payment
Copy
$ php siro make:job SendWelcomeEmail
Copy
$ php siro make:test ProductApi --from-trace=a1b2c3d4
Copy
12

Regression Testing

Verify no regressions when deploying fixes.

$ php siro test:regression --limit=50
Copy
$ php siro test:regression --fail
Copy
$ php siro test:regression --limit=100 --fail
Copy

Replays all recorded traces and detects changes in status codes, response structure, or success rates.
--limit=N caps replay count. --fail exits non-zero on any regression (CI-friendly).

Ship your API now

6 commands from zero to API with auth. No Laravel bloat. No config hell.