inupress / core
Inupress CMS core: plugin discovery, hooks, themes, panel wiring
v0.1.1
2026-10-11 09:20 UTC
Requires
- php: ^8.3
- composer-runtime-api: ^2.0
- filament/filament: ^5.0
- illuminate/support: ^12.0 || ^13.0
- illuminate/view: ^12.0 || ^13.0
- inupress/contracts: ^0.1
- spatie/laravel-package-tools: ^1.16
Requires (Dev)
None
Suggests
None
Provides
None
Conflicts
None
Replaces
None
This package is auto-updated.
Last update: 2026-10-11 09:30:05 UTC
README
The core of the Inupress CMS: the plugin repository, hooks, migration lint and the admin panel wiring.
This package is developed in the inupress/framework monorepo (packages/core). Report issues and send changes there.
What it does
- Finds plugins.
Inupress\Contracts\PluginRepositoryis implemented on top of Composer: a plugin is any installed package of"type": "inupress-plugin". There is no cache, no state file and no enable/disable switch. - Runs hooks.
Inupress\Contracts\HookRegistryis implemented byHookManager(priorities, actions, filters). - Attaches panel plugins. A plugin provider that implements
Inupress\Contracts\ProvidesFilamentgets its Filament plugin added to the default panel automatically. - Lints plugin migrations.
php artisan inupress:plugin:migraterefuses to run when a migration has nodown()or touches a table outside the plugin prefix. - Admin page. A Plugins page (
/admin/plugins) lists installed plugins.
Commands
| Command | Purpose |
|---|---|
inupress:plugin:list |
List installed plugins |
inupress:plugin:migrate [plugin] [--rollback] |
Lint, then run (or roll back) plugin migrations |
Requirements
PHP 8.3 or newer, Laravel 12 or 13, Filament 5, Composer 2. Tested on PHP 8.4 and Laravel 13 only.
The public API lives in inupress/contracts. Plugins must not depend on anything else from this package.
License
MIT