SaaS Companies Fear Me: Cloning* Granola for Linux

Published: (March 3, 2026 at 04:23 PM EST)
3 min read
Source: Dev.to

Source: Dev.to

I’ve been spending a lot of time on Twitter recently because it seems to be one of the best places to get AI news. A common refrain I see is that the “end” of SaaS (Software as a Service) companies is approaching now that low‑code tools enable folks to build their own customized SaaS solutions. I’m not sure I fully agree, but I am the hypothetical person in those tweets. There was a SaaS tool I loved that I couldn’t use on Linux, so I built my own (albeit notably worse) version of it.

About half a year ago I discovered Granola. I really liked it: it did transcriptions, enhanced existing notes, let me run it without inviting another note‑taker, and had a chat interface for asking questions about meetings. 10/10 would (and still do) recommend.

A month later I decided to switch back to Linux as my primary OS. Windows was an uphill battle with CLI coding tools like Gemini CLI, OpenCode, and Claude Code (at least in my experience at the time). Unfortunately, Granola didn’t support Linux and had no plans to add support (I asked).

So I built Quinoa – a note‑taking tool for me.

What I Learned

  • This is a tool for me. While the code is public on GitHub, I regularly tell my coding agents that they’re building for my system, my configs, and my preferences.
  • Designing intentionally for a single user allowed me to make trade‑offs that wouldn’t be acceptable in a public‑facing product.
  • Coding agents let us will software into existence in ways we couldn’t a few years ago. It’s okay to be less intentional about certain things, to build just for yourself or friends, and not to strive for perfect engineering on every project.
  • When bugs appear, I can simply ask an agent to resolve them.
  • I built Quinoa almost exclusively using Gemini CLI and OpenCode (leveraging Google, Anthropic, OpenAI, and other models). I tried not to write any code myself, which led to some mistakes but was a great learning experience. Most of my code review is also fully agent‑driven.

What I Built with Google Gemini

Quinoa relies on Google Gemini models for all core functionality, serving as a sandbox for experimenting with new Gemini releases.

  • Meeting transcription – Gemini identifies speakers, labels them, and produces a transcript. Audio understanding docs
  • Meeting summaries – Generates two‑ to three‑sentence summaries and extracts action items.
  • Notes enhancement – Takes my notes and enriches them with additional context from the audio recording and transcript.
  • RAG notes search – Uses Google’s Retrieval‑Augmented Generation as a service to search notes and cite sources. File search docs

I also used Nano Banana to create the project’s icon.

Demo

Quinoa is a local application, so I can’t embed an interactive demo. Below is a screenshot of the app (I’m clearly not a designer).

Showing today view, asking the assistant a question, and another transcript

Google Gemini Feedback

The biggest issue across all coding agents right now seems to be providing the right context, especially when building tools that depend on new libraries. Google Gemini sometimes struggles to implement itself. I heavily recommend trying the Gemini API Dev skill if you haven’t yet.

Just a quick note: I’m not entering this contest to win. I’m probably ineligible since I work for MLH, but I wanted to share something I’ve been working on!

0 views
Back to Blog

Related posts

Read more »

Good software knows when to stop

The “New” ls Experience It’s 9 AM, you’re ready to upgrade your favorite Linux distribution and packages to their latest versions. The process goes smoothly, a...