The Baddie Stack π πΎπ±β¨οΈ
thebaddiestack.tech/grocery-essentials
The Grocery Essentials Workflow
A GitLab pipeline that checks what's actually low, sorts it by store, and lands a ready-to-shop note in Obsidian before you've had to think about it β because "just restock the basics" was never actually just anything.
I'm a spoonie. Hydration, real nutrition, and the supplements that keep my chronic conditions from running the whole week aren't extras for me β they're foundational infrastructure. Which makes the grocery run a recurring dependency, not a chore: skip it, forget an item, or get the order wrong, and the week feels it.
For a long time, that dependency lived entirely in my head β a rotating mental list of what's low, which store carries it, and which backup store to hit if the first one's out. Grocery Essentials (WF-01) is what happens when you stop asking a body with a limited energy budget to also be the inventory system. It's the first workflow in a suite I'm building precisely because "the basics" shouldn't cost this much to maintain.
1 The tax nobody puts on a to-do list
Chronic illness has plenty of visible costs. This is one of the quiet ones β the overhead of tracking and re-deciding the same handful of essentials, on repeat, indefinitely.
- Knowing what's actually low before you're already out of it.
- Knowing which store carries it, and which backup store to use if the first one doesn't have it.
- Not re-litigating the same decision every few days when it's really the same short list on repeat.
- Doing all of this on the schedule a body sets β not the one a generic to-do list app assumes everyone runs on.
2 What it actually does
Not a shopping bot. A decision-maker that refuses to guess.
- Every foundational item lives in one config β tagged critical or not, with a primary store and a fallback.
- If a critical item's status isn't confirmed, the whole run stops and flags it. It fails closed, on purpose, instead of quietly shipping a list that's wrong.
- Once everything critical checks out, it groups the confirmed items by store, in priority order β primary store first, fallback only if the primary's unavailable.
- It writes one clean, ready-to-shop note. Not a spreadsheet. Not a scavenger hunt through three apps.
3 Where it lives
The unglamorous plumbing, for the people who like to see it.
- Config and inventory live in Obsidian β the vault is the source of truth, not the code.
- A GitLab CI/CD pipeline runs the check on a schedule, using a local runner so the result can land directly in the real vault instead of a build log nobody opens.
- The output shows up as a note that's already organized, waiting the next time the vault is open.
4 What actually changed
Specific, not inspirational β "it changed my life" isn't information.
- The list is already organized by the time it's opened, instead of being rebuilt from memory every few days.
- Nothing on the critical list gets missed quietly β if something's unconfirmed, the workflow says so instead of guessing.
- Restocking went from a recurring decision to a recurring review: smaller, faster, and far less taxing on a limited energy budget.