DEV Community

Dhamith Kumara
Dhamith Kumara Subscriber

Posted on

TidyMate - Local AI File Organizer

Hacktoberfest Open-Source AI Challenge Week 3: Slow and Steady Submission 🦥

This is a submission for the Hacktoberfest Open-Source AI Challenge Week 3: Slow and Steady

What I Built

TidyMate is a local-first AI-assisted file organization tool that helps you clean up folders you've been ignoring.

The idea is simple:

Pick a folder → Scan → Let local AI suggest an organization → Review → Approve → TidyMate organizes the files.

TidyMate uses Gemma 3 4B through Ollama to suggest useful filenames and folder structures based on file metadata.

The AI does not directly modify the filesystem.

Instead, TidyMate:

  1. Scans the selected folder.
  2. Sends safe file metadata to the local AI.
  3. Generates organization suggestions.
  4. Lets the user review and select the changes.
  5. Re-checks the files on the server.
  6. Applies only the approved changes.

No files are deleted or overwritten.

Who gets to be a little lazier?

Anyone who has a Downloads, Documents, project, or other folder full of files they keep saying:

"I'll organize this later."

TidyMate is for that person.

Demo

project

Demo preview

Demo Flow

Local Folder
     ↓
Scan Files
     ↓
Gemma 3 4B
     ↓
AI Organization Suggestions
     ↓
Review Suggestions
     ↓
Select Changes
     ↓
Confirm
     ↓
Safe Server-Side Re-check
     ↓
Organized Files
Enter fullscreen mode Exit fullscreen mode

Code

GitHub Repository

TidyMate — GitHub

How I Built It

TidyMate is built around open-source AI running locally.

AI

  • Gemma 3 4B
  • Ollama
  • Local inference
  • Structured JSON output
  • Zod schema validation

Gemma receives only the information it needs to make an organization decision, such as:

  • Filename
  • Extension
  • File type
  • File size
  • Modified date
  • Relative path

It does not receive absolute filesystem paths or file contents.

Application

  • Next.js
  • TypeScript
  • Tailwind CSS
  • shadcn/ui
  • Zod
  • Vitest
  • Ollama

Architecture

Browser
   │
   ▼
Next.js Server ──────► Ollama / Gemma 3 4B
   │                         │
   │◄──── Suggestions ──────┘
   │
   ▼
Review + Fresh Validation
   │
   ▼
Local Filesystem
(Move / Rename only)
Enter fullscreen mode Exit fullscreen mode

A major design principle was:

AI suggests. The server validates. The user approves.

Why Does Open Innovation Matter?

TidyMate would be a very different application if it depended on a closed cloud AI API.

Using an open-weight model such as Gemma with Ollama makes local AI practical for this use case.

The user's file organization workflow can happen on their own machine instead of sending their file metadata to a remote AI service.

This provides several benefits:

  • No commercial AI API is required.
  • File metadata can remain local.
  • The AI model can be replaced.
  • Prompts can be customized.
  • The validation layer can remain independent from the model.
  • The project can be inspected and modified by other developers.

Open innovation gives the developer and user more control over both the model and the data flowing through the application.

The Lazy Payoff

TidyMate is designed around one simple principle:

Don't make people organize their files manually when AI can suggest the boring part.

Instead of repeatedly:

Find file
   ↓
Decide where it belongs
   ↓
Create folder
   ↓
Rename/move file
   ↓
Repeat...
Enter fullscreen mode Exit fullscreen mode

TidyMate turns the process into:

Scan
  ↓
Review
  ↓
Approve
  ↓
Done
Enter fullscreen mode Exit fullscreen mode

The goal isn't to remove the user's control.

It's to remove the repetitive work.

Prize Categories

  • Best Use of Gemma

Top comments (0)