Kingdom Pioneers / Events and job-directory application / 2026
Connecting event registration to the event agenda.
Kingdom Pioneers uses an event's first scheduled session to decide when signups close, keeping registration tied to the agenda people see.
- ROLE
- Laravel implementation
- STATE OF THE BUILD
- Prototype
- RECORD UPDATED
THE WORK
The project.
Kingdom Pioneers combines event information, attendee registration and a job directory in Laravel. Its registration flow takes the first session in the agenda as the event's effective start and closes signups two hours earlier. An authenticated attendee can register a group of one to three; the server checks the time, looks for an existing registration and validates the group before saving it.
IMPLEMENTATION
Design choices.
- Calculating the deadline from the first session means an agenda change also changes the registration cutoff. There isn't a second deadline to keep aligned with the schedule.
- Sessions and registrations have separate records. Editing when an event runs doesn't require rewriting who has registered.
- The existing-registration check gives repeat signups a clear refusal. Two requests reaching that check together need a database constraint or transaction strategy that still has to be verified.
HOW IT FITS TOGETHER
Architecture.
- The event detail controller loads the agenda, speakers, location and gallery together with the current user's registration state. Blade can show the event and the attendee's place in it from the same event record.
- The signup handler orders sessions by date and start time, then uses the earliest one to calculate the cutoff. An event without sessions falls back to its own start date, so the same handler covers both kinds of schedule.
- An accepted request creates a registration linked to the event and authenticated user. The job directory uses separate queries and category, author and location relationships; attendee data doesn't have to share a model with job postings.
Explore the architecture map7 components · 7 connections
Event browsing and registration
A public detail page and an authenticated signup share event data but have different write rules.
Web surfaces
Laravel application
Relational data
Scroll or drag the background to move. Use the zoom buttons to resize.Arrow keys move between components. Enter selects.
Choose a component to explore
Select a numbered component on the map or use the component menu. Its details and connections will appear here.
No component selected.
All connections (7)
- 01 · Event visitor → 02 · Event detail controllerview · Direct call
- 03 · Event and schedules → 02 · Event detail controllerrelated content · Direct call
- 02 · Event detail controller → 04 · Authenticated signupregistration action · Direct call
- 04 · Authenticated signup → 05 · Closing time and duplicate checkssubmit · Direct call
- 03 · Event and schedules → 05 · Closing time and duplicate checksschedule and existing rows · Direct call
- 05 · Closing time and duplicate checks → 06 · Registration refusednot eligible · Blocked / denied
- 05 · Closing time and duplicate checks → 07 · Registration rowsaccepted signup · Direct call
MADE WITH
PHP · Laravel 11 · Blade · Eloquent · Bootstrap · Vite
ACCESS & INPUT
Security controls.
- The registration route requires authentication and applies a request rate limit. The handler takes the attendee identity from the current session.
- Before saving, the handler checks for an existing registration and accepts only an integer group size from one to three. The duplicate lookup doesn't establish protection against simultaneous requests.
CHECKS & RESULTS
What was checked.
A source review shows what the code does. It is not a fresh test of the running app.
Code and development records reviewedReviewed
The code, tests and available development records were checked. Reported test results keep their original scope. No fresh app or live deployment check was run for this write-up.
- Scope of this check
- Code review, not a fresh run of the app
NEXT
Still to work through.
The registration path is present in source, including uncommitted changes beyond the recorded history. I still need to check simultaneous signups, publication rules and authorization with runtime tests before treating the prototype as ready for public registration.