nikolas.sapa

Athens, Greece · 17

Nikolas Sapalidis

I build products and ship open source into libraries I don't own.

I started where most teenagers start: deep in the self-improvement rabbit holeBooks, systems, 5am routines. Useful discipline, zero income.. That led to trading and crypto, then setting up a Google Ads agencyBuilt the offer and the site, never launched it. No clients, no ads ever run. that never launched, then trying to sell digital products — and getting nowhere. Didn't make a cent from any of it.

Then I learned to code, in January 2026. Between 15 September and 4 October I got 19 pull requests merged into seven production libraries I don't own — webdriverio, CapyMOA, presidio, river, sktime, unocss, mastra. No CS degree, nine months in, and maintainers of libraries I'd never opened read my code and merged it.

I build products. First was Helpmarq — a feedback marketplace for structured, expert feedback on real projects. Since then: MarketMyAppMarketing plan generator for indie app builders — positioning, channels, copy., Creator RoastHonest teardown of a creator's page. No compliments, just what's costing you signups., Branch AI, NeuroPulseOpen-source brain-response analyzer for marketing content. Drop in an ad, get scored across 8 brain regions., ns-ui (React components you install by URL), and more.

Since April 2026 I've been on Claude Code MaxAnthropic's top tier. Custom skills, hooks, subagents — the whole harness tuned around how I actually work.. It changed how I work. I run a homelabSelf-hosted Supabase + n8n on my own hardware. No per-seat pricing, no vendor deciding my rate limits., and ship multiple products in parallel. I write about the patterns that actually work — not the hype.

Lately I've been going deep on machine learningBackprop by hand, tensors from scratch, small models I can explain end to end. No framework hiding the maths. — from the fundamentals up, not the API-wrapper version. I've shipped a lot of AI on top of other people's models; now I want to understand what's actually happening underneath. Building small models by hand, doing the math, no shortcuts.

3686 contributions in the last year

Open-source packages

9 tracked packages. npm packages discovered automatically; PyPI packages tracked by name. Data refreshes daily; PyPI lifetime totals are cached for up to 12 hours.

Package versions, monthly downloads, and lifetime downloads, with each source's reporting period
PackageVersionMonthly downloadsLifetime downloads
@nikolas.sapa/ns-uinpm0.11.0932026-09-17 to 2026-10-162,297Since 2026-07-29 · through 2026-10-18
@nikolas.sapa/ns-ui-mcpnpm0.10.01262026-09-17 to 2026-10-162,059Since 2026-08-01 · through 2026-10-18
branch-ainpm1.1.0282026-09-17 to 2026-10-161,051Since 2026-04-24 · through 2026-10-18
clientcastnpm0.3.0382026-09-17 to 2026-10-16521Since 2026-05-05 · through 2026-10-18
skillswitchnpm0.2.0302026-09-17 to 2026-10-161,139Since 2026-05-16 · through 2026-10-18
toolfencenpm0.3.0272026-09-17 to 2026-10-16429Since 2026-06-16 · through 2026-10-18
grip-browserPyPI0.9.0182Last month, excluding known mirrors10,017All time · Pepy
grip-searchPyPI0.2.022Last month, excluding known mirrors655All time · Pepy
sac-capitalPyPI0.1.446Last month, excluding known mirrors2,949All time · Pepy

Sources: npm download ranges and PyPI Stats for monthly counts; Pepy for PyPI lifetime totals. npm lifetime totals sum daily counts from the package's first published date; PyPI lifetime totals use Pepy's all-time count. PyPI monthly and lifetime counts come from two different providers that count differently, so those two columns are not comparable with each other. Downloads can include automated requests and repeat installs. Swipe or scroll sideways to see all columns on small screens.

Currently

  • → SAC CapitalAgent that screens equities on fundamentals, momentum and disclosure signals, then argues its own picks down. Real money, published CLI. — live AI trading agent, CLI on PyPI
  • → Learning ML from the fundamentals
  • → ns-uiReact components, install by URL. Playwright gate fails anything whose hover looks identical to its resting state. — component registry, live at design.helpmarq.com
  • → sigevalEvals as proportions with confidence intervals. PASS, FAIL, or INCONCLUSIVE — never a coin-flip. — statistical evals for LLMs

Not ready yet? Get the build log — weekly notes on what I'm shipping, patterns that work, things that didn't.