This is a submission for the Hacktoberfest Open-Source AI Challenge Week 2: Side Hustle
What I Built
Small businesses deal with messy spreadsheets every day. Supplier lists, inventory records, and business data often contain duplicate entries, inconsistent categories, missing values, incorrectly formatted dates, and numbers stored as text.
Cleaning this data manually takes time, and uploading sensitive business information to an external AI service isn't always an option.
That's why I built Patchwork AI — an open-source, local-first Windows desktop application that helps users identify, understand, and repair messy spreadsheet data.
Instead of sending spreadsheet contents to a cloud AI API, Patchwork AI combines deterministic data profiling with locally running AI models. The application can analyze data-quality issues and suggest transformations while keeping the user in control of the changes.
What makes Patchwork AI different?
- Local-first AI: Integrates with Ollama to run supported open-weight models locally.
- Deterministic data profiling: Identifies common data-quality issues without requiring an AI model.
- Spreadsheet support: Imports and exports CSV and Excel files.
- AI-assisted suggestions: Helps with column mapping and category normalization.
- Human-in-the-loop workflow: Users can review proposed changes before applying them.
- Safer transformations: The original file is preserved rather than intentionally overwritten during export.
- Reviewability: Includes change history and undo functionality to make data-cleaning decisions easier to inspect.
The goal is simple: make useful AI-powered data cleaning accessible to people who don't want to depend on cloud APIs or send their business data to external AI providers.
Demo
Watch the demo:
In this walkthrough, I demonstrate Patchwork AI using a deliberately messy supplier and inventory spreadsheet.
The dataset contains inconsistent category names, mixed date formats, extra whitespace, missing values, duplicate-like records, inconsistent currency formatting, and invalid email addresses.
The demo walks through importing the spreadsheet, identifying data-quality issues, reviewing proposed fixes, and exporting the resulting data.
The aim is to show how Patchwork AI can make a spreadsheet that needs manual attention easier to inspect and clean.
Code
GitHub repository: https://github.com/Shade555/patchwork-ai
Patchwork AI is open source and released under the Apache License 2.0.
The repository includes the application source code, setup instructions, a sample dataset, and tests.
Contributions, bug reports, and suggestions are welcome!
How I Built It
I built Patchwork AI as a native Windows desktop application using C#, .NET 8, and WPF.
The project is organized into separate components for the desktop interface, data profiling, AI integration, transformation planning, transformation execution, and file import/export.
The main technologies include:
- C# and .NET 8: Core application logic and desktop application runtime.
- WPF and WPF-UI: Native Windows interface.
- CommunityToolkit.Mvvm: MVVM architecture and application state management.
- ClosedXML: Excel workbook processing.
- CsvHelper: CSV file processing.
- Ollama: Local inference through a locally running model.
- xUnit: Automated testing.
One of the important design decisions was to avoid making the AI responsible for every operation.
Data-quality issues such as missing values, whitespace, duplicates, and inconsistent formatting can often be detected deterministically. These checks do not require an LLM.
AI is used where it can add value, particularly when interpreting ambiguous column names or suggesting how inconsistent categories should be normalized. The application provides a workflow for reviewing proposed transformations before applying them.
This separation makes the system more predictable than an approach where an LLM directly rewrites an entire spreadsheet.
I also included a synthetic supplier-inventory dataset so that people can test the application without needing to provide their own business data.
Why Does Open Innovation Matter?
AI should not be limited to people and businesses that can afford cloud subscriptions or are comfortable sending their data to external services.
Open-source tools allow developers to inspect how an application works, modify it for their own needs, and contribute improvements. Open-weight models and local inference also create opportunities to build AI applications without sending every request to a third-party AI provider.
Patchwork AI brings these ideas into an everyday workflow: spreadsheet cleaning.
A small business should be able to explore AI-assisted data cleaning while maintaining greater control over its files. A developer should also be able to inspect the code and extend the tool rather than being locked into a proprietary service.
There is still work to do, especially around handling more complex spreadsheets, improving transformation suggestions, and expanding test coverage. Making the project open source means those improvements can happen collaboratively.
For me, open innovation means making practical technology more accessible, understandable, and adaptable.
My Agent Session
I used an AI coding assistant during development to help with implementation, debugging, and refining the application architecture.
The development process involved separating deterministic data checks from AI-generated suggestions, organizing the application into maintainable services, and testing the spreadsheet import and transformation workflow.
This helped me iterate on the project while keeping the code organized into smaller, more maintainable components.
My First User
My first test user was me.
I tested Patchwork AI using a synthetic supplier and inventory spreadsheet containing intentionally introduced data-quality problems. This allowed me to evaluate the import, profiling, transformation-review, and export workflow without exposing real business information.
The test dataset also makes it easier for other developers to reproduce the same scenarios and verify how the application behaves.
The next step is to get feedback from someone who regularly works with spreadsheets, especially someone managing inventory, suppliers, or small-business operations. Their feedback will help identify which data-cleaning features are genuinely useful and which parts of the workflow need improvement.
Prize Categories
Featured Categories
Best Use of Gemma — $200
Patchwork AI is designed to support local inference through Ollama, and Gemma can be used as the local model for AI-assisted spreadsheet analysis and transformation suggestions.
Thanks for organizing the Hacktoberfest Open-Source AI Challenge. Building Patchwork AI has been an opportunity to explore how local AI can solve a practical problem while keeping the user in control of their data.
Top comments (0)