Prisma PHP DevTools
Suite
The complete development ecosystem for Prisma PHP. Turn VS Code into a first-class IDE for *.php templates, and connect your AI agents directly to your application context.
VS Code Extension
Smart Component Handling
- Auto-import with Ctrl + . (groups by namespace)
- Tag / attribute / value completions with enum-aware validation
- Hover cards show full FQCN + default props
Code Generation
- Snippet
phpxclassscaffolds a ready-to-go component - Automatic namespace detection & attribute helpers
IntelliSense Everywhere
- Function & variable completion inside
{...} - JS string methods, template literals, store helpers
- Signature-help for
pp.*& Prisma calls
Diagnostics & Fix-its
- Invalid enum values underlined in red – before you save
- Missing imports flagged with 1-click quick fix
- XML/HTML tag-pair & heredoc validation
Extension Installation
AI Integration (MCP)
Connect AI agents (like Claude Desktop or Cursor) directly to your Prisma PHP context. This allows the AI to read your schema, validate queries, and understand your project structure safely.
1. Install Server
2. Configure Client
{
"mcpServers": {
"prisma-php": {
"command": "mcp-prisma-php",
"args": ["start"],
"env": {
"PROJECT_ROOT": "/path/to/project"
}
}
}
}
Five-Second Demo
Type <Button in a PHPX view.
A tooltip complains "Missing import".
Press Ctrl + . and choose Add import.
Inside the tag, hit Space.
See prop suggestions with types & defaults.
Select variant.
Allowed values like "primary" | "ghost" appear. Ctrl + Space cycles them.
Intelligent Route Management
PHPX Tag Support understands your application's folder structure, providing auto-completion and validation for href tags.
Route Auto-Completion
Shows all available routes from your app structure, filtering as you type with fuzzy matching.
Route Navigation
Ctrl + Click on href values jumps directly to the route file.
<!-- Type href=" and get instant completions -->
<a href="dashboard">Go to Dashboard</a> <!-- ✅ Valid route -->
<a href="profile/settings">Settings</a> <!-- ✅ Valid nested route -->
<a href="invalid-route">Broken</a> <!-- ❌ Highlighted as invalid -->
<!-- Ctrl+Click any href value to jump to the route file -->
<nav class="menu">
<a href="">Home</a> <!-- → src/app/index.php -->
<a href="dashboard">Dashboard</a> <!-- → src/app/dashboard/index.php -->
</nav>
Pro Tip: Auto-Conversion
The extension automatically converts file paths to clean route URLs:
- src/app/index.php → ""
- src/app/dashboard/index.php → "dashboard"
Usage Cheat-Sheet
| Task | Action |
|---|---|
| Add missing import | Ctrl + . on tag → Select Add import |
| Peek source | F12 or Ctrl + Click tag |
| Generate component | Type phpxclass → Tab |
| Value completion | Inside "…" press Ctrl + Space |
| Refresh routes | Ctrl + Shift + P → "Refresh Routes" |
Enumerated Props & Wildcards
PHPX Tag Support reads @property annotations to validate strings.
| Annotation | Behavior |
|---|---|
| @property string $routes = home|about | Strict List Only home or about are accepted. Use for strict variants or sizes. |
| @property string $routes = home|* | Enum + Wildcard Shows "home" first, but any string is valid. Use for common presets with flexibility. |
<!-- Wildcard version in action -->
<NavItems routes="about" /> <!-- ✅ OK -->
<NavItems routes="blog/42" /> <!-- ✅ OK (allowed by *) -->
<!-- Change annotation to strict list -->
<NavItems routes="blog/42" /> <!-- ❌ Error: not in enum -->