Edition No. 5 · 30 Aug 2026

Twelve repositories for showing your work

Screenshots, demos, slide decks, and the tools that turn one recording into five assets.

By Genn·12 repositories·12 min read

Four editions have built you surfaces: a demo, a content site, docs, a Russian edition, a queue of posts. Today is about what happens after somebody arrives — the traces they leave behind that a stranger can read, the machinery that makes the next video cheaper than the last one, and three meters that tell you what all of it is actually costing you in traffic, in RAM and in money.

Seven entries serve marketing, four sharpen the products, one is the wildcard. Every repository below was opened on GitHub this morning; star counts, licences and release dates are what the pages showed. Four candidates were checked and deliberately left out — they are named at the end, with the reason.

This edition, in numbers

Repos12
Hidden gems (<3k stars)3
Marketing / product7 / 4
New to the ledger11
Repeats1
Dropped on check4

Two things worth knowing

This edition carried a correction to Edition 1, saying that umami’s latest release was v3.1.0 from 16 April 2026 rather than the v3.3.1 recorded on 20 August. That correction was itself wrong. v3.3.1 exists and was released on 20 August 2026; the original entry had been right. It was made by reading GitHub’s releases web page, which returned a partial list, and trusting it over the figure already on file.

The note is left here rather than deleted, because a corrections page that quietly removes its own mistakes is worth nothing. The full account is on the corrections page.

If you only do three things

  1. Install Umami (07). Today. It was the first entry of the first edition, nine days ago, and it is being raised again because nothing else on this page can be judged without it. Four editions of advice and you still cannot answer "did anything I did last week send a single person to the site?" Two hours, one container, your existing PostgreSQL.
  2. Put a real job queue behind the ingest with Procrastinate (10). Every product recommendation so far has ended in the words "run it as a background job" — Docling, BERTopic, the backtests — and you do not have anything to run background jobs on. This is the missing piece, and it needs no Redis and no new server: it lives in the Postgres you already back up.
  3. Spend twenty minutes on youtube-transcript-api (06). One pip install, no API key, no quota. By tonight every tutorial your five closest competitors have published is searchable text on your disk — which is the cheapest content research that exists, and it feeds the SEO work you have already committed to.

Every link in one place

Proof, repetition, and the price of everything

Twelve repositories, checked and reviewed. Every version verified against the GitHub API and dated.

5.6k stars · MIT · v1.16.4 (2026-07-10)

Self-hosted comment engine with no external database and no third-party tracking — the reply box under the Starlight docs.

Repo detailsthe review · specs · pros & cons · install

What it is

A small self-hosted comment engine that you embed on any page with a script tag. It handles nested threads, Markdown, moderation, image uploads and notifications, signs people in through Google, GitHub, Telegram, email or anonymously, and needs no separate database — it ships as one binary with its own embedded store.

Why it matters

You have committed to Astro and Starlight, which means you are about to publish a stack of static pages that nobody can respond to. That is a waste twice over: a page with three real questions underneath it reads as a product with users, and those questions are free content — each one is a page you should write next, in the exact words a buyer typed. For Grasppy specifically, comments under a "how do I make sense of a 400-message thread" page are the closest thing you will get to a support forum before you have earned one. The alternative everyone reaches for is Disqus, which loads a tracker farm onto a site whose whole pitch is that your text never leaves your server — that would be an unforced own goal.

Stars5.6k
LicenceMIT
Latestv1.16.4 (2026-07-10)checked 7 Sep 2026
Written inGo
Setup effort
2 / 5
Payoff
3 / 5
Good
  • MIT, one Go binary, no external database, no third party reading your visitors
  • Anonymous commenting is supported, which matters enormously when your audience is small — nobody creates an account to ask one question
  • Telegram and email notifications, so a new comment reaches you without another dashboard to check
