Inspiration

It started with Fiverr. I created a gig, got zero traction, and spent weeks re-editing titles, tags, everything, trying to figure out what I was doing wrong. Eventually I realized the platform wasn't built with people like me in mind. I saw others get flagged or banned for using non-US identities, while accounts with US numbers sailed through with the visibility and retention I was chasing. That gap, freelancers outside the US getting structurally worse odds on the platforms they depend on, is what pushed me to build something different: a freelance marketplace designed around Nigerian youth first, not as an afterthought.

What it does

Any young person can sign up and immediately search for and purchase services, filling in requirements, chatting with sellers after purchase, and tracking the work end to end. Sellers go through their own onboarding flow: sign up, get verified, then create gigs and start selling.

Search itself is context-aware rather than a plain keyword match. Raw queries and parameters are converted into semantically meaningful tags to search the database, backed by embeddings for power users doing more nuanced searches. When a search comes up empty, it's logged for admin review, so gaps in supply become visible instead of just showing a dead end to the user.

How I built it

The backend runs on Node/Express with Prisma and Supabase, since that's where I started building. It serves as the backend source of truth for the frontend, with some routes proxying to a FastAPI service that handles the AI endpoints separately. The frontend is Next.js with shadcn/ui and Tailwind, with Socket.IO handling real-time updates.

Live seller-buyer sessions run on LiveKit, built for calls and shared data/board transfer rather than raw video, starting at low quality with adaptive quality scaling. Redis backs session enforcement: automatically checking sessions against rules like sellers needing to stay present (flagged if absent over 90 seconds) and buyers getting a 5-minute grace window, auto-booking sessions, and flagging or removing unused ones, plus handling notifications. Resend powers transactional emails. Payments run through Paystack, backend deployed on Railway, frontend on Vercel.

Challenges I ran into

The biggest one: I couldn't get a live Paystack key approved in time, so real revenue flows were stuck on test mode until just three days before the deadline. That delay cascaded into everything else: countless bugs, and nearly three full days spent just getting LiveKit fully functional and stable for live seller sessions. It came down to the wire.

Accomplishments that I'm proud of

This is my first project that's grown into an actual startup attempt. 5 sellers onboarded. Building it forced me to go deep into tools I'd never fully used before, shadcn/ui, Node, Tailwind, LiveKit, Render, Redis + BullMQ. This hackathon is genuinely what pushed me to follow through and see it become real instead of staying an idea.

What I learned

Beyond the code, this project taught me what real production infrastructure actually looks like: deploying a backend on Railway and a frontend on Vercel, getting a site properly indexed on Google, buying and managing a domain through DNS. It's one thing to build something that runs locally; it's another to stand up the full standard infrastructure that makes a product actually reachable and reliable in the real world. I also picked up new tools I'd never used before, Resend for transactional email and Socket.IO for real-time features, which are now permanent parts of my toolkit.

What's next for SUMMAYH

SUMMAYH isn't stopping at Nigeria. The v2.0.0.0 plan is a global payments model, not just Stripe Atlas, but local mobile payment gateways worldwide, routed automatically through a master gateway that picks the lowest-fee, easiest path for each customer's region.

Built With

Share this project:

Updates

Submission history