salaab/framework
Salaab Framework is a PHP package offering a structured foundation for Laravel-style applications. It bundles reusable components and conventions to streamline setup, encourage consistent architecture, and help teams build maintainable web projects with less boilerplate.
boost-tchiowa is a fork of Laravel Boost 12.x adapted for the Tchiowa framework (salaab/framework) without laravel/framework. It expects PHP ^8.4, illuminate/* ^10.x, bladeone ^4.9, Phinx ^0.13, plus Vite + Tailwind. If your project still pulls in laravel/framework, stop and resolve that first — this package is not a drop-in for a stock Laravel app..ai/ tree (7 guidelines, 3 skills) and the mcp/tchiowa/ server into your project. Treat the .ai/ files as project config you will edit, not vendor code you never touch..ai/guidelines/core.md, then php-strict.md and illuminate.md. These describe the conventions the rest of the package (and your AI assistant) will assume. The three skills — crud-tchiowa, frontend-tchiowa, phinx-migration — are the fastest read for "what does a normal task look like here."mcp/tchiowa/dist/ is a Node stdio server exposing 4 tools. Point your client at dist/index.js in .mcp.json, opencode.json, and tchiowa.json (all three are registered by the package — see Gotchas). If you plan to modify the server, run npm install && npm run build inside mcp/tchiowa/.php tchiowa list, or your project's equivalent) and read the DatabaseExporter command — it is the new piece and feeds schema context to the MCP tools..ai/guidelines/ directory — e.g. "follow .ai/guidelines/phinx.md for this migration." The split (core / php-strict / illuminate / bladeone / phinx / frontend / pest) exists so you can load 1–2 relevant ones per task instead of burning context on all seven.crud-tchiowa → new resource scaffolding (controller + model + views + routes).phinx-migration → schema changes via Phinx (^0.13), not Laravel migrations.frontend-tchiowa → Vite/Tailwind assets and BladeOne templates.
Invoke the skill explicitly ("use the phinx-migration skill") so the assistant pulls in the right conventions and file layout.DatabaseExporter output fresh (re-run the exporter command) before sessions where schema accuracy matters.BladeFactory MODE_AUTO. With no laravel/framework, view resolution is handled by this factory. In MODE_AUTO it resolves conventional paths automatically — rely on it for standard resources, but fall back to explicit view names when a template sits outside the conventional tree (see Gotchas).illuminate helpers are wrapped in function_exists guards, so including them from multiple entrypoints (console, HTTP, MCP-adjacent scripts) is safe. Prefer them over re-implementing config()/env()-style shims — you get consistent behavior across the console and web paths.pint --test and phpstan (level 5) in CI. pint.json uses the Laravel preset, so formatting is one command: pint. phpstan.neon at level 5 is a reasonable floor for illuminate/* code — raise it per-directory rather than globally at first.phinx.php + Dotenv. Migrations read config from .env through phinx.php. Keep DB credentials in .env locally; in CI, inject the same variables so phinx migrate doesn't fall back to defaults..mcp.json, opencode.json, and tchiowa.json all point at the server. Edit one and your client may still launch an old path/args — update all three, or pick one as source of truth and script the rest.dist/ is committed but can go stale. If a tool behaves differently from what src/index.ts says, rebuild (npm run build) before debugging. Add a CI check that dist is current relative to src.DatabaseExporter is a data-leak and context-bloat risk. Scope it (exclude tables, limit columns/rows), and never commit exported schema or data dumps. A schema dump with PII in it will get pasted straight into an AI prompt.BladeFactory MODE_AUTO can silently pick the wrong template. If a view renders content you didn't expect, name the view explicitly and check for a same-named file in a higher-priority path before assuming a caching bug.illuminate/* ^10.x is a version-skew corner. Illuminate 10 predates 8.4; expect deprecation notices and occasional type strictness surprises. Pin your illuminate/* minors and run the test suite (Pest, per the guidelines) on 8.4 explicitly rather than trusting it implicitly.laravel/framework; artisan-centric instructions, laravel/framework service providers, and stock migration commands do not apply. Read .ai/guidelines/core.md as the authoritative "how this differs" doc.phinx.php can't see the expected env vars (e.g. in a container, cron, or CI without Dotenv context), it uses defaults instead of erroring — always verify the target database before running migrate/rollback..ai/ as your extension point for conventions. When the team settles on a pattern the guidelines don't cover, add it to the relevant guideline or a new skill file. That is the intended customization surface, and it's what makes the assistant's output converge over time.How can I help you explore Laravel packages today?