Watch for
  • Comment sections attract spam from the first week. The moderation tools are good but somebody has to actually moderate, and that somebody is you
  • The default styling is plain; making it look like it belongs to your site is an hour of CSS
  • An empty comment section under every page looks worse than none at all — turn it on for the docs and the blog, not the landing page
How to get it

Docker container on the VPS behind your reverse proxy at something like comments.yourdomain.com , plus a small script tag in the Starlight page template.

48.3k stars · MIT · v6.2.0 (2026-03-01)

The MIT community fork of Cal.com after the company went closed source — a booking link for user interviews and demos.

Repo detailsthe review · specs · pros & cons · install

What it is

A self-hosted scheduling platform — the open-source answer to Calendly — where you publish a link, someone picks a slot, and it writes the meeting into your calendar and sends the invitations. As of this year it is the community fork: Cal.com the company moved its product to closed source, and cal.diy is what remains, 100% MIT with the enterprise code stripped out.

Why it matters

The thing a solo founder before product-market fit needs most is conversations with the handful of people who did show up, and the thing that kills those conversations is six emails about time zones. A booking link at the bottom of every video description, every comment reply and every email turns "we should talk sometime" into a slot in your calendar. It is also, unglamorously, how you get testimonials and case studies — you cannot write one about a user you have never spoken to. Read the second half of this entry carefully though, because the licence story here is the most instructive thing on today's page.

Stars48.3k
LicenceMIT
Latestv6.2.0 (2026-03-01)checked 7 Sep 2026
Written inTypeScript
NeedsDocker Compose, Docker and PostgreSQL
RunsSelf-hosted on your own server
Setup effort
1 / 5
Payoff
4 / 5
Good
  • Fully MIT with no enterprise tier held back — which is more than can be said for half of what this radar has recommended you
  • Enormous accumulated feature set: buffers, time zones, round-robin, payments, calendar sync in both directions
  • A booking page costs you nothing to publish and starts working the day you paste the link somewhere
Watch for
  • The company behind it has walked away. A fork with the commercial code removed is only as alive as the volunteers who pick it up; the most recent tagged release is v6.2.0 from 1 March 2026. Treat it as a tool you use, not a dependency you build on
  • Self-hosting it is a heavy Next.js stack plus its own database plus Google/Microsoft calendar OAuth plus an SMTP provider. This is not an evening
  • Cal.com's own hosted free tier still exists and is genuinely the sensible starting point — the self-host is a project, and you do not need a project to get a booking link
How to get it

Start with the hosted free tier: no VPS cost, no code, a link you paste into your YouTube descriptions and your Starlight docs footer today.

03

abhinavxd/libredesk

💎 hidden gem

2.9k stars · AGPL-3.0 · v2.8.0 (2026-08-22)

Self-hosted support desk — live chat and email in one shared inbox, as a single Go binary against Postgres.

Repo detailsthe review · specs · pros & cons · install

What it is

A self-hosted customer support desk: live chat on your site, email, and other channels all landing in one shared inbox with assignment, canned responses, automation rules and SLA tracking. It ships as a single Go binary against PostgreSQL — the same operational shape as Listmonk from Edition 2.

Why it matters

Right now a Grasppy question can reach you through YouTube comments, an email address, a reply on X, or nowhere at all — and the ones that arrive when you are recording simply get lost. That is not a support problem yet; it is a marketing problem, because the single strongest signal a hesitant visitor can get is a fast, human answer inside a working day. The chat widget also does something the analytics never will: it tells you, in sentences, what confuses people about the map screen — which is the raw material for your next tutorial, your next docs page, and the copy on your landing page. Start with email only, add the chat widget when you can answer it.

Stars2.9k
LicenceAGPL-3.0
Latestv2.8.0 (2026-08-22)checked 7 Sep 2026
Written inGo
NeedsDocker Compose, Docker and Redis
RunsSelf-hosted on your own server
Setup effort
2 / 5
Payoff
4 / 5
Good
  • Single Go binary plus your existing PostgreSQL — the lightest thing in this layer by a wide margin
  • Live chat and email in one place, so nothing depends on you remembering which inbox a question came from
  • 2.6k stars and shipping steadily — v2.3.1 landed on 1 June 2026, and the 2.x line means the API has settled
