Pourya Shahroudi
  1. Home
  2. Work

Two systems I built and run outside work

Both have to keep working with nobody watching them. One is a set of scheduled jobs that alerts a person only when something needs action. The other is a Chrome extension that works with nothing but what ships inside it.

  • Scheduled jobs on a Raspberry Pi
  • A Chrome extension on the Web Store

La Bouchée

More than 20 scheduled jobs that alert only when a person is needed

A made-to-order French bakery in Los Gatos

I built its website in December 2024 and have run the technical side of the business since. The site is static, with a page for each product and service, a quote form for orders, and structured data so search engines and AI assistants read the menu correctly.

Behind it, more than 20 scheduled jobs on a Raspberry Pi at home keep the site found, listed and watched, with tests that run in CI on every change. Anything an LLM writes for customers is a draft until a person approves it, the watchdog uses no LLM at all, and an order pipeline was measured against the real orders and switched off.

Stack
Python, LLM agents, Google Search Console and Business Profile APIs, SQLite, GitHub Actions
Runs on
A Raspberry Pi at home, on a schedule from every 30 minutes to once a quarter
Links
The case study, with the schedule and the diagram of where the LLMs sit. The site itself is labouchee.us.

Read the case study

Taqvim

A Persian calendar for Chrome that never touches the network

A Chrome extension, published on the Chrome Web Store in 2026

Taqvim is a Persian (Jalali) calendar for Chrome. The month grid shows Persian dates first and Gregorian dates as secondary labels, with optional Hijri dates. There is a converter between Jalali, Gregorian and Hijri, a card with the current time and date in Tehran, and a toolbar badge that shows the local day and is refreshed by a midnight alarm. The interface is mostly in Persian and reads right to left.

Everything it needs ships inside it: the holiday data, the fonts and the conversion math. It makes no network requests, asks for only the storage and alarms permissions, and a test fails the build if a stylesheet or the security policy ever points at a server. It is plain JavaScript with no bundler and no dependencies, and the tests and the packaging run on every push.

Stack
JavaScript ES modules, Chrome Manifest V3, node:test, GitHub Actions
Runs on
Chrome, from the Web Store, with the storage and alarms permissions only
Links
The case study, with screenshots. The Chrome Web Store listing.

Read the case study

Next

The rest of the work

The day job is on the resume, and the rules that hold across all of it are on the home page. If your business could use a setup like the bakery's, here is what I offer.

[email protected]