-
-
Once Joined Participant waiting
-
Login/Signup Form
-
Participant View on joining a room
-
UI seen by candidate to answer a poll
-
Candidate answering the question, they don't know if they answered right or wrong
-
Host View on joining a room
-
A call to action to test our our product
-
Form to create polls that host can use
-
Management of Realtime rooms for polls
-
Features section on landing page
-
Question catalog management screen
-
Interactive Hero section of our page
-
A Question is selected in the form to create polls
-
Room Share popup menu
-
Why we built this tool, What is the problem we solve?
-
Host viewing the results for that poll
Inspiration
Online classes were… Let’s be honest, hell. A Zoom call where the teacher talks endlessly, and the “interaction” happens on WhatsApp. One person answers; everyone else just copy-pastes.
And I’ll never forget this: once, the first student answered completely wrong. The teacher then went, “See? The whole class is wrong.” That was the vibe.
Even offline it’s no better. We’ve all had that moment: you don’t dare ask a question because you think it’s stupid, and the teacher doesn’t want to embarrass you by making you stand and recite what you “learnt”.
So here’s the fix: an anonymous, quick poll. No judgement, no awkwardness. Teachers can actually know if students understand, and if they don’t, the teacher just re-explains. Simple.
What it does
Learnysvia lets teachers:
- Prepare question catalogs in advance
- Launch quick polls mid-class with a single click
- Get instant, anonymous feedback If students don’t get it → explain again. If they do → keep moving. No drama, no delay.
How we built it
Built by one sleep-deprived guy with a day job, college, and a terrible habit of coding from 12 AM to 6 AM. Fuelled by coffee, chocolate, chaos, and sheer spite against boring classes.
Challenges we ran into
Oh boy.
- WebSockets: syncing users in real time nearly broke me. I had to build signals, announcements, and other Frankenstein hacks.
- Deployment: WebSockets need a server, and of course, cross-origin auth decided to join the party. Originally optimised for proxy environments, I had to rewire everything.
- Basically: everything fought me.
Accomplishments that we're proud of
- It works. Like, really. That alone is worth celebrating.
- Used a new backend framework (Elysia) and a new DB (Turso).
- Built a full-stack app without the “crutches” of Next.js/Nuxt.
- First project using Bun, Docker, Google Cloud Run, and Firebase hosting together.
- It’s polished enough to go into my portfolio. Normally, my projects implode right before the finish line (game jam trauma), yet they get finished somehow. And it got finished this time as well; I don't know how.
What we learned
- Don’t use a brand new tech stack under a deadline. (Will I do it again? Yes, I’ll do it again.)
- How to wrangle WebSockets, Better Auth, Turso, Bun + Elysia, Cloud Run, and Firebase.
- Basically, a 3rd crash course in building a real-world full-stack app.
What's next for Learnysvia
- Landing on my portfolio
- More polish
- Winning this hackathon (hopefully 🤞)
Built With
- betterauth
- bun
- elysia
- react
- turso
- vite
- websocket
Log in or sign up for Devpost to join the conversation.