Watch for
  • A chat widget you do not answer is worse than no widget. Turn it on only for hours you are actually at the desk, and use the email channel the rest of the time
  • AGPL-3.0 — fine to run as your own support desk, but read it before you modify it or embed it anywhere near Grasppy
  • Young relative to Zendesk-class tools: fewer integrations, thinner reporting, and a small maintainer team behind it
How to get it

Docker or the binary on the VPS with its own database inside your existing PostgreSQL, and the same SMTP provider you set up for Listmonk.

48.5k stars · MIT · v52.19.1 (2026-08-19)

Markdown-driven presentation tool — the explainer slides in a tutorial video, plus a PDF export that doubles as a lead magnet.

Repo detailsthe review · specs · pros & cons · install

What it is

A presentation tool where the deck is a single Markdown file: headings become slides, code blocks get syntax highlighting and line-by-line reveals, and diagrams can be drawn in Mermaid inline. It exports to PDF, to PNG images, and to a standalone web page, and has a presenter view with a drawing layer for annotating while you talk.

Why it matters

Your videos are screencasts, which means the moments where you explain a concept — what a subtopic map is, why chunk boundaries matter, how a scalping backtest lies to you — currently have nothing on screen but the app or your face. Building those title cards and explainer frames by hand in SnagIt is exactly the tax that makes video number twelve cost more than video number three. In Slidev they are a Markdown file you keep in the repo: change three lines and you have the Russian deck for the same video, which is the single largest saving available to a bilingual channel. And the PDF export is not a footnote — a ten-slide "How to read a Grasppy map" PDF is a lead magnet you can put behind an email address in Listmonk, which is the audience you actually own.

Stars48.5k
LicenceMIT
Latestv52.19.1 (2026-08-19)checked 7 Sep 2026
Written inTypeScript
NeedsNode.js
Setup effort
2 / 5
Payoff
4 / 5
Good
  • The deck is text, so a second language, a corrected typo or a whole restructure is an edit and not an afternoon in a design tool
  • Exports to PDF and PNG as well as slides — one source, three marketing assets
  • MIT, huge community, and Vue components mean you can drop a live Grasppy screenshot or an animated diagram straight into a slide
Watch for
  • It is a developer's presentation tool. If you want to nudge a box three pixels left, you are editing CSS, not dragging it
  • Overkill for a video that is 100% screen recording — this earns its place only where you actually explain concepts
  • Version 52 means fast-moving releases; pin the version in the project so a reinstall next spring does not restyle your old decks
Works well with

A Node project on your Mac, one folder per video, checked into Git beside the scripts.

Install
npm init slidev@latest
cd slidev-deck
npm run dev      # live preview at localhost:3030
npm run export   # PDF for the lead magnet

58.6k stars · Remotion License · v4.0.522 (2026-09-07)

Render real MP4 video from React components — one branded intro template, unlimited language and title variants.

Repo detailsthe review · specs · pros & cons · install

What it is

A framework for making real MP4 video out of React components: you lay out frames in JSX and CSS, drive them with a frame counter, and render the result to a video file from the command line. It has been held in this radar's backlog twice and is promoted today because Layer 02 is the edition where it finally has a job to do.

Why it matters

Every video you publish needs the same five seconds at the front and the same eight at the back, and right now each one is hand-assembled in Camtasia — twice, because you publish in two languages. As a Remotion template that becomes npx remotion render --props='{"title":"...","lang":"ru"}', and the branded top-and-tail for a whole batch renders while you make coffee. The deeper reason it fits you specifically is that it is React and CSS, which is the one front-end vocabulary you and Claude Code already share: describing a title animation in words and getting working code back is a genuinely different experience from learning After Effects. It is also the honest answer to a question Satori from Edition 1 could not cover — Satori makes still images, this makes moving ones.

