Inspiration
Bloom was inspired by the idea that student wellness should feel personal rather than clinical. Many habit tracking apps focus on numbers and streaks, but they often lack warmth and encouragement.
I wanted to build a companion that students could interact with every day—a small, friendly presence that encourages healthy habits through simple daily check-ins instead of overwhelming dashboards.
My goal was to create an application that feels more like talking to a supportive friend than filling out another form.
What it does
Bloom is a student wellness companion that guides users through a quick daily wellness check-in and stores their progress locally.
Users can:
- Complete a multi-step daily wellness check-in
- Personalize their companion by giving it a custom name
- Receive encouraging messages based on their daily responses
- View a summary of today's habits
- Review previous wellness check-ins in a clean history timeline
- Continue using the application without creating an account thanks to LocalStorage
How I built it
I built Bloom as a frontend web application using HTML, CSS and vanilla JavaScript.
The application uses LocalStorage to persist user information, onboarding progress and wellness history without requiring a backend.
I designed the interface with a calm, nature-inspired aesthetic using soft colors, rounded cards and friendly illustrations. JavaScript manages the onboarding flow, page navigation, daily check-ins, personalized wellness messages and history rendering.
Challenges I ran into
One of the biggest challenges was organizing the application's state while keeping everything inside a frontend-only project.
Managing onboarding, preventing duplicate daily check-ins, generating personalized wellness messages and rendering historical wellness data required careful planning.
Design consistency was another challenge. I spent multiple iterations refining spacing, typography, colors and layouts so the application felt calm and welcoming instead of looking like a traditional productivity tracker.
Accomplishments that I'm proud of
I'm proud that Bloom feels like a real product instead of a simple CRUD application.
Some highlights include:
- A complete onboarding experience
- Personalized companion naming
- Dynamic wellness messages based on user responses
- Daily summary dashboard
- Wellness history timeline
- Responsive user interface
- Clean, beginner-friendly JavaScript architecture using LocalStorage
What I learned
Building Bloom helped me understand how to structure larger frontend applications without relying on frameworks.
Throughout the project I improved my understanding of:
- DOM manipulation
- LocalStorage
- Multi-step application flows
- State management in vanilla JavaScript
- UI and UX design principles
- Writing cleaner and more maintainable JavaScript
What's next for Bloom – Student Wellness Companion
I plan to continue developing Bloom by adding:
- AI-powered personalized wellness insights
- Weekly and monthly wellness analytics
- Habit streaks and achievement badges
- Mood trends with charts and visualizations
- Secure cloud synchronization
- User authentication
- A React frontend with a Node.js and MongoDB backend
- Notifications and reminders for daily check-ins
Built With
- css
- html
- javascript
- localstorage
Log in or sign up for Devpost to join the conversation.