Edition No. 1 · 21 Aug 2026
Twelve repositories to measure, multiply, and be findable
Where this radar started: analytics you host yourself, and the first pass at being findable.
Marketing-heavy edition. Eight of these exist to get people to the site and onto the channel. Four make the products themselves better. Every repo was opened and checked on the day — star counts, licences and last release are what GitHub was showing that morning.
This edition, in numbers
| Repos | 12 |
| Hidden gems | 3 |
| Marketing / product | 8 / 4 |
| Held in backlog | 28 |
If you only do three things
- Install Umami this weekend (#1). You cannot build traffic you cannot see. One Docker container, uses the Postgres you already run. Two hours, and every decision after it gets easier.
- Put a Dub link in every video description (#2). Use the free hosted tier — don't self-host yet. Within two weeks you'll know which videos actually send signups and which just get views.
- Run the GEO audit on your site (#8). It installs as a Claude Code skill, which means it costs you one command. People now ask ChatGPT for tools like Grasppy — this tells you whether it can even see you. ---
Every link in one place
| # | Repository | Home / docs | Stars | Licence |
|---|---|---|---|---|
| 1 | umami-software/umami | — | 38.7k | MIT |
| 2 | dubinc/dub | — | 24.7k | AGPL-3.0 open-core + commercial EE |
| 3 | gitroomhq/postiz-app | — | 35.6k | AGPL-3.0 |
| 4 | n8n-io/n8n | — | 203.7k | Sustainable Use License |
| 5 | Huanshere/VideoLingo | — | 18.4k | Apache-2.0 |
| 6 | vercel/satori | — | 13.9k | MPL-2.0 |
| 7 | eliasdabbas/advertools | — | 1.4k | MIT |
| 8 | Auriti-Labs/geo-optimizer-skill | — | 776 | MIT |
| 9 | xyflow/xyflow | — | 38.3k | MIT |
| 10 | microsoft/graphrag | — | 35.9k | MIT |
| 11 | MinishLab/model2vec | — | 2.2k | MIT |
| 12 | stumpy-dev/stumpy | — | 4.2k | BSD-3-Clause |
Built from the ledger; this edition predates the link index. Every figure verified against the GitHub API.
Marketing foundations — measure, multiply, be findable
Twelve repositories, checked and reviewed. Every version verified against the GitHub API and dated.
38.7k stars · MIT · v3.3.1 (2026-08-20)
Self-hosted, cookie-free website analytics — the measurement floor for every other marketing move.
▶Repo detailsthe review · specs · pros & cons · install
What it is
A self-hosted, cookie-free website analytics platform: visitors, referrers, UTM campaigns, conversions and page performance on one dashboard, running on the PostgreSQL you already have. The current release adds custom dashboards, Core Web Vitals tracking and session replay to what Edition 1 described.
Why it matters
Your stated top priority is traffic to the site and growth on the channel, and you presently have no instrument that connects the two. Umami's campaign tracking is what turns "I published a Russian tutorial" into "that tutorial sent nine people, two of whom opened the app" — and without that, every future edition of this radar is asking you to make decisions with your eyes closed. The session replay in the current version matters more than it sounds for Grasppy specifically: the map screen is your known explanation problem, and watching six real sessions of somebody meeting it is worth more than any amount of speculation about what to fix. It is also the prerequisite for two things already on your list — Usertour is pointless until you know where people drop off, and GrowthBook's experiments are meaningless until you know how many visitors you get.
- Reuses your existing PostgreSQL — one container, no new database to back up
- No cookies, so no consent banner eating your landing-page conversion
- Session replay and Web Vitals now come in the box, which removes two other tools from your future shopping list
- Shallower than Google Analytics for funnels and cohorts — fine at your stage, a limit later
- You now own its upgrades, backups and uptime, which is one more thing on a box that is filling up (see 08)
- Tagged releases are irregular. Correction to the ledger, since reversed: Edition 1 recorded the latest as v3.3.1 on 20 August 2026, and this entry changed it to v3.1.0 (16 April 2026) after reading the releases web page. [Reversed 7 Sep 2026: v3.3.1 was released 20 Aug 2026 and was current. The original entry was right; this correction was not. Verified against the GitHub API.]
Docker container on the Hetzner VPS pointed at a new schema in your existing PostgreSQL, and one script tag in the Grasppy and ScalpingMate React builds.
24.7k stars · AGPL-3.0 open-core + commercial EE · no tagged releases; 26,053 commits on main
Branded short links with click-to-signup conversion tracking — turns 'did that video work?' into a number.
▶Repo detailsthe review · specs · pros & cons · install
What it is
A link shortener with real analytics behind it — every short link records clicks, country, device and referrer, and can follow a click all the way through to a signup or a sale. You run it on your own short domain, so the links look like yours.
Why it matters
You are about to publish bilingual tutorial videos. Without unique links you will have view counts and no idea which video earns customers. One branded link per video turns your channel into a measurable acquisition source — and the same trick works for Reddit posts, newsletter sends and directory listings. This is the single highest-information-per-hour change on the page.
- Click-to-signup conversion tracking, not just click counts
- A branded short domain reads as a real company, not bit.ly
- Mature, heavily used, excellent documentation
- Self-hosting is the hardest install on this page — several services and third-party keys
- AGPL core with some features held back for the paid cloud
- You'd want a second cheap domain for the links
No code changes required — the links simply sit in front of Grasppy and ScalpingMate.
35.6k stars · AGPL-3.0 · v2.23.0 (2026-08-04)
Self-hosted Buffer — schedule one piece of content to 13 platforms including YouTube, X, LinkedIn, Reddit.
▶Repo detailsthe review · specs · pros & cons · install
What it is
A self-hosted social scheduler — the open-source answer to Buffer. One calendar publishes to X, LinkedIn, Reddit, YouTube, TikTok, Instagram, Threads, Bluesky, Mastodon and more, with AI assistance for drafting the posts.
Why it matters
Consistency, not cleverness, is what builds an audience — and manual cross-posting is precisely where solo founders quietly stop. For a B2B tool like Grasppy, LinkedIn and X are where buyers actually are, and queueing a month of posts in one sitting is worth more than any individual growth tactic. Self-hosting also means adding a platform never adds a subscription.
- Widest platform coverage of any open-source scheduler
- Very actively developed, with a real company behind it
- Built-in AI drafting matches how you already work
- Heavy stack — Next.js, NestJS, Postgres, Redis, workers. Check your VPS RAM first
- Getting API approval from each platform (especially X and TikTok) is the real work, and it's tedious
- AGPL brings obligations if you ever expose a modified instance
Docker Compose stack on the Hetzner VPS with its own Postgres and Redis.
203.7k stars · Sustainable Use License · n8n@2.37.11 (2026-09-07)
Visual workflow automation — the hub that wires every other tool on this list into one pipeline.
▶Repo detailsthe review · specs · pros & cons · install
What it is
Visual workflow automation — you connect boxes on a canvas instead of writing glue code, across 400+ services, with AI steps built in. Self-hosted Zapier, with no per-task pricing.
Why it matters
Every other tool here is a component; this is the assembly line. New video published → pull the transcript → Claude writes a blog post, a description, timestamps, an X thread and a LinkedIn post → generate the Russian versions → queue everything in Postiz. Built by dragging boxes. For someone running marketing solo, this is the line between doing something once and having it happen every week forever. It will also quietly watch Reddit and Hacker News for anyone discussing chat summarisation or scalping strategies and tell you.
- Visual, so it's buildable and — more importantly — debuggable without being a developer
- Fixed VPS cost regardless of volume, unlike Zapier
- Claude Code can generate the workflow JSON for you to import
- Not OSI open source — fine for your own business, but you can't resell it as a service
- Resource-hungry; a busy instance competes with Grasppy for RAM
- Easy to start, surprisingly fiddly to debug once workflows get long — and an AI-heavy loop can quietly burn API money
Docker on the Hetzner VPS.
18.4k stars · Apache-2.0 · v3.0.1 (2026-02-28)
One-click transcribe, translate and dub pipeline; doubles every video into a Russian edition.
▶Repo detailsthe review · specs · pros & cons · install
What it is
A single pipeline that transcribes a video with Whisper, splits the subtitles at natural sentence boundaries, translates them through an LLM using a translate-then-critique-then-adapt pass, and optionally dubs the result in a synthetic or cloned voice that stays time-aligned with the picture.
Why it matters
You already speak both languages and you already plan ElevenLabs voiceover. This is the machine that turns that plan into a system: one Camtasia export in, an English edition and a Russian edition out. Doubling your catalogue without doubling your filming time is the cheapest growth lever you have — and the Russian-language SaaS tutorial space is far less crowded than the English one. The SRT files it produces are also free blog copy and free chapter markers.
- Handles the whole chain, not one step of it
- The critique pass makes translations markedly better than raw machine output
- Speaks to ElevenLabs, Azure and edge-tts — it slots into what you already pay for
- Python/conda install with a Streamlit UI; dependency conflicts are common
- Local Whisper really wants a GPU — on your Mac or a plain Hetzner box you're pushed to cloud ASR
- Dubbed audio drifts slightly in length, so screencasts with tight on-screen callouts still need a manual pass
Sits between Camtasia export and YouTube upload.
13.9k stars · MPL-2.0 · 0.33.4 (2026-08-24)
Turns HTML/CSS into images — mass-produce thumbnail variants and blog OG images from one template.
▶Repo detailsthe review · specs · pros & cons · install
What it is
A library that renders a subset of HTML and CSS into an image. It's the engine behind Vercel's automatic social-preview images, and it takes milliseconds per render with no design software involved.
Why it matters
Thumbnail click-through is the highest-leverage variable on YouTube, and hand-editing variants is exactly the chore that stops people testing. Define the layout once and generating an English version, a Russian version and six headline variants becomes a loop rather than an afternoon. The same template then produces the OG images for your blog posts, so the site and the channel finally look like one brand instead of two.
- Bilingual variants are a one-line change — Cyrillic renders fine with the right font file
- No API cost, no GPU, no subscription
- Doubles as the blog's OG-image generator, unifying your visual identity
- It's a rendering primitive, not an app — you need a small wrapper around it
- Only a subset of CSS; complex flex/grid and filters silently differ
- Does nothing for the actual A/B test — that still happens in YouTube Studio
The same template then produces the OG images for your blog posts, so the site and the channel finally look like one brand instead of two.
A Node script on your Mac, or a tiny endpoint on the VPS that both your site and your upload script call.
1.4k stars · MIT · v0.18.0 on PyPI (2026-06-17)
Python toolkit built by a working SEO practitioner — crawling, sitemaps, SERP analysis, keyword generation.
▶Repo detailsthe review · specs · pros & cons · install
What it is
A Python toolkit written by a working SEO practitioner rather than a general-purpose developer: site crawling, sitemap and robots.txt parsing, keyword generation, SERP and text analysis. Everything comes back as an ordinary pandas table you can sort, filter and export.
Why it matters
Its three functions map onto three jobs you have right now. crawl() over your own Astro site returns every missing title, duplicate description and broken link before Google finds them. sitemap_to_df() on a competitor's sitemap gives you their publishing cadence and topic spread as one table — which pairs directly with the channel data from 04 to show where they put effort. And kw_generate() builds the long-tail keyword combinations around "summarise a long chat", "discussion map tool" and "forex scalping backtest", in both your languages, that you would otherwise be inventing by hand. It is also shaped like everything else you run: Python, no dashboard, described to Claude Code rather than learned.
- MIT, pure Python, drops into the FastAPI virtual environment with no new runtime and no dependency fight
- Written by a practising SEO, so the functions are named after marketing tasks rather than developer abstractions
- v0.18.0 in June 2026 — steady, unhurried maintenance over many years rather than a burst of activity
- No keyword volume data of its own. It generates and analyses; it will not tell you demand, so pair it with Search Console or a paid source
- Output is DataFrames, which means you need somewhere to look at them — which is a large part of why 12 is on this page
- Its crawler is enthusiastic. Set a page limit and a delay, or you will make an enemy of somebody's server
source venv/bin/activate pip install advertools
776 stars · MIT · v4.17.1 (2026-08-31)
Audits whether ChatGPT, Perplexity and Google AI Overviews can find and cite your site — CLI, Python library, MCP server and Astro integration.
▶Repo detailsthe review · specs · pros & cons · install
What it is
A free MIT-licensed toolkit that scores a site on how readable and citable it is to AI answer engines: robots.txt, llms.txt, JSON-LD schema, metadata, content structure, discovery signals. It runs as a command-line tool, a Python library, an MCP server, and now as an Astro integration.
Why it matters
More and more of your potential users will never see a search results page — they will ask an assistant "what can I use to summarise a long chat" and read one paragraph of answer. If that paragraph does not name Grasppy, you did not lose the ranking, you lost the whole query. This is measurable and mostly mechanical to fix, which makes it exactly the kind of marketing work that suits you: llms-txt (Ed. 2 #7) is the fix for its most common finding, and Starlight (Ed. 4 #4) generates most of the source material it wants. Running it as an Astro integration means the score gets checked on every build instead of once, in an afternoon, and then forgotten.
- It is measurement, not vibes: 47 checks in eight scored categories, so "improve AI visibility" becomes a to-do list.
- The MCP server means Claude Code can run the audit and apply the fixes in the same session.
- Genuinely alive since Edition 1 — 599 stars then, 728 now, and v4.16.4 shipped in August.
- It grades your machine readability, which is a proxy. A perfect score on a site nobody links to still gets you cited by nobody.
- The vendor sells a hosted monitoring product, so read the "you should also track this continuously" framing with that in mind. elmo is the self-hosted tracker if you want one.
- Fast-moving and version-churny — four major versions since spring. Pin the version you audit against or your score will move for reasons that are not you.
Running it as an Astro integration means the score gets checked on every build instead of once, in an afternoon, and then forgotten.
Directly into the Astro site as a build-time integration, into CI as a check, and into Claude Code as an MCP server.
38.3k stars · MIT · @xyflow/react v12.11.3 (2026-08-12)
React Flow — node-and-edge canvas with pan, zoom, minimap; the most direct way to render Grasppy's subtopic map.
▶Repo detailsthe review · specs · pros & cons · install
What it is
A React library for node-and-edge canvases with pan, zoom, minimap, selection and fully custom node rendering built in. You hand it nodes and edges as plain JSON and it gives you an interactive diagram.
Why it matters
This is the shortest path from your topic pipeline to the thing users actually touch. Each subtopic becomes a node; each node is an ordinary React component, so it can be a summary card built from Grasppy's existing UI; clicking expands children or opens the transcript slice. The pan/zoom/collapse behaviour you'd otherwise spend months hand-rolling arrives free — and because it's so widely used, Claude Code writes correct code for it on the first try, which matters more for you than for most people.
- Nodes are real React components — reuse the UI you already have
- Enormous documentation surface, so Claude generates reliable code
- Purely client-side: zero added VPS cost
- DOM-based rendering starts to slow past roughly 1,000–2,000 visible nodes
- No layout algorithm included — you add dagre or elkjs and tune it
- Some polish features sit behind the paid React Flow Pro subscription
FastAPI returns {nodes, edges} from your topic pipeline; the React app feeds it into <ReactFlow> and calls a detail endpoint on node click.
FastAPI returns {nodes, edges} from your topic pipeline; the React app feeds it into <ReactFlow> and calls a detail endpoint on node click.
35.9k stars · MIT · v3.1.2 (2026-08-21)
Builds a knowledge graph from text, clusters it into nested communities, writes a summary for each level.
▶Repo detailsthe review · specs · pros & cons · install
What it is
A pipeline that uses an LLM to pull entities and relationships out of text, assembles them into a knowledge graph, clusters that graph into nested communities, and writes a readable summary for each community at several levels of zoom. It then answers questions using those summaries.
Why it matters
Read that description again with Grasppy in mind: a large body of text collapses into nested clusters, each with a generated title and summary a user can expand. That is your product, described by Microsoft's research team. It also gives you two things plain search never can — an entity graph for a "who and what is discussed here" view, and a defensible answer to "summarise this entire 500-message thread." Worth studying even if you never ship it, because its community-hierarchy step is the strongest published reference for the thing you're building.
- Produces the hierarchy and the human-readable summaries in one run
- Global whole-corpus query mode is genuinely differentiating
- MIT, Microsoft-maintained, released again on the day of this report
- Expensive — indexing one long document can mean thousands of LLM calls, so every import has a real cost
- Operationally the heaviest thing on this page: config files, parquet artifacts, long-running jobs
- Overkill for short chats; you'd need a cheap fallback path for small inputs
Run indexing as a queued FastAPI job per document, persist the community tree and summaries in PostgreSQL, then expose the community levels as expandable nodes in the React Flow canvas from #9.
2.2k stars · MIT · v0.9.0 (2026-08-12)
Distills sentence-transformers into static embeddings ~15x smaller and hundreds of times faster on plain CPU.
▶Repo detailsthe review · specs · pros & cons · install
What it is
It distills a sentence-transformer into a static embedding model roughly fifteen times smaller and hundreds of times faster, so producing an embedding becomes a table lookup instead of running a neural network. It needs tens of megabytes of RAM rather than gigabytes, and no GPU.
Why it matters
Every ambitious thing you might want Grasppy to do — clustering, semantic search, topic modelling — bottlenecks on the same step: embedding the text. On a Hetzner CPU box that step is what makes the whole idea feel too expensive. This removes it. You can embed a full transcript in seconds and keep clustering affordable, which quietly makes several features on your roadmap possible instead of theoretical. My favourite find of the day.
- No GPU, no torch at inference — runs comfortably on your existing VPS
- Drop-in replacement for sentence-transformers in BERTopic, Turftopic and vector search
- MIT, actively released, pretrained models ready on Hugging Face
- Static embeddings lose some accuracy, especially on nuance and negation
- Weaker on very short strings and multilingual edge cases — worth testing on Russian text before committing
- Small team behind it; quality depends on which distilled model you pick
You can embed a full transcript in seconds and keep clustering affordable, which quietly makes several features on your roadmap possible instead of theoretical.
Use it as the embedding function inside your FastAPI ingest worker and write the vectors to a pgvector column.
4.2k stars · BSD-3-Clause · v1.14.1 (2026-02-08)
Matrix profile — finds every repeating shape and every anomaly in a long time series without being told what to look for.
▶Repo detailsthe review · specs · pros & cons · install
What it is
It computes the matrix profile of a time series, which finds every repeated shape (motif) and every anomaly (discord) in a long series — without you specifying what to look for. It scales to millions of points using Numba, multiprocessing or Dask.
Why it matters
You've said the goal is to find one working pattern targeting about 2% a month, and you already have three years of EURUSD loaded. Most people attack that by guessing indicator combinations. This inverts it: the data tells you which price shapes actually recur, and each discovered motif becomes a candidate entry signal you can hand straight to a backtester. stumpy.match() then detects that same shape on live bars. It is the difference between searching and hunting.
- Finds patterns with no labels, no training, no ML expertise required
- BSD-3 — no restriction on shipping it inside a commercial ScalpingMate
- Well documented, with finance-flavoured tutorials and a real maintainer team
- Memory and CPU scale with series length — three years of M1 data is roughly a million points and will need chunking
- Raw motifs are not strategies. Most repeating shapes have no forward edge, so expect heavy filtering
- Choosing the window length is a judgement call that changes everything downstream
Pair with kernc/backtesting.py to test each surviving motif.
A FastAPI job pulls the price array from PostgreSQL, runs stumpy.stump() , and stores motif indices and distances in a table; the React side plots the top motifs as overlaid mini-charts for you to accept or reject.
Checked, and left out
Nothing to show for this edition. Recording the repositories that were checked and rejected began with Edition No. 4, and every edition from there on has the list.