Inspiration

As college students, we're constantly downloading, making, and saving new files. Because of this, some file folders can get pretty messy pretty quick. We commonly had duplicate files, files placed in the wrong folder, and other general clutter. Since we didn't want to take the time to go through and sort out our folders ourselves, we instead created Declutter AI.

What it does

Declutter AI sorts the files in a given folder and sorts them based on user defined criteria. Additionally it will locate duplicate files and sort them into a folder for you to manage.

How we built it

Using python, we compile some of the metadata of the files in a selected folder into a JSON file, for example name and file type. Then, the user can chat with Gemini using the Gemini API and work with Gemini to determine the best way to sort given files. The chat history is fed to Gemini so that it has context for the final sorting. Using, the chat history and another prompt which we told it to sort the files based off of chat history, Gemini will create its own JSON file and send that back for use in the python script. From this JSON file the python script will create and populate folders with the corresponding files. Additionally, duplicates which are noted by identical files will be populated into a separate duplicates ZIP file for the user to handle.

Challenges we ran into

We wanted to use Gemini to also handle the duplicates and to put them into the zip folder, however for some reason Gemini would only focus on creating the duplicates folder and would no longer organize the other files in the folder, which was suboptimal as this was sort of our whole goal with the project. To address this we used hashlib and uses hashes to determine if files were exactly the same, and thus duplicates. However, this only works for certain file types and thus isn't the best for detecting duplicates. Additionally, for large folders, Gemini can take a while to respond and sort through all the files.

Accomplishments that we're proud of

Mostly we're proud that we were able to take our idea and actually implement it. Additionally, we were proud of the design and aesthetics of the program. We took some time to make custom pixel art, which came out looking pretty nice. We're proud that this is actually a practical tool and that we were able to make it work with Gemini.

What we learned

We learned on how much of the heavy lifting Gemini can do for you. By taking time to craft our prompts to Gemini in a way that would give us the result we wanted rather than trying to program it in some other way, we were able to achieve the result we wanted quickly.

What's next for Declutter AI

In the future, giving Declutter AI access to more of the metadata, for example, modified date, created date, author, would help Declutter to work with even more specific prompts. Additionally, in the future, allowing Declutter to analyze the contents of the files, for example if you had a file full of pictures and wanted to ask Declutter to sort your files based on who you're with in the picture, that'd be really cool and practical.

Built With

+ 3 more
Share this project:

Updates