What it does
Living in a hall often means playing a guessing game with laundry: walking down or up several flights of stairs only to find every machine occupied—or worse, finding a machine finished but still full of unclaimed clothes. RHaundry was inspired by the need for a community-driven, transparent system that replaces frustration with accountability and a bit of hall-style humor.
What it does
RHaundry is a real-time laundry management ecosystem that allows residents to track machine availability across all blocks and set timers for their own loads. The app features a gamified leaderboard that rewards on-time collections (+1) and penalizes late behavior (-1) to keep the laundry cycle moving. To keep things social, an in-app chat—powered by the OpenAI API— to illicit a mock response from residents to coordinate. Users can send "nudges" to one another regarding machine usage. For notifications, I implemented Nodemailer (Gmail SMTP) to send automated email alerts the moment a machine cycle is completed. I also introduced hCaptcha – Human verification for critical forms (registration, login, messaging) to reduce spam and abuse, for login and registration.
How I built it
The platform’s frontend is built with React/Next.js, featuring a dark-themed UI inspired by the Raffles Hall green and black aesthetic.
Challenges I ran into
One of the primary technical challenges was managing the logic for "overdue" states—ensuring the timer accurately transitions from a standard countdown to a "late timer" the moment a cycle ends. I also focused on perfecting the UX for machine selection, ensuring residents can only book the specific machines they are using to maintain data authenticity and prevent system "hogging".
Accomplishments that I am proud of
I am particularly proud of the social accountability aspect. RHaundry transforms a mundane chore into a fun, competitive environment where being an "on-time legend" like Koon Wei (67 points) earns you a top spot on the leaderboard.
What I Learned
Building this project provided deep insights into real-time state management and the importance of localized UX. I learned how to bridge the gap between a web application and a user's attention by utilizing Nodemailer for critical email alerts and OpenAI to create a more engaging, interactive community chat experience.
What's next for RHaundry
The next phase includes integrating machine-learning-based "busy time" predictions to inform residents of the best times to do their laundry. I am also exploring an expanded reward system, potentially partnering with hall committees to offer real-world perks for the most punctual residents on the leaderboard.
Built With
- api
- cors
- dotenv
- express.js
- framer
- frontend
- javascript
- lucide
- nodemailer
- openai
- react
- tailwind
- tanstack
- typescript
- ui
- vite
Log in or sign up for Devpost to join the conversation.