Inspiration
As students, we kept hearing the same things from our friends and from ourselves:
- “I am so stressed, but I just push through.”
- “I only realise how bad it is when I burn out.”
- “I do not really know if I am coping well or not.”
We noticed that lots of mental health tools either feel too serious and heavy, or they are general wellness apps that do not really fit student life with exams, CCAs and late-night screen time. That gap inspired us to build something simple, fast and youth focused.
ZenFlow was born from a question:
What if checking our stress could be as quick as checking the weather?
What it does
ZenFlow is a web app that lets students:
- Do a quick stress check using mood, screen time and typing
- Get an instant stress score
- Receive small, realistic suggestions that they can act on immediately
For schools and youth organisations, ZenFlow can later provide anonymous trends to highlight when students are most overwhelmed.
How we built it
Tech stack
- Backend: Python with FastAPI for the stress score API
- Frontend: HTML, Bootstrap and JavaScript for a clean, responsive UI
- Tools: VS Code, browser dev tools, FastAPI Swagger docs for testing
Process
- We started by defining a simple stress formula combining mood, screen time and typing.
- We implemented this as a Python function, then wrapped it in a FastAPI endpoint.
- We tested our API using the FastAPI
/docsinterface with sample data. - We built a Bootstrap based frontend with a form that collects inputs and sends them to the API.
- The frontend displays the returned stress score and an intervention message from our logic.
Challenges we ran into
Environment setup
We ran into missing module errors in VS Code and had to learn how to manage Python interpreters and install packages properly.
Connecting frontend and backend
At first, our app and API felt like two separate worlds. We had to debug CORS issues and URL mistakes before the data flowed smoothly.
Balancing simplicity and usefulness
It was tempting to add many features, but we struggled to keep the app focused. We decided to prioritise a fast check-in and clear feedback rather than doing everything.
Designing the interventions
We had to be careful with our wording. We wanted supportive, gentle messages, not anything that sounded like blaming or giving medical advice.
Accomplishments that we're proud of
Getting a full stack working end to end
We started with just an idea, and now we have a running backend API and a frontend that talks to it, returns a score and shows a meaningful message.Building our first FastAPI service
For some of us, this was the first time using FastAPI and defining proper data models and endpoints. Seeing it all appear in/docsand actually respond with JSON felt like a big win. Creating a clean, youth-friendly UI
We did not just make a functional form – we used Bootstrap and thoughtful wording to create an interface that feels inviting, not clinical or intimidating. Turning a vague concept into a concrete formula
Stress” is a fuzzy idea. We are proud that we managed to design a simple scoring logic using mood, screen time and typing behaviour, and then implement it in code.
What we learned
- How to design a basic but meaningful scoring formula and turn it into code.
- How to build and test a REST API using FastAPI and Pydantic models.
- How to connect a frontend form to a backend using
fetchand JSON. - How important user experience is, especially when the topic is stress and mental well-being.
- That small details like wording and colours can change how “safe” an app feels.
What's next for Hackrift ZenFlow
Going forward, we want to:
- Tailor prompts more to student life, such as exam stress or project crunch weeks.
- Add basic history and trend views so students can see how their stress changes.
- Explore a school dashboard that shows anonymous trends to counsellors and student support teams.
ZenFlow started as a small hackathon experiment, but for us it is also a statement: youth mental well-being should be easy to check in on, not something we only think about when things get really bad.
Built With
- bootstrap
- css3
- fastapi
- html5
- javascript
- pydantic
- python
- swagger
- uvicorn
- vscode
Log in or sign up for Devpost to join the conversation.