Inspiration
We were inspired by how hard it can be to adjust to life in a completely new place and living with a virtual stranger. We wanted to automate the small things that help make your living situation as easy to adjust it as possible, while also keeping all roommates accountable for the necessary tasks of a shared living space.
What it does
It allows members to join in a "room" where they and their roommates can use key features such as the task-builder and the shared status page. The task-builder allows the assigner to build a task and set it on a rotational basis to be assigned to varying members of the room at varying frequencies. It is meant to subsequently send email and in-app notifications about the task to the assignee. This allows all tasks to be evenly divided and with all expectations and deadlines clearly laid out; this forces everyone to complete their given task, without others having to confront them or cause unnecessary conflict. The shared status page allows roommates to notify one another about their current status which includes Not Home, Sleeping, and Studying. Every roommate sets their status to keep the others in loop and it allows everyone to be mindful of others and be aware of anything related to room usage in real-time.
How we built it
We started off with creating an end-to-end design for the user's experience, using ourselves as models. We did the visual mock-ups using Figma, and for the program itself, we decided to use Flutter to build across various platforms. To go along with Flutter, we are coding in Dart. Firestore is used as the backend database, where the room code is as well as all the tasks made in each room.
Challenges we ran into
Figuring out the intricacies of the design and how the user would use it was our first and longest challenge. We didn't want to overwhelm them with options that they had to manually change, but we also didn't want to strip it of any functionality.
For our newer programmers, they had to essentially learn a new data framework (Dart) from scratch and understand how to map the appropriate widgets to work with the appropriate image elements For our experienced programmers, the biggest concern was ensuring that the app would update in real-time without the user having to refresh the app itself.
Our last challenge was time itself. We weren't able to implement everything we had initially planned and we probably could have distributed our time more evenly to various stages of development.
Accomplishments that we're proud of
We are especially proud of the app design and the control flow because we were able to make it usable and practical for the users. We are proud of how we tackled all of our challenges and of the entire learning process. Although we weren't able to complete everything we set out to do, we learnt a lot in the process.
What we learned
We learned about app design/development, what a good user interface looks like, how to manage our work and ultimately how to share our work with the public.
What's next for CleanSweep
Increasing the functionality is our next big hurdle. We want it to be a hub for roommate activity, so we hope to implement more features that make it easier to use and help automate the little tasks.
Tracks
Main Track: Automating for Meaning Side Track(s): Best College Life Hack
Log in or sign up for Devpost to join the conversation.