Skip to content

Events

This page is generated from public package documentation in capell-4/packages and the package manifest checked into the source repository.

FieldValue
Composer packagecapell-app/events
Package slugevents
Product groupCapell Content
Tierpremium
Bundlecontent-product
Runtime contextsadmin, frontend, console
Capell version^4.0
Source repositorycapell-app/packages
Source pathpackages/events
Docs sourcepackages/events/docs
Manifestcapell.json

Events adds event records, venues, occurrences, registrations, calendar pages, notifications, and iCalendar feed support to Capell.

  • Package: capell-app/events
  • Namespace: Capell\Events\
  • Surfaces: Filament admin, Livewire, console, HTTP, database
  • Service providers: packages/events/src/Providers/EventsServiceProvider.php
  • Capell dependencies: capell-app/admin, capell-app/frontend, capell-app/navigation, capell-app/publishing-studio
  • Third-party dependencies: rlanvin/php-rrule, spatie/icalendar-generator
  • Adds event listings, venues, occurrences, registrations, calendar feeds, and Event schema for sites that publish schedules.
  • Lets editors manage event content and feeds inside Capell instead of maintaining separate calendar tooling.
  • Gives developers documented extension points for registration, booking, feeds, schema, and publishing integration.
  • Events adds event records, venues, occurrences, registrations, calendar pages, notifications, and iCalendar feed support to Capell.
  • Admin resources: EventOccurrenceResource, EventRegistrationResource, EventResource, EventVenueResource.
  • Livewire components: EventCalendar, EventsCalendarPage, EventsListingPage.
  • Package setup or maintenance commands.
  • EventsServiceProvider registers admin resources, frontend pages, calendar feed routes, migrations, and translations.
  • Recurrence handling uses rlanvin/php-rrule; calendar feed output uses spatie/icalendar-generator.
  • Event registration and booking integrations are behind contracts so the package can accept different registration providers.
AreaPathPurpose
Actionspackages/events/src/ActionsDomain operations. Test these directly where possible.
Datapackages/events/src/DataStructured payloads, form state, view models, and integration data.
Enumspackages/events/src/EnumsPersisted states and Filament option values.
Modelspackages/events/src/ModelsEloquent records owned by the package.
Filamentpackages/events/src/FilamentAdmin resources, pages, widgets, and settings UI.
Livewirepackages/events/src/LivewireInteractive frontend or admin components.
HTTPpackages/events/src/HttpControllers, middleware, and request handling.
Providerspackages/events/src/ProvidersRegistration, extension hooks, routes, migrations, and resources.
Resourcespackages/events/resourcesViews, translations, assets, and package resources.
Routespackages/events/routesRoute files loaded by the service provider.
Databasepackages/events/databaseMigrations, seeders, and settings migrations.
Testspackages/events/testsPackage-level Pest coverage.
  • Resources: EventOccurrenceResource, EventRegistrationResource, EventResource, EventVenueResource.
  • Pages: CreateEvent, EditEvent, EventCalendarPage, ListEvents, ManageEventOccurrences, ManageEventRegistrations, ManageEventVenues.
  • Widgets: EventCalendarWidget.
  • Livewire: EventCalendar, EventsCalendarPage, EventsListingPage.
  • Controllers: CalendarFeedController.
  • Routes: packages/events/routes/web.php.
  • capell:events-install (packages/events/src/Console/Commands/InstallCommand.php)
  • Models: Event, EventNotificationLog, EventOccurrence, EventRegistration, EventVenue.
  • Migrations: 2026_05_10_190848_01_create_event_venues_table.php, 2026_05_10_190848_02_create_events_table.php, 2026_05_10_190848_03_create_event_occurrences_table.php, 2026_05_10_190848_04_create_event_registrations_table.php, 2026_05_10_190848_05_create_event_notification_logs_table.php.
  • Data objects live in src/Data/; use them for payloads, form state, and view models.
  • Contracts: EventBookingProvider, EventRegistrationProvider.
  • Register Capell extension points, routes, migrations, settings, render hooks, and resources from service providers.
  • Adds event, venue, occurrence, registration, and notification log tables.
  • Adds event management resources to the admin panel.
  • Adds frontend calendar/listing components and a calendar feed route.
  • Install with composer require capell-app/events in the host Capell application.
  • Run migrations through the host application package install flow.
  • In this repository, verify package changes with vendor/bin/pest; do not use php artisan.

Run package tests from the repository root:

Terminal window
vendor/bin/pest packages/events/tests --configuration=phpunit.xml
  • Treat public routes as untrusted input and keep validation, permission checks, and side effects inside actions or dedicated services.
  • Put behaviour changes in src/Actions/; UI classes, commands, and controllers should call actions instead of owning domain logic.
  • Use package Data classes at boundaries instead of passing anonymous arrays between layers.
  • Use backed enums for persisted values and enum labels for Filament options.