laravel-afterburner / meetings
Team-scoped meetings for Afterburner applications
Requires
- php: ^8.2
- laravel-afterburner/jetstream: ^1.0|dev-master
- laravel/framework: ^11.0
- livewire/livewire: ^3.5
Requires (Dev)
- laravel-afterburner/documents: @dev
- laravel-afterburner/voting: @dev
- laravel/pint: ^1.13
- orchestra/testbench: ^9.0
- phpunit/phpunit: ^11.0
Suggests
- laravel-afterburner/documents: Attach team documents to meetings for agendas and notices.
- laravel-afterburner/voting: Link ballots to meetings without duplicating vote mechanics.
This package is auto-updated.
Last update: 2026-05-29 15:15:50 UTC
README
Team-scoped meetings (AGM, council, special) for Afterburner Jetstream applications. Meetings orchestrate schedules, attendance, document attachments, and optional ballot links — vote mechanics remain in laravel-afterburner/voting.
Installation
composer require laravel-afterburner/meetings php artisan afterburner:meetings:install
Add the HasMeetings trait to your App\Models\Team model:
use Afterburner\Meetings\Concerns\HasMeetings; class Team extends JetstreamTeam { use HasMeetings; }
Permissions
Uses the existing manage_meetings slug from Afterburner role templates. The install seeder ensures the permission exists and assigns it to team owner roles.
Optional integrations
- Documents: attach agenda materials via
LinkDocument(same pattern as ballot document links). - Voting: link existing ballots to meetings via a pivot table; listens to
BallotPublished/BallotClosedfor meeting context only.
Strata apps
Implement attendance against property/lot voter units in the host app if needed. The package stores attendance keyed to a morph voter_unit without built-in Property models.
Out of scope
- Ballot casting, proxy votes, quorum, and tally (owned by the voting package).
- BC-specific legal notice generation (defer to host app).
License
MIT License — see LICENSE for details.