Download the PHP package anselmokossa/filament-changelog without Composer
On this page you can find all versions of the php package anselmokossa/filament-changelog. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download anselmokossa/filament-changelog
More information about anselmokossa/filament-changelog
Files in anselmokossa/filament-changelog
Package filament-changelog
Short Description Manage, read and generate Keep a Changelog files inside Filament — hybrid database + CHANGELOG.md workflow.
License MIT
Homepage https://github.com/anselmocossa/filament-changelog
Informations about the package filament-changelog
Filament Changelog
Manage, read and generate Keep a Changelog files inside Filament.
A hybrid changelog for Filament: entries live in your database (fully
editable via a Filament resource, with grouping, filters and badges) and can
be imported from / exported to a CHANGELOG.md file at any time — via the UI or
artisan. Point the reader at your own project's file, a remote GitHub URL, or the
database, and get a clean, read-only changelog page out of the box.
Screenshots
Reader page — grouped by version, typed sections, date badges
Management resource — colored type badges, grouping, filters
Create / edit an entry |
Import a CHANGELOG.md — upload or paste |
Features
- 📖 Reader page — a polished, read-only changelog grouped by version with date badges and typed sections (built entirely with the Filament schema API, no custom Blade)
- 🔎 Search, version filter & infinite scroll on the reader — find entries as you type, jump to a single version, and load version cards as you scroll
- 📝 Management resource to create/read/edit entries, grouped by version
- 🏷️ Typed changes (Added, Changed, Deprecated, Removed, Fixed, Security) with colored badges
- ⬆️ Import an existing
CHANGELOG.md(upload, paste, orchangelog:import) — also when it is written in Portuguese (### Adicionado,## [Não lançado]) - ⬇️ Export the database back to a
CHANGELOG.md(download, orchangelog:export) - 🌍 Translations — English, European & Brazilian Portuguese (extendable)
- 🔗 Live file / remote source — read your own
CHANGELOG.mdor a GitHub URL, re-parsed on every visit - 🛡️ Shield-ready — auto-discovered permissions, no hard dependency
- 🗂️ Optional multi-project mode (one app, many changelogs)
Installation
Register the plugin on your panel:
Customizing the plugin
Every option is available as a fluent method (each accepts a value or a
Closure), mirroring other Filament plugins. Anything you don't set falls back
to the translations / config/changelog.php, so you only call what you need.
This is the full list:
Authorization (who can manage)
The read-only Changelog page is always visible; the Manage area (create / edit / delete) is guarded. Control it in two ways:
When management is denied, the routes return 403 and the Manage button on
the reader page is hidden automatically.
Filament Shield
The plugin is Shield-ready with no hard dependency — it works with or without Shield installed:
- Detected automatically. The resource and the reader page are registered on
the panel, so
php artisan shield:generatediscovers them and creates their permissions (nothing to configure). - Enforced automatically. Shield generates the policy under
App\Policies; because the model lives in the package namespace, the plugin binds that policy to the model for you (override withconfig('changelog.policy')). The reader page also honours its generated Shield permission at runtime. - Without Shield, everything stays open/functional and no Shield classes are referenced.
Prefer explicit wiring? Point canManage() at a Shield permission:
Usage
In the panel
A single Changelog item appears in the navigation (the read-only reader
page). From there, the Manage button opens the management table to
create/edit entries and Import / Export a CHANGELOG.md file; a
Changelog button takes you back.
From the CLI
Translations
Ships with English (en), European Portuguese (pt_PT) and Brazilian
Portuguese (pt_BR). The UI follows the app locale (config('app.locale')).
Add more languages by publishing the translations:
The generated
CHANGELOG.mdalways uses the canonical English section headings (### Added,### Fixed, …) regardless of locale, so the file stays valid Keep a Changelog and round-trips cleanly.
Changelogs written in other languages
Import and the live file reader also understand a CHANGELOG.md written in any
bundled language. Section headings are matched against the label the package
renders in each language, ignoring accents, case and extra spaces, so
### Adicionado reads as Added and ### Corrigido as Fixed. The unreleased
section is recognised however it is spelled — ## [Unreleased],
## [Não lançado], ## [Não publicado], ## [Sem lançamento] or the
translated label — and always sorts first.
Adding a translation to the package also teaches the reader to parse files
written in that language. The matching lives in Support\Headings, public so an
application can reuse it when it extends the parser.
Reader source & file path
The reader page can read from two sources, set in config/changelog.php (or via
env), so you point it at your own project and it never shows a stale copy:
Or configure it fluently on the plugin (this wins over config/env):
The file can also be a remote URL — e.g. read your CHANGELOG.md straight
from GitHub. Remote content is cached (CHANGELOG_REMOTE_CACHE_TTL, default
300s; 0 disables it):
You can also paste the normal GitHub file URL — github.com/.../blob/...
links are auto-converted to their raw form, so this works too:
In file mode the panel's edit/export buttons are hidden — the file is the
single source of truth, and every page load re-parses it, so what you see always
matches the file on disk.
Configuration
See config/changelog.php — reader source, file path, table name, change-type
order, date format, multi-project toggle and navigation placement.
Security
Please do not open a public issue for a security problem. Report it through a private advisory or by e-mail to [email protected]. SECURITY.md says what is in scope, what to include and what to expect.
License
MIT © Anselmo Kossa
All versions of filament-changelog with dependencies
filament/filament Version ^4.0|^5.0
illuminate/contracts Version ^11.0|^12.0|^13.0
illuminate/support Version ^11.0|^12.0|^13.0
spatie/laravel-package-tools Version ^1.16