This is a submission for the Hacktoberfest Open-Source AI Challenge: Week 3 – Slow and Steady.
What I Built
Slothstep is a tiny web app for the thing sloths do best: not panicking.
You type whatever you keep putting off ("clean the whole flat before Saturday", "write that difficult email to my boss", "sort the files on my laptop") and an open-weight model answers with exactly three steps:
- one you can start right now and finish in two minutes or less,
- one that follows naturally,
- one that finishes the job.
Every step has a realistic time estimate, and you can tick them off as you go. The point is not a perfect plan. The point is that the first step is so small there is no excuse left not to start.
The effort it saves: the hardest part of a dreaded task is rarely the task, it is the staring. Slothstep replaces "where do I even begin?" with one concrete, two-minute action. (On my machine a plan takes about 25 seconds to generate with a 4B model.)
Demo
- Live app (demo mode with sample plans, because a free host cannot run a model): https://slothstep.onrender.com/
- Real thing: clone the repo,
ollama pull gemma3:4b,pip install -r requirements.txt,python app.py - Code:
banana0000 / slothstep
Slothstep: turn a task you keep putting off into three tiny steps with an open-weight model (Gemma 3 + Ollama). Dash app.
🦥 Slothstep
Describe a task you keep putting off and get three tiny, realistic steps. The first one takes two minutes or less, so there is no excuse left not to start.
Built for the Hacktoberfest Open-Source AI Challenge (Week 3: Slow and Steady) with an open-weight model (Gemma 3) served by Ollama.
Live demo: https://slothstep.onrender.com
Features
- Three steps with time estimates, validated so the model cannot return malformed plans
- Tick steps off as you go
- Light and dark mode (remembered in the browser)
- A badge showing whether the model server is running
- Runs fully offline with a local model, or against any OpenAI-compatible host serving an open-weight model
Stack: Dash + Dash Mantine Components, Python.
Run locally
ollama pull gemma3:4b pip install -r requirements.txt python app.pyOpen http://127.0.0.1:8050.
Configuration
…
Variable
Default
Purpose
OLLAMA_MODEL
gemma3:4b
Model name (Ollama tag, or model id on
The free host may take about a minute to wake up on the first visit.
How I Built It
- UI: Dash with Dash Mantine Components (light and dark mode), a single Python file.
- Model: Gemma 3 (4B) running locally through Ollama. The same code can also talk to any OpenAI-compatible host serving an open-weight model. The free hosted demo runs in a clearly labelled demo mode with sample plans, since a free host cannot run a model.
- Reliable output: the model is asked for JSON only, then the app validates it (exactly three steps, non-empty text, positive integer minutes) and shows a friendly error instead of garbage if the model misbehaves.
- Prompting: low temperature, a hard limit of two minutes for step one, and an explicit "do not invent missing details" instruction so it doesn't hallucinate a kitchen you don't have.
-
Deploy: a
render.yamlBlueprint for a free Render web service running withDEMO_MODE=true. A real model needs a private Ollama service on a paid instance, which the repo'sollama/Dockerfilesupports.
Why Open Innovation Matters Here
What people procrastinate on is personal: unanswered emails, messy folders, awkward conversations. I don't want those sent to a closed API.
- Private by default: run it locally and your to-dos never leave your machine.
- Works offline: no internet, no problem. Ollama and a 4B model are enough.
- Set up once, free forever: no subscription, no per-token bill for something you use ten times a week.
- Swappable: because Slothstep speaks both Ollama and the OpenAI-compatible API, moving from a local Gemma to a hosted open-weight model is two environment variables, not a rewrite.
A closed model might write slightly nicer sentences. But for a three-line plan, a small open model is more than good enough, and I keep control of my data.
Prize Categories
- Best Use of Gemma: Gemma 3 is the model at the core of the app.
-
Best Use of Render: the app is deployed from a
render.yamlBlueprint.
Thanks for reading, and please take it slow. 🦥


Top comments (0)