Build around dynamic conference data instead of a static event site
Schedules, accepted papers, and submission-related information shift during the lifecycle of a conference and cannot be managed comfortably as hand-edited static content alone.
Keep the site mostly staticUse embedded third-party conference toolingOwn the data-backed experience in the Next.js app
Decision
I treated the conference as an application problem, not just a content problem, and used API routes plus Mongo-backed data handling for the dynamic pieces.
Tradeoff: This added backend responsibility to a site category that many teams would keep mostly static.
Impact: The product could represent real conference operations instead of only the public marketing layer.
Keep conference schedules and paper views as first-class interfaces
Attendees and authors need direct access to schedules, accepted papers, and submission information without digging through generic pages.
Bury conference data inside long-form pagesLink out to external documentsCreate dedicated data-driven views in the platform
Decision
I gave schedules, accepted papers, and submissions dedicated paths and supporting data structures.
Tradeoff: More dedicated views means more upkeep for organizers and developers.
Impact: The conference information architecture feels intentional rather than improvised.
Include support and organizer telemetry in the app layer
A conference product serves both attendees and organizers, so information delivery alone is not enough.
Leave support fully manualAdd isolated helper scripts outside the appExpose support and count-oriented tooling through the application
Decision
I integrated Dialogflow support and lightweight count-oriented APIs alongside the public conference experience.
Tradeoff: Operational helpers increase scope, but they make the platform more useful during the event lifecycle.
Impact: The app reflects real event operations instead of stopping at presentation.