Stillroom: An AI Document Inbox That Sorts and Waits
Stillroom is a local document inbox app powered by Groq's open-weight model, developed for the Hacktoberfest Open-Source AI Challenge.

Stock photo for illustration only, not from the actual event
- Stillroom is a local document management system that automatically sorts PDF, TXT, Markdown, and CSV files.
- It is powered by Groq (openai/gpt-oss-120b) to propose categories, titles, dates, tags, and archive paths.
- Users must review, approve file moves, and can use an Undo function to restore original states at any time.
- Built using Vue 3 and FastAPI, with all activity logs securely stored in a local SQLite database.
Computer download folders frequently accumulate unorganized files where repetitive tasks like reading, renaming, and filing become tedious chores. To address this friction, developer Iadii created Stillroom as a submission for Week 3 of the Hacktoberfest Open-Source AI Challenge under the Slow and Steady theme.
Stillroom acts as a local document inbox. Users can drop PDF, TXT, Markdown, or CSV files into the system, where an open-weight AI model proposes a category, useful title, document date, summary, tags, and an archive path. Crucially, the model must also copy an exact quote from the file to justify its sorting decision, allowing users to inspect the original text side-by-side with the proposal before giving approval.
The deliberate pause is a core design philosophy of the application. While repetitive reading and naming are automated, the consequential file movement remains strictly under human control. The app also supports batch analysis and filing after proposals have been vetted. A 25-second walkthrough video demonstrates file uploading, live Groq classification, source quote verification, title correction, approval, archiving, activity history, and the Undo function.

Stock photo for illustration only, not from the actual event
From an architectural standpoint, Vue 3 provides the user interface for the inbox, proposal reviews, archive searches, bulk actions, and the activity trail. The backend relies on FastAPI, which extracts text locally and transmits up to 30,000 characters to Groq's hosted openai/gpt-oss-120b model using strict JSON schema output. Python scripts verify that the model's evidence quote genuinely exists in the extracted text and that proposed dates parse correctly.
Requiring the AI model to cite verifiable evidence quotes from the source text is a robust design pattern that mitigates hallucinations in generative workflows. By decoupling model inferences from direct filesystem manipulation—requiring explicit human approval for every move—Stillroom ensures automation assists without taking dangerous autonomous shortcuts.
Metadata and event logs are stored in SQLite, while original files remain staged locally. The model is never permitted to choose filesystem paths directly; instead, the server constructs paths using fixed categories and sanitized titles. Identical uploads are rejected via SHA-256 hashing, filename collisions are handled with numerical suffixes, and any edit clears prior approvals to maintain strict data integrity.
Source: Dev.to
Found something wrong in this article? Report an issue with this article
Comments
Leave a Comment