From Chaos to Code: Building a Hackathon Platform (Or How I Learned to Stop Worrying and Love the Demo)

"The best way to predict the future is to invent it." - Alan Kay
Well, Alan, I tried to invent a small piece of the future, and like most inventors throughout history, I discovered that the real journey was the bugs I made along the way.
The Spark: When Personal Pain Meets Professional Curiosity
Picture this: It's 2024, I'm at the Bank for International Settlements Innovation Hub, orchestrating yet another hackathon with 50+ participants from 15+ regulatory authorities. Spreadsheets are flying, judges are confused about criteria, participants can't find submission guidelines, and I'm frantically toggling between seventeen different tools trying to keep everything coherent.
Sound familiar? If you've ever organized a hackathon, you've lived this nightmare.
I found myself thinking, "Surely, in an age where we can build CBDCs and zero-knowledge proofs, we can create a platform that doesn't make hackathon organizers want to fake their own deaths?"
Spoiler alert: We can, but the journey is wonderfully messy.
The "Aha!" Moment (Or Several Small "Oh No!" Moments)
After years of managing innovation events and working with fintech platforms, I had this nagging feeling. You know that feeling when you're using duct tape to fix something that clearly needs proper engineering? That was me with hackathon management.
The realization hit during our latest EDKP community session with 19+ central banks: Every single organizer was reinventing the same wheel, poorly.
It reminded me of the early days of banking before the Medici family revolutionized financial systems in the 15th century. Everyone was doing commerce, but nobody had figured out the infrastructure. We were all still burying gold in our backyards while dreaming of credit cards.
So I did what any reasonable product person would do: I decided to build a comprehensive hackathon management platform. From scratch. In my spare time. Because apparently, I enjoy pain.
The Discovery Journey: What Does a Hackathon Platform Actually Need?
The User Research Epiphany
First lesson: I already had the perfect research lab—myself and my colleagues who'd been suffering through hackathon management for years.
I started mapping out the pain points:
For Organizers (Admins):
- Event setup and customization
- Problem statement management
- Dynamic judging criteria creation
- Judge assignment coordination
- Submission tracking and status management
- Multi-round judging workflows
For Participants:
- Event discovery and registration
- Project submission with custom forms
- Real-time status tracking
- Clear submission guidelines
For Judges:
- Streamlined evaluation interfaces
- Consistent scoring frameworks
- Round-specific assignment management
For the Public:
- Transparent event information
- Engaging landing pages
- Prize and sponsor showcasing
The Technical Architecture Adventure
Here's where things got interesting. I wanted to build something that felt modern but wasn't over-engineered. Think of it as the difference between a Tesla and a rocket ship—both are impressive, but one actually solves daily transportation needs.
I chose React with TypeScript because, well, I wanted type safety and component reusability. The platform needed to handle multiple user roles seamlessly, so I built a context-based state management system that could switch between Admin, Participant, Judge, and Public views dynamically.
Key Technical Decisions:
- Role-based routing with protective navigation
- Local storage persistence for demo data (because who needs a backend when you're proving a concept?)
- Multi-hackathon support with context switching
- Responsive design with dark mode (because it's 2024, and dark mode is basically human rights)
The Building Phase: Where Theory Meets Reality
Iteration 1: The "How Hard Could It Be?" Phase
My first attempt was adorably naive. I thought, "I'll just build a simple form for hackathon creation and submission tracking."
Three weeks later, I had created a monster with seventeen different user flows and a judging system more complex than the Eurovision scoring algorithm.
Iteration 2: The "Maybe I Should Actually Plan This" Phase
I stepped back and did what I should have done initially—proper user story mapping.
I realized I was building three distinct but interconnected applications:
- Admin Portal: Full event lifecycle management
- Participant Interface: Simplified submission and tracking
- Judge Dashboard: Focused evaluation workflows
- Public Pages: Marketing and information display
Each needed different information architectures and interaction patterns. It was like designing a Swiss Army knife where each tool actually needs to be really good at its specific job.
The AI Integration Curiosity
Here's where my fintech background kicked in. I'd been working with AI applications in regulatory technology, and I wondered: "Could AI actually help hackathon organizers make better decisions?"
I implemented a mock AI assistance system that provides tips on:
- Designing fair judging criteria
- Creating engaging public pages
- Writing effective submission questions
- Increasing participant engagement
Note: It's currently using mock responses, but the integration points are ready for real AI. Sometimes the best innovation is knowing where to put the foundation before building the mansion.
The Revelation Moments: What I Actually Built
Multi-Role Persona System
The breakthrough came when I realized I needed to let users experience the platform from different perspectives instantly. I created a persona selection system that lets you immediately jump into being an Admin, Judge, Participant, or Public visitor.

The role selection screen that lets you instantly switch perspectives and experience the platform from different user viewpoints

It's like having a time machine for user research—you can experience your entire platform from every stakeholder's perspective in minutes.
Dynamic Judging Framework
This was probably the most complex piece. I built a system that supports:
- Multiple judging rounds with different criteria
- Judge assignment to specific rounds
- Real-time scoring and feedback collection
- Automatic status progression based on round completion

The admin interface for managing hackathon stages, timeline, prizes, and progression through different phases
Think of it as building a tournament bracket system, but for ideas instead of sports teams.
AI-Powered Best Practices
One feature I'm particularly excited about is the AI assistance system. Most hackathon organizers are doing this for the first time and have no idea what makes good judging criteria or how to structure evaluation rounds effectively.
Instead of leaving them to figure it out alone, the platform offers contextual AI guidance. Want to design better judging criteria? The AI provides specific, actionable recommendations based on proven best practices.

The AI assistance feature providing practical, specific guidance for hackathon management challenges like designing effective judging criteria
This isn't AI for the sake of having AI—it's addressing the real knowledge gap that causes many hackathons to have inconsistent or poorly designed evaluation processes. The goal is turning first-time organizers into confident event managers with access to accumulated best practices on demand.
Demo Data That Tells Stories
I created six different demo hackathons, each representing a different stage of the event lifecycle:
- Upcoming: Pre-event excitement
- Accepting Submissions: Active participation phase
- Judging Rounds: Evaluation in progress
- Winners Announced: Results celebration
- Concluded: Post-event reflection
Each demo tells a story about how the platform adapts to different phases.
The Technical Deep-Dive: For the Curious Minds
Architecture Decisions
// Context-based state management for multi-role support
export const AppContext = createContext<AppContextType | undefined>(undefined);
// Role-based routing with protective navigation
{currentUserRole === UserRole.Admin && activeHackathon && (
<>
<Route path="/admin" element={<AdminDashboard />} />
<Route path="/admin/submissions" element={<SubmissionsTable />} />
// ... more admin routes
</>
)}
Component Organization
I organized the codebase around user roles rather than technical layers:
/admin/
- Event management components/participant/
- Submission and tracking components/judge/
- Evaluation components/common/
- Shared UI components
State Management Philosophy
Instead of reaching for Redux, I used React Context with local storage persistence. For a demo platform, this provided the perfect balance of simplicity and functionality.
The Learning Curves: What Worked and What Didn't
What Worked Brilliantly
- Role-based development: Building from user perspectives first kept me focused on actual value
- Mock data storytelling: Creating realistic demo scenarios helped validate user flows
- Progressive complexity: Starting simple and adding features based on real needs
- Context switching: The persona system made user testing incredibly efficient
What Made Me Question My Life Choices
- Form validation: Never underestimate how complex "simple" forms can become
- Status management: Tracking submission states across multiple judging rounds is surprisingly intricate
- Date/time handling: Timezones are the eternal enemy of web developers everywhere
- Responsive design: Making complex data tables work on mobile devices is an art form
The Platform in Action: What I Actually Built
For Hackathon Organizers
The prototype explores what streamlined coordination might look like:
- Event Setup: One place to define problem statements and judging criteria
- Multi-Round Judging: Support for different evaluation phases with different criteria
- Status Tracking: Visual submission progress (though it's all mock data for now)
- AI Assistance Framework: Placeholder for future best practice guidance

The admin view showing submission status tracking and management across multiple judging rounds
For Participants
A cleaner interface concept that removes some confusion:
- Clear Guidelines: Consolidated access to rules and requirements
- Progress Tracking: Status visibility throughout evaluation
- Custom Forms: Flexible submission questions per hackathon

The public-facing hackathon page showing event details, prizes, problem statements, and current stage
For Judges
Focused evaluation tools that might promote consistency:
- Split Interface: Submission details next to scoring forms
- Structured Scoring: Framework with criteria and comments
- Round-Specific Views: Only relevant submissions per judging phase


The two-column judge interface showing submission details on the left and scoring criteria on the right
The Bigger Picture: Why This Matters
Personal Growth Through Building
This project taught me something fundamental about product development: the best way to understand user needs is to be the user yourself.
Every frustration I'd experienced as a hackathon organizer became a feature requirement. Every time I'd seen participants struggle became a UX improvement. Every judging bottleneck became a workflow optimization opportunity.
The Innovation Catalyst Connection
My role at BIS Innovation Hub involves facilitating collaboration between regulatory authorities and fostering innovation in fintech. This hackathon platform project perfectly aligns with that mission—it's about creating infrastructure that enables innovation rather than just building cool technology for its own sake.
Lessons for the Fintech World
Working in fintech has taught me that the most successful solutions solve operational problems, not just technical ones. This platform isn't about showcasing the latest JavaScript frameworks (though React 19 is pretty nice). It's about understanding that behind every successful hackathon are dozens of manual processes that could be automated and optimized.
The Technical Stack: Tools and Decisions
Frontend Architecture
- React 19 with TypeScript for type safety and modern development experience
- React Router for role-based navigation
- Tailwind CSS for rapid, consistent styling
- Vite for lightning-fast development builds
Design Philosophy
- Mobile-first responsive design because hackathons happen everywhere
- Dark mode support because developers have opinions about these things
- Component-based architecture for maintainability and reusability
- Progressive enhancement starting with core functionality
Data Management
- Local storage persistence for demo data
- Context-based state management avoiding over-engineering
- Type-safe interfaces for all data structures
- Mock AI integration points ready for real implementation
The Demo Experience: What I Actually Built
The platform exists as a working prototype—not a polished product, but a functional exploration of the problem space.
What you can explore in the code:
- Role-switching system: See how the same data looks from different user perspectives
- Multi-hackathon state management: Six demo hackathons at different lifecycle stages
- Dynamic form generation: Custom submission questions and judging criteria
- Mock AI integration: Framework for future AI-powered assistance
The screenshots here only scratch the surface—there are participant dashboards, submission tracking workflows, multi-round judging interfaces, and admin tools for everything from problem statement creation to judge assignment that would take dozens more images to show properly.
Reality check: It's a demo with mock data and local storage. No backend, no real users, no production-ready features. Just a curiosity-driven exploration of "what if this workflow didn't suck?" But there's definitely more functionality built than these few pictures can capture.
Reflections: What This Project Taught Me
The Humbling Reality of "Simple" Projects
I started thinking this would be a weekend project. Six weeks later, I had built a mini-platform with role-based authentication, dynamic form generation, multi-round judging workflows, and AI integration points.
Lesson learned: There's no such thing as a simple project, only projects you haven't fully understood yet.
The Power of Domain Expertise
My years of hackathon organizing weren't just user research—they were product requirements written in frustration and experience. Every pain point I'd lived through became a feature that actually solved real problems.
Building vs. Buying: The Eternal Question
Could I have used existing event management platforms? Absolutely. But would they have taught me about the nuanced requirements of hackathon management? Probably not.
Sometimes the journey of building teaches you things about the problem space that no amount of vendor evaluation can provide.
Future Iterations: Where This Goes Next
Real AI Integration
The mock AI assistance system is ready for real implementation. I'm curious about using large language models to provide contextual guidance for:
- Dynamic judging criteria generation based on hackathon themes
- Automated submission categorization and initial screening
- Personalized feedback for participants
- Best practice recommendations based on historical data
Backend Integration
While the local storage demo proves the concept, a real implementation would need:
- User authentication and authorization
- Real-time collaboration features
- File upload and management
- Email notifications and integrations
- Analytics and reporting dashboards
Community Features
The next evolution could include:
- Judge training and certification modules
- Community-driven problem statement sharing
- Cross-hackathon participant profiles
- Organizer knowledge sharing forums
The Broader Impact: Innovation Infrastructure
Why Hackathon Platforms Matter
In my work with central banks and regulatory authorities, I've seen how innovation often gets bottlenecked not by lack of ideas, but by lack of proper coordination infrastructure.
Good hackathon platforms aren't just about managing events—they're about creating environments where innovation can flourish systematically rather than accidentally.
The Fintech Connection
Working in fintech has shown me that the most transformative innovations often come from improving the infrastructure that enables other innovations. Payment rails, clearing systems, regulatory frameworks—these aren't sexy, but they're what make everything else possible.
This hackathon platform follows the same philosophy: build better infrastructure, enable better innovation.
Conclusion: The Journey Continues
What I Built vs. What I Learned
I set out to build a hackathon management platform. What I actually built was a functional prototype and a deeper understanding of:
- User-centered design through lived experience
- The complexity hidden in "simple" workflows
- The power of progressive enhancement in product development
- How domain expertise translates into technical requirements
The Real Value
The code itself is a decent proof of concept, but the real value was the learning journey. Every design decision taught me something about user expectations. Every feature I built revealed three more problems I hadn't considered.
It's like the old saying: "We are all products of our experiences." Well, this prototype became a product of my experiences, and my experiences became richer because of building it.
For Fellow Builders and Curious Minds
If you're thinking about building something in your domain of expertise, here's my completely unsolicited advice:
- Start with your own pain points—you're probably not alone in suffering through them
- Build the minimum viable frustration-solver first, then expand
- Use your domain knowledge as a competitive advantage—it's better than any market research
- Don't be afraid to over-engineer the demo—it teaches you things about the real requirements
- Document your learning journey—future you will thank present you
The Meta-Learning
Perhaps the most interesting discovery was this: building a platform for managing innovation events taught me more about innovation management than years of managing innovation events.
Sometimes you need to step outside the system to truly understand how it works.
Want to Explore Further?
🔗 View the Code on GitHub 💬 Connect with me on LinkedIn
Have you built something that solved your own problems? I'd love to hear about your journey. Drop me a line—let's compare notes on the wonderful messiness of turning frustration into functionality.
P.S. If you're organizing a hackathon and thinking "this approach is interesting," I'd be curious to hear how these ideas might work in real-world chaos. Always learning.