Pigritia:Hacktoberfest ’26 開源 AI 挑戰第三週作品
Pigritia - Hacktoberfest '26
Pigritia 是為 Hacktoberfest Open-Source AI Challenge Week 3 打造的本機 AI 工具集,以單一 HTML 檔案連接 Ollama 和開放權重 Gemma 模型,提供四種日常助手。郵件與羣組訊息整理、雪櫃清單、睡前故事及檔案分類均在本機運作,毋須後端、帳戶或 API 金鑰;訊息、相片和檔名不會離開電腦。
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
Pigritia (Latin for sloth, in the laziness sense) is a set of four lazy-day helpers that run entirely on my own machine. It's a single HTML file that talks to Ollama and Gemma. There's no backend, no account and no API key.
-
Autopilot: paste an email thread, meeting notes or a group chat. It gives back a short summary with a priority tag, the questions waiting on me, a task list with owners and due dates, a drafted reply in the tone I pick, and a calendar file (
.ics) for anything with a deadline. - Fridge list: photograph the fridge and get a tickable shopping checklist, so nobody has to stand there with the door open.
- Wind down: a calm bedtime story, read aloud, with generated rain, ocean or forest sound underneath. It works offline.
-
File tidier: paste or pick messy file names and get a rename-and-sort plan, plus a ready-to-run
.shor.ps1script. Only names are read, and nothing moves until I run the script myself.
The people who get to be lazier are anyone who drowns in group chats and inboxes, hates writing "sounds good, I'll send that Friday" for the hundredth time, or has a Downloads folder full of final_FINAL_v2.pdf.
Demo
Pigritia calls Ollama on localhost, so a hosted copy can't reach a visitor's own model. A short screen recording is the honest way to show it. The repo has setup instructions if you want to run it yourself.
Code
Pigritia
Experience AI core but slow and steady.
Pigritia is a small set of lazy-day helpers that run entirely on your own machine. It is a single HTML file that talks to Ollama and an open-weight Gemma model. There is no backend, no account, no build step and no API key. Your messages, photos and file names never leave your computer.
Built for the Hacktoberfest Open-Source AI Challenge Week 3: Slow and Steady
Contents
- What it does
- Why open models
- Requirements
- Quick start
- The site, section by section
- Using each tool
- How it works
- Privacy and data handling
- Choosing a model
- Troubleshooting
- Limitations
- Customising
- Project structure
What it does
| Tool | You give it | You get back |
|---|---|---|
| Autopilot | An email thread, meeting notes or a group chat | A short summary, a priority tag, questions waiting on you, a task list with owners and due dates, a calendar file and a drafted |
…
The whole app is one file, pigritia.html, plus a detailed README.
How I Built It
-
Model: Gemma, an open-weight model, served by Ollama. Everything runs through two Ollama endpoints:
/api/tagsto list installed models and/api/chatfor generation. - Streaming for free text: the fridge list and the bedtime story stream token by token, so the text appears as it's written.
-
JSON mode for structured work: Autopilot and the File tidier ask Ollama for
format: "json"at a low temperature. They parse the result into tasks, a reply, or a rename plan. The page checks the plan before showing it, discarding file names the model made up. - Vision: the fridge photo is shrunk in the browser and sent as a base64 image to a vision-capable Gemma.
-
Everything else is the browser:
speechSynthesisreads the story aloud, the Web Audio API generates the ambient sound, and Blob downloads produce the scripts and calendar files. There are no dependencies, no build step and no external fonts or scripts. - Design: a vertical sidebar, serif type, and a line-art sloth hanging from a branch.
Why Does Open Innovation Matter?
Three of the four tools handle things I wouldn't paste into someone else's server: my work email, my group chats and photos of my kitchen. With an open-weight model on Ollama, that data goes to localhost and nowhere else. You can check this in the browser's network tab.
- It works offline. Once the model is pulled, no internet is needed. The story, the sounds and the voice all work with the Wi-Fi off.
- Nothing is metered. A tool you use without thinking can't have a per-token bill hanging over it.
- The model is swappable. Setup lists whatever Ollama has installed. A smaller model works on an old laptop, and a larger one gives better replies. Nothing in the app is tied to one model.
- The behaviour is mine to change. Every tool's prompt is plain text in one readable file, so I can change the tone, the rules or the output format without asking anyone.
A closed API could do the summarising. It couldn't do it privately, offline and for free, all at once.
The Lazy Payoff
I measured this by counting what I no longer do by hand, not by stopwatch.
-
Autopilot replaces four chores: reading a long thread to find what's being asked, writing down the tasks, putting the deadlines in a calendar, and drafting the reply. Now I paste the text and press one button. The calendar step is one
.icsdownload that imports every dated task at once. - File tidier replaces renaming and sorting files one at a time. I paste or pick the names, check the before and after table, and run one script. The script never overwrites an existing file, and I read the plan first.
- Fridge list replaces standing at an open fridge and typing a list into my phone. I take one photo and tick items off at the shop.
- Wind down replaces searching for a bedtime story or a sound track. I type an idea, press one button, and it reads the story aloud over rain.
I pasted a 40-message family group chat about a trip and got back three tasks and a drafted reply; it took about 2 minutes including a quick read-through.
Prize Categories
Best Use of Gemma. Gemma is the model behind every tool in Pigritia, running locally through Ollama:
- Text generation: streamed bedtime stories and fridge lists.
- Structured output: Autopilot and the File tidier ask Gemma for JSON at a low temperature and turn it into tasks, a drafted reply, calendar events and rename scripts.
-
Vision: the Fridge list sends a photo to a vision-capable Gemma, such as
gemma3:4bor larger, so one open model handles both text and images. - Swappable size: a smaller Gemma works on a modest laptop and a larger one gives better replies, all through one dropdown in Setup.
來源:DEV Community · dev.to