Stars58.6k
LicenceRemotion License
Latestv4.0.522 (2026-09-07)checked 7 Sep 2026
Written inTypeScript
Setup effort
3 / 5
Payoff
4 / 5
Good
  • Same React and CSS you already build Grasppy in, so Claude Code writes it competently on the first attempt
  • Parameterised renders: one template, unlimited language and title variants, driven from a JSON file or a script
  • Very actively maintained with excellent documentation and a large body of public examples
Watch for
  • Not OSI open source. The Remotion Licence is free for individuals and companies of up to three people — fine for you today, and a bill the day you hire a fourth. Read it before you build a workflow on it
  • Rendering is CPU-heavy and slow. Do it on the Mac, not the Hetzner box that is serving your users
  • Thinking in frames rather than a timeline is a real mental shift, and the first template will take you a full evening to get right
Works well with

Feed the same titles into Thumbnails-Maker from Edition 4 and the video, the thumbnail and the deck all say the same words.

Install
npx create-video@latest
cd my-video
npm run dev      # preview in the browser
npx remotion render

8.2k stars · MIT · v1.2.4 (2026-01-29)

Fetches any YouTube video's subtitles with no API key and no quota — competitor research as plain text, tonight.

Repo detailsthe review · specs · pros & cons · install

What it is

A small Python library that fetches the subtitle track of any YouTube video, including the automatically generated ones, and can ask YouTube to translate it on the way. It needs no API key and no headless browser, and it has both a Python interface and a command-line tool.

Why it matters

Edition 3 gave you python-youtube for titles and view counts, which tells you that a competitor's video did well. This tells you what was in it — and it is the cheaper of the two by a distance, because it burns none of the 10,000-unit daily API quota. Pull the transcripts of the fifty most-viewed videos about summarising long documents, chat analysis and forex backtesting, hand the pile to Claude, and ask what nobody has explained properly yet. That is a content calendar built in an evening from evidence rather than instinct, and the same transcripts double as keyword seeds for OpenSEO and advertools. It also works on your own back catalogue when you want the text of a video you never wrote a script for.

Stars8.2k
LicenceMIT
Latestv1.2.4 (2026-01-29)checked 7 Sep 2026
Written inPython
RunsLocally, on your own machine
Setup effort
1 / 5
Payoff
4 / 5
Good
  • Free, no key, no quota, no OAuth consent screen — genuinely a twenty-minute win
  • Handles auto-generated captions and can return translated tracks, so Russian-language competitors are in scope too
  • MIT and tiny, so it drops into your FastAPI virtual environment without a dependency fight
Watch for
  • It uses an unofficial endpoint. YouTube can change it, and the library then needs an update before it works again
  • YouTube blocks datacentre IP ranges aggressively — run it from your Mac, because from the Hetzner box you will need a proxy (the library supports them, but that is a paid service)
  • Transcripts only. Views, retention and click-through still come from the API or from Studio
Install
source venv/bin/activate
pip install youtube-transcript-api
youtube_transcript_api VIDEO_ID --languages en ru --format json

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.

Stars38.7k
LicenceMIT
Latestv3.3.1 (2026-08-20)checked 7 Sep 2026
Written inTypeScript
NeedsDocker Compose, Docker and PostgreSQL
RunsSelf-hosted on your own server
Setup effort
2 / 5
Payoff
5 / 5
Good
  • 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
Watch for
  • 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.]
How to get it

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.

25.2k stars · MIT · v0.19.0 (2026-09-03)

Very light server monitoring with per-container Docker stats, history and alerts — the answer to 'can the box take one more container?'

Repo detailsthe review · specs · pros & cons · install

What it is

A very light server monitor: a hub with a web dashboard plus a small agent on each machine, recording CPU, memory, disk, network and per-container Docker statistics with history and configurable alerts. The whole thing is two Go binaries and uses a handful of megabytes.

