How asgar90/selise-event works
SELISE Events combines an anonymous event-discovery and registration site with a staff-only Host Studio CMS. Visitors browse localized events, register, and receive ticket-related email; staff authenticate through Blocks to create and publish events and manage registrations and event operations. The graph includes major documented capabilities such as scheduling, media, check-in, and email. Source excerpts are selective, so some documented subsystem links use the README as evidence; unsampled implementation details are not asserted.
Main entry points: [lang] Public pages · (staff) Studio interface · register/handler.ts Registration function · scheduler/handler.ts Scheduler function
Components 22
Public experience
- Public pages
src/app/[lang] - Event experience
src/components/event - Registration form
src/components/event/RegistrationForm.tsx - Tickets and confirmation
src/app/[lang]/tickets/page.tsx
Host Studio
- Studio interface
src/app/studio/(staff) - Event editor
src/components/studio/editor/EventEditor.tsx - Studio operations
src/lib/studio - Staff authentication
src/lib/blocks/session.ts
Event services
- Event content
src/content/event.ts - Event resolution
src/lib/event-page/resolve.ts - Registration workflow
src/lib/register/core.ts - Ticket service
src/lib/tickets/core.ts - Email rendering
src/lib/register/emails.ts - Media delivery
src/lib/media/serve.ts - Scheduled actions
src/lib/studio/event-actions.ts
Blocks platform
- SELISE Blocks
Background functions
- Registration function
functions/register/handler.ts - Tickets function
functions/tickets/handler.ts - Scheduler function
functions/scheduler/handler.ts
Other components
- Event visitor
- Studio staff
- Blocks workflow
Connections 29
- Event visitor → Public pages: browses
- Public pages → Event experience: opens events
- Event experience → Event resolution: resolves event
- Event experience → Registration form: offers registration
- Registration form → Registration function: submits registration
- Registration function → Registration workflow: invokes
functions/register/handler.ts - Registration workflow → Event resolution: checks event state
src/lib/register/core.ts - Registration function → SELISE Blocks: stores registrations
functions/register/handler.ts - Registration function → Email rendering: renders notices
functions/register/handler.ts - Registration workflow → Tickets and confirmation: confirms registration
- Event visitor → Tickets and confirmation: views tickets
- Tickets and confirmation → Tickets function: requests ticket access
- Tickets function → Ticket service: invokes
functions/tickets/handler.ts - Tickets function → SELISE Blocks: reads ticket records
functions/tickets/handler.ts - Studio staff → Staff authentication: signs in
- Staff authentication → SELISE Blocks: authenticates via OIDC
- Studio staff → Studio interface: manages events
- Studio interface → Event editor: edits content
- Event editor → Studio operations: uses editing services
- Studio operations → SELISE Blocks: persists CMS data
- Studio interface → Media delivery: manages media
- Studio interface → Registration workflow: manages registrations
- Public pages → Event content: presents event content
- Event resolution → Event content: interprets content
src/lib/register/core.ts - Public pages → Media delivery: serves media
src/app/[lang]/events/[slug]/share-image/route.ts - Blocks workflow → Scheduler function: triggers schedule
functions/scheduler/handler.ts - Scheduler function → Scheduled actions: runs scheduled actions
functions/scheduler/handler.ts - Scheduler function → SELISE Blocks: reads and updates records
functions/scheduler/handler.ts - Scheduler function → Email rendering: renders scheduled mail
functions/scheduler/handler.ts