Inspiration

We noticed that people often struggle to keep their rooms tidy and motivated. Cleaning can feel overwhelming when you don’t know where to start. We wanted to use AI to turn cleaning into something more manageable, by giving clear, actionable steps and feedback — almost like having a personal cleaning coach in your pocket.


What it does

task_cleaner helps users stay organized and keep their environment clean:

  1. Compare Completed Image – Users upload a “clean” photo of their space. The app compares it to a reference image using CLIP embeddings and returns a similarity score with encouraging feedback.
  2. Analyze Dirty Image – Users upload a messy room photo. A vision-language model (LLaVA) or YOLO detects clutter and generates personalized cleaning suggestions like “Make your bed”, “Put away dishes”, or “Clear the desk surface.”

The system responds with JSON, making it easy for our frontend (Kotlin app) to integrate.


How we built it

  • Backend: Django + Python REST endpoints (/compare-clean, /analyze-dirty).
  • AI Models:

    • CLIP (via sentence-transformers) for similarity scoring.
    • LLaVA (vision-language model) for descriptive cleaning suggestions.
    • YOLOv8 for lightweight object detection fallback.
  • Database: SQLite / MongoDB Atlas for storing embeddings and references.

  • Frontend: Kotlin app for users to upload images and receive instant feedback.


Challenges we ran into

  • Integrating large vision-language models (like LLaVA) into a lightweight backend — GPU requirements made deployment tricky.
  • Handling inconsistent output from generative models and normalizing it into clean, actionable suggestions.
  • Authentication and repo permissions slowed down development when collaborating.
  • Balancing between fast inference (YOLO) and rich feedback (LLaVA).

Accomplishments that we're proud of

  • Built a working prototype where users can get real-time cleaning suggestions from just a photo.
  • Designed a modular backend that supports both simple rule-based detection and advanced VLMs.
  • Made the system frontend-friendly, with consistent JSON output for Kotlin integration.
  • Learned how to coordinate as a team under time pressure and still ship two working features.

What we learned

  • How to integrate state-of-the-art vision-language models (LLaVA/BLIP-2) into practical applications.
  • The importance of API consistency across different AI strategies so frontend integration stays smooth.
  • How to manage version control and collaboration workflows in a hackathon setting.
  • That even “boring” use cases like cleaning can be gamified and made engaging with AI.

What's next for task_cleaner

  • Gamification: Add streaks, badges, and leaderboards for keeping spaces tidy.
  • Personalization: Adapt cleaning suggestions to user preferences and room layouts.
  • Lightweight Deployment: Optimize models for mobile or edge devices to avoid heavy GPU dependency.
  • Accessibility: Support multiple languages and voice feedback for broader usability.
  • Smart Home Integration: Connect with IoT devices (e.g., robotic vacuums) for automated cleaning actions.

Built With

Share this project:

Updates