Why it matters

Count what this radar has now put on one Hetzner box: Grasppy, ScalpingMate, PostgreSQL, and candidates including Umami, Listmonk, Mixpost, RSSHub, Tolgee, LibreTranslate, Coolify, plus today's comments and support desk. Every single edition has said "check your RAM headroom" and you have had no way to check it. Beszel gives you the number per container, over time, which converts an anxious guess into a decision — and its alerts mean the first time you learn that Postgres is being starved is not when a user emails you. This is deliberately the wildcard rather than a marketing entry, because the marketing plan fails just as completely when the site is down as when nobody visits it.

Stars25.2k
LicenceMIT
Latestv0.19.0 (2026-09-03)checked 7 Sep 2026
Written inGo
NeedsDocker and a GPU
Setup effort
2 / 5
Payoff
4 / 5
Good
  • Genuinely tiny — a monitoring tool that does not itself need the RAM you are trying to measure, unlike a Prometheus and Grafana stack
  • Per-Docker-container CPU and memory history, which is exactly the granularity your install decisions need
  • MIT, actively released, and alerting works out of the box rather than after a day of configuration
Watch for
  • Resource monitoring only. It will not tell you a page is slow or an API call is failing — that is a different tool
  • Still 0.x. It is stable in practice but the configuration format can move between versions
  • It monitors; it does not fix. Knowing you are at 92% memory is progress, but the next step is still yours
Works well with

Hub as a Docker container on the VPS behind your reverse proxy, agent alongside it on the same machine.

How to get it

Hub as a Docker container on the VPS behind your reverse proxy, agent alongside it on the same machine.

58.2k stars · MIT, with a separate licence over the enterprise/ directory · v1.100.0 (2026-09-06)

One interface over 100+ model providers, with per-key budgets, spend tracking, caching and fallbacks — the meter on the AI bill.

Repo detailsthe review · specs · pros & cons · install

What it is

A gateway that puts a hundred-plus model providers behind one OpenAI-shaped interface, as either a Python library or a proxy server you run. The proxy adds the parts that matter operationally: virtual keys, per-key budgets, spend tracking, caching, retries and automatic fallback to a second provider.

Why it matters

Grasppy's unit economics are the thing that decides whether it can have a free tier, and right now nothing in your stack measures them. GraphRAG costs dollars an import and BERTopic costs cents — Edition 3 told you that, but you cannot confirm it, price a plan, or notice the afternoon a bug puts your ingest worker into a retry loop. A gateway with a budget per feature turns that into a dashboard and a hard cap. The caching alone tends to pay for the setup, because during development you re-run the same conversation through the same prompt twenty times, and nineteen of those are currently full price. Wire it in before you ship an AI feature to strangers rather than after.

Stars58.2k
LicenceMIT, with a separate licence over the enterprise/ directory
Latestv1.100.0 (2026-09-06)checked 7 Sep 2026
Written inPython
NeedsRedis
RunsSelf-hosted on your own server
Setup effort
2 / 5
Payoff
4 / 5
Good
  • Per-feature virtual keys with budgets and alerts — you can cap a runaway loop instead of discovering it on a statement
  • One interface across providers, so switching a step from an expensive model to a cheap one is a config change, not a rewrite
  • Response caching and automatic fallback, which cut both your development spend and your outage risk
Watch for
  • Two very different products under one name. The Python library is a small dependency; the proxy wants its own PostgreSQL and Redis, so it is a real install
  • MIT except for an enterprise/ directory under a separate licence — check any feature you come to depend on
  • Enormous surface area and a very fast release cadence. Pin the version and use the tenth of it you need
Install
source venv/bin/activate
pip install litellm

1.4k stars · MIT · 3.9.0 (2026-06-20)

PostgreSQL-backed task queue for Python — the background worker four editions of product advice quietly assumed he already had.

Repo detailsthe review · specs · pros & cons · install

What it is

A distributed task queue for Python that uses PostgreSQL as its entire backend: jobs, locks, retries, scheduling and the dispatch notifications all live in tables in your existing database. It works with both synchronous and async code and has first-class support for periodic tasks.

Why it matters

Read back through this radar and count the phrases "queued worker job", "background job with a progress indicator", "run as a scheduled job": Docling parsing a 90-page PDF, BERTopic clustering, tsfresh over three years of EURUSD, a backtest sweep. Every one of those takes minutes and none of them can happen inside a web request, so the honest position is that several product features you have been handed are not shippable until this exists. The reason this specific library rather than Celery is the reason pgvector beat a dedicated vector database in Edition 2: no Redis, no RabbitMQ, no second thing to secure and back up. One pg_dump still captures everything, and a job's state is a row you can look at in SQL when something goes wrong at 3am.

Stars1.4k
LicenceMIT
Latest3.9.0 (2026-06-20)checked 7 Sep 2026
Written inPython
NeedsPostgreSQL and Python 3
Setup effort
2 / 5
Payoff
5 / 5
Good
  • No new infrastructure whatsoever — the queue is tables in the PostgreSQL you already run and already back up
  • Retries, locks, scheduled and periodic tasks included, so the ingest pipeline stops needing hand-written cron scripts
  • Async-native, which matches FastAPI, and small enough that you can read the whole thing when you need to
Watch for
  • 1.4k stars and a small maintainer group. Mature and well documented, but not Celery-sized — a real consideration for something load-bearing
  • PostgreSQL as a queue has a genuine ceiling. You are nowhere near it, but it is not the right tool at very high job rates
  • The worker is a second process to keep running, which means a systemd unit or a container — one more thing on the box that 08 is now measuring
Works well with

Install into the FastAPI virtual environment, run its migration against your existing PostgreSQL, and start one worker process beside the API.

Install
source venv/bin/activate
pip install procrastinate
procrastinate schema --apply          # creates its tables in your database
procrastinate --app=myapp.app worker  # the worker process

13.8k stars · MIT · v1.16.0 (2026-08-27)

Pydantic-validated structured output from any LLM, with automatic retry on malformed responses — so the subtopic map cannot fail to parse.

Repo detailsthe review · specs · pros & cons · install

What it is

A thin library that makes a language model return data matching a Pydantic model instead of free text: you declare the shape you want, and it handles the schema, the validation and the automatic retry when the model gets it wrong. It works across the major providers rather than binding you to one.

Why it matters

Grasppy's output is structured by definition — a tree of named subtopics, each with a label, a summary and a set of source references — and every one of those labels comes out of a model that will occasionally return prose, invent a field, or wrap the JSON in an apology. Parsing that by hand is where the "sometimes the map just fails to load" class of bug comes from, and that bug is fatal in a product whose entire promise is that it makes a mess legible. Instructor turns a malformed response into an automatic retry with the validation error fed back to the model, which is exactly the loop you would otherwise write badly yourself. It also makes your prompt changes safe: the Pydantic model is the contract, so a reworded prompt cannot quietly change the shape the React canvas is expecting.

Stars13.8k
LicenceMIT
Latestv1.16.0 (2026-08-27)checked 7 Sep 2026
Written inPython
RunsLocally, on your own machine
Setup effort
1 / 5
Payoff
4 / 5
Good
  • The schema is a Pydantic class, which is the same thing FastAPI already uses — no new vocabulary to learn
  • Automatic retry with the validation error returned to the model, which fixes most malformed responses without your code seeing them
  • MIT, very active — v1.16.0 shipped three days before this report — and provider-agnostic, so it sits happily behind LiteLLM (09)
Watch for
  • Retries cost money and latency. A strict schema against a weak model can quietly triple the price of an import — which is precisely why 09 belongs in front of it
  • It guarantees the shape of the answer, never the quality. A confidently wrong subtopic label validates perfectly
  • One more layer between you and the provider API, so an odd failure now has two places to look
Install
source venv/bin/activate
pip install instructor
12

skforecast/skforecast

💎 hidden gem

1.5k stars · BSD-3-Clause · v0.24.0 (2026-08-24)

scikit-learn-compatible time-series forecasting with rolling-origin backtesting built into the core — the anti-overfitting step ScalpingMate was missing.

Repo detailsthe review · specs · pros & cons · install

What it is

A library that turns any scikit-learn-compatible model into a time-series forecaster, with the awkward parts — lag features, multi-step recursion, exogenous variables — handled for you. Its distinguishing feature is that backtesting is built into the core: rolling-origin and expanding-window validation, hyperparameter search that respects time order, and probabilistic intervals rather than a single number.

Why it matters

Everything this radar has given ScalpingMate so far finds candidates: STUMPY finds repeating shapes, tsfresh finds predictive properties, backtesting.py tests a rule you wrote. The gap is the step in between — turning "these features look significant" into a model that is validated the way time-series models have to be validated, on data that comes strictly after the data it learned from. Get this wrong by even one bar and a strategy that is really noise will show you a beautiful equity curve; that mistake is the single most common way a solo trader loses a year. And the licence is the practical detail: BSD-3-Clause, so unlike backtesting.py and vectorbt this can sit inside a paid ScalpingMate feature, next to quantstats.

Stars1.5k
LicenceBSD-3-Clause
Latestv0.24.0 (2026-08-24)checked 7 Sep 2026
Written inPython
RunsLocally, on your own machine
Setup effort
2 / 5
Payoff
4 / 5
Good
  • Rolling-origin backtesting and time-aware hyperparameter search are the core API, not something you have to remember to do correctly
  • BSD-3-Clause — commercially safe, which two of your three existing backtesting options are not
  • Any scikit-learn model works, so a linear baseline and a gradient-boosted model are one line apart, and the baseline usually deserves to win
Watch for
  • It forecasts a series; it does not model a trade. Spread, slippage, position sizing and stops are still yours to add before any number means money
  • 1.5k stars and a small Spanish research team behind it — excellent documentation, real bus-factor risk
  • The docs are licensed CC BY-NC-SA even though the code is BSD, so do not lift documentation text into your own product pages
Replaces

And the licence is the practical detail: BSD-3-Clause, so unlike backtesting.py and vectorbt this can sit inside a paid ScalpingMate feature, next to quantstats .

Works well with

And the licence is the practical detail: BSD-3-Clause, so unlike backtesting.py and vectorbt this can sit inside a paid ScalpingMate feature, next to quantstats .

Install
source venv/bin/activate
pip install skforecast

Checked, and left out

These were opened for this edition and did not make it, with the reason.

papermark/papermark

papermark/papermark (9.0k, AGPL-3.0) — moved from mfts/papermark; latest tag v0.22.0 but the year could not be read off the page. Backlogged.

StJudeWasHere/seonaut

StJudeWasHere/seonaut (763, MIT) — no releases at all and the commit history was unreachable, so dormancy could not be ruled out. Backlogged.

arikchakma/maily.to

arikchakma/maily.to (3.8k, MIT) — would fill Listmonk's missing drag-and-drop editor, but no releases and no readable tag dates. Backlogged.

apache/answer

apache/answer (15.7k, Apache-2.0) — last release v2.0.1 (2025-05-29), fifteen months old, and premature before he has users. Backlogged.

Share this edition
← PreviousNo. 4Next →No. 6

Get the next edition in your inbox

A dozen repositories, opened and checked. The licence read, the last release dated, and the ones that did not make it named with the reason. It is the half most lists leave out.

No tracking pixels. One click to leave. The archive stays free either way.

We use your address to send the edition and nothing else. Confirm by email, leave in one click. How we handle it.