-
Front Page Example
-
Front Page Example
-
Chatbot for agentic content updates
-
Manage Event Demo
-
Manage Event Demo
-
Discord Login Profiles (using oauth)
-
Team Matching
-
Sponsors (auto pulled from discord)
-
Gallery page
-
FAQ (auto updated from discord)
-
Winners (auto pulled from devpost)
-
Tracks and Prizes (auto pulled from devpost)
-
discord bot logo
HackBridge
Try it out here (VPS will only be active for the duration of the hackathon): http://95.179.201.78/
About
Soton Hack is an agentic hackathon website builder and manager for university events, using Discord announcements as the source of truth.
It is built to help kickstart uni hackathons that do not already have a full website and ops setup in place. Instead of manually updating schedules, FAQs, sponsors, team formation, and attendee info across different tools, organisers can run more of the event from one system and spend less time managing the boring parts.
What it solves
Running a uni hackathon usually means juggling a website, announcements, team formation, FAQs, sponsor updates, and last-minute schedule changes by hand.
This project cuts down that overhead by turning Discord into the place where updates already happen, then using that to keep the website and admin tools in sync.
Tracks we are competing for
Best Use of Vultr
We run our frontend, backend, Discord bot, and MongoDB on Vultr.
That matters because HackBridge is not just a normal website. It is a live system that listens to Discord, updates data, serves the site, and supports admin tools all at once.
Vultr helped us keep everything in one place, made deployment easier, and made the project simpler to maintain after the hackathon. Since HackBridge is meant to help universities start hackathons with less overhead, that simplicity is a key part of the idea.
Best Use of MongoDB
MongoDB fit this project much better than a typical SQL database because our data starts as Discord messages, not clean rows in tables.
Announcements, FAQs, sponsor posts, schedule updates, gallery data, page settings, and team info all look a bit different, and they can change over time.
MongoDB also made the system much cleaner for us:
- we can store raw Discord messages first, then turn them into structured website content
- we can react to new messages automatically and keep the site in sync
- we can store flexible page settings and admin content without forcing everything into strict tables
- we can use GridFS for gallery images and sponsor logos alongside normal document data
- we can keep embeddings and search data close to the images they belong to
A SQL database could have worked, but it would have forced a more rigid structure onto a problem that is naturally messy, content-heavy, and event-driven. MongoDB matched the way hackathon data actually works.
Unconventional Connections
The most unusual part of HackBridge is that we use Discord as the operational backend.
Most hackathons already run through Discord. Organisers post updates there, answer questions, announce sponsors, and share changes.
Instead of making organisers repeat that work in a separate CMS, we treat Discord as the source of truth and turn those messages into website updates.
That means the community platform and the website workflow are directly connected. In practice, Discord announcements can become FAQ entries, sponsor records, and live schedule updates without organisers having to copy everything over by hand.
Best Use of Gemini API
Gemini is not just a small extra feature in this project. It is built into several parts of the product to save organisers time and turn messy event data into something useful.
We use:
gemini-3.1-flash-lite-previewto quickly and cheaply classify Discord messages, so the system can tell whether something is a FAQ, sponsor update, schedule change, or something elsegemini-3-flash-previewto extract structured data from messages, parse schedules, and power the admin chat editing flow with tool callsgemini-3.1-pro-previewfor more judgement-heavy work like sponsor logo discovery and review through Google ADK, and for generating branding themes from uploaded logosgemini-3.1-flash-image-previewto create the isometric hero map artwork on the sitegemini-embedding-2-previewfor gallery embeddings, semantic text search, and similarity-based image search
What we like most is that each model has a clear role. Faster models handle frequent tasks, stronger models handle harder judgement calls, image models create visual assets, and embedding models power search. That makes Gemini feel less like one feature and more like the intelligence layer behind the whole product.
Built With
- discord
- docker
- express.js
- framer-motion
- gemini
- mongodb
- mongoose
- more-gemini
- node.js
- npm
- poetry
- pymongo
- python
- react
- shadcn
- tailwind
- typescript
- vite
- vultr


Log in or sign up for Devpost to join the conversation.