Build an Event Agenda: Session Conflicts, Personal Calendars and Registration Drafts
Turn an approved event brief into a searchable multi-track website, check a personal route and export UTC calendars. Test the local registration draft before planning a real booking integration.
Fastest way
Ask your AI to do it
Paste this into the AI agent you already use:
Use Event Launch Studio to turn my approved event brief into a searchable agenda. Preserve confirmed speakers, rooms and explicit venue offsets. Check room and personal-route conflicts, retain selections through filters and inspect UTC ICS contents. Test sold-out and quantity limits with local drafts only. Deliver editable source and organizer evidence; do not register attendees, hold seats, charge money or publish the site.
What can Event Launch Studio deliver offline?
Event Launch Studio v1.0.0 creates an editable event website, speaker information, searchable day/track agendas, a personal schedule, agenda CSV and UTC ICS calendars. A separate command makes a registration JSON draft and SVG badge. The package costs USD 4.99 individually. The bundled workflow uses Python 3.10+ and its standard library; it needs no API key, ticketing account or dependency installation.
The website is a local planning prototype. Its pass prices and availability are authored input, its registration draft holds no seat, and its badge is not an admission credential. Running this example neither charges money nor registers a real attendee.
Start with approved sessions and explicit venue offsets
Read references/input.md. Supply a stable event id, reviewed venue, display timezone, speakers, tracks, passes and explicit-offset start/end timestamps. Use unique IDs and known speaker/track references. Different rooms may overlap; the same room cannot host overlapping sessions. The helper does not infer daylight-saving rules from timezoneLabel, so verify each actual venue offset independently.
Keep unknown speaker confirmations, fees, accessibility arrangements and cancellation policies visibly unresolved. The FORM / FORWARD example is fictional: its 12 sessions, five speakers and three tracks are a practice dataset, not an event announcement.
Generate the complete two-day practice website
From the installed skill directory, run the command into a fresh output folder and open event-site/index.html. Keep event.json for future edits, inspect agenda.csv against the source and retain the organizer handoff, quality evidence and SHA-256 manifest. Existing output folders are refused.
python3 scripts/build-event.py --input examples/event.json --output ./event-siteProve a personal route survives filtering and rejects overlaps
- Add Space for a better idea, then try Type with a point of view. Both run 10:30–11:30 on April 16 in different rooms; the second must be blocked in your personal schedule even though the event itself is valid.
- Add The shape of a good question as a nonoverlapping session. Change search, day and track filters, then return. Your selected sessions should remain; hiding a session is not removing it. Remove a selection explicitly and check the updated count.
- Download the personal ICS and inspect its session UIDs and UTC timestamps. The example’s 09:00+02:00 opening becomes 07:00Z. Import into your intended calendar app as a separate acceptance check; generating valid-looking text does not prove every app handles it correctly.
Check exact draft totals without treating them as a sale
The following fictional two-pass Studio draft totals exactly 19000 USD cents. Inspect registration.json: seatHeld and paymentTaken must both remain false. The selected calendar contains only open-16 and space-16. Check the badge’s LOCAL DRAFT label and name rendering before delivery.
| Draft attempt | Expected behavior |
|---|---|
| Two Studio passes and nonoverlapping sessions | 19000 cents; no seat held and no payment taken |
| Community invitation with zero remaining | Reject without creating a delivery |
| Five Studio passes with a limit of four | Reject without creating a delivery |
| space-16 and type-16 in the same route | Reject the conflicting selection |
python3 scripts/create-registration.py --input examples/event.json --ticket studio --quantity 2 --name "Avery Morgan" --sessions open-16,space-16 --output ./registration-draftSeparate the event handoff from production registration
Adapt the source with approved event facts, rebuild into a fresh folder, and verify actual links, keyboard operation, narrow layouts, timezone conversions and changed/canceled sessions. A real registration service needs authoritative inventory, retry deduplication, server validation and a verified confirmation flow. Payment and admission credentials require their own authorized integration and tests. The static helper provides none of those guarantees.
Map arrival, preparation and recovery responsibilities for the event team
Review the event page’s source accessibility before integration