frontpage.
newsnewestaskshowjobs

Open Source @Github

fp.

Show HN: CleverCrow: give tokens to your favorite projects

https://clevercrow.io
30•zhubert•5h ago•43 comments

Show HN: Teach your kids perfect pitch

https://github.com/paytonjjones/bsharp
35•paytonjjones•11h ago•23 comments

Show HN: Pulse – Dashboard for Claude Code, approve tool calls from your phone

https://github.com/nikitadoudikov/claude-pulse
31•nikitadvd•1d ago•12 comments

Show HN: DebugBrief – turn debugging sessions into reports, no AI

https://github.com/harihkk/Debug-Brief
5•itshkrishna•4h ago•1 comments

Show HN: TownSquare, a tiny presence layer for websites

https://townsquare.cauenapier.com/
248•cauenapier•1d ago•143 comments

Show HN: StartupWiki – A Free Alternative to Crunchbase

https://startupwiki.tech/
222•shpran•1d ago•67 comments

Show HN: Make PDFs look scanned (CLI or in the browser via WASM)

https://github.com/overflowy/make-look-scanned
142•overflowy•1d ago•63 comments

SHOW HN: I built a social profile for vibecoders to share & store their projects

https://kritive.com
3•sonOfHades•4h ago•1 comments

Show HN: GreyFox – Free self-hosted AI proxy, token quotas, and local cache

https://github.com/skillful-fox-studio/grey-fox-community
2•SkilfulFox•5h ago•0 comments

Show HN: Microcrad – Micrograd Reimplemented in C

https://github.com/oraziorillo/microcrad
77•oraziorillo•4d ago•28 comments

Show HN: My Windows XP portfolio with working Game Boy and iPod

https://mitchivin.com/
69•mitchivin•1d ago•33 comments

Show HN: Pure Effect – Reproduce production bugs on your laptop without a DB

https://pure-effect.org
2•tie-in•6h ago•0 comments

Show HN: We post-trained a model that pen tests instead of refusing

https://www.argusred.com/cli
88•dk189•1d ago•39 comments

Show HN: Talos – Open-source WASM interpreter for Lean

https://github.com/cajal-technologies/talos
105•mfornet•3d ago•28 comments

Show HN: Chainstack Self-Hosted, hosting your own blockchain nodes made simple

https://docs.chainstack.com/docs/self-hosted/introduction
8•loshaaaa•12h ago•0 comments

Show HN: Chess-Inspired Roguelike

https://princechazz.com
16•cowboy_henk•17h ago•3 comments

Show HN: CommitGate – Automatically scan your commit for vulnerabilities

https://github.com/ductrl/CommitGate
4•ductrl•8h ago•5 comments

Show HN: Trustmux – Lightweight Secure Daemon for Mobile Shell Access

https://trustmux.dev
4•dustinkirkland•8h ago•0 comments

Show HN: Metiq: a real time 3D globe for 100 public datasets

https://metiq.space
145•rakeda•5d ago•42 comments

Show HN: Gerrymandle - Daily puzzle game where you redraw electoral districts

https://gerrymandle.cc/
235•realmofthemad•3d ago•78 comments

Show HN: Ember, a native iOS Hacker News reader I built around accessibility

https://github.com/DatanoiseTV/ember-hackernews
99•sylwester•1d ago•28 comments

Show HN: Criterion Closet as a website – pull any of 1,247 films off the shelf

https://the-criterion-closet.vercel.app
33•olievans•1d ago•8 comments

Show HN: lpviz – Interactive linear programming visualization in the browser

https://lpviz.net/
8•klamike•10h ago•1 comments

Show HN: Stock analysis tool with quality scores and fundamental charting

https://intrinsiqq.com
7•FlippieFinance•10h ago•0 comments

Show HN: Tiny – An interpeted dynamic langauge with inline Go native functions

https://github.com/confh/Tiny
40•confis•1d ago•13 comments

Show HN: I made a social accountability app to make me ship

https://www.shipstreak.fyi/
2•Cbagenal•10h ago•1 comments

Show HN: Souso – plan your week, fill your AH/Jumbo basket (MEGATHON Amsterdam)

https://souso.app
7•ntorresdev•10h ago•2 comments

Show HN: TermType – a terminal typing game where words fall like Space Invaders

https://github.com/GiovanniCst/termtype
5•J_cst•11h ago•0 comments

Show HN: TLA+ Process Studio

https://tlaplus-process-studio.com/?example=meeting-lifecycle
12•uptodatenews•1d ago•1 comments

Show HN: Agentic coding workflows built on Git worktrees and task evidence

https://github.com/alex-reysa/glueRun-go
10•alexreysa•1d ago•1 comments
Open in hackernews

Show HN: Pure Effect – Reproduce production bugs on your laptop without a DB

https://pure-effect.org
2•tie-in•6h ago
Hi HN,

I think it's safe to say that the majority of developers don't give a second thought to writing code with I/O tangled in business logic. It's all too common to see code like: const user = findUser(email); if (!user) await saveUser(user);

Now, you may ask: what's the big deal? When we write code like this, two things happen:

1. It gets harder to debug production bugs. Unless you have the exact same database and remote API services to connect to, you may fail to reproduce the bug.

2. You have to use mocks and fakes in your tests, or use test containers, which only help somewhat, and they are slow!

To solve these issues, I built Pure Effect, a tiny TypeScript/JavaScript effect library. The core idea is simple: if a function performs I/O, it isn't pure. But if it returns a description of the I/O it wants to perform, it is. So instead of await findUser(email), you return a Command object that says, "I would like to call this function, and when it finishes, here's what to do next." Your business logic becomes a pure function. Same input, same output, every time. The database never gets touched until the interpreter (runEffect) runs.

When I first started the library, I didn't expect just how far that one idea would stretch. Once your pipelines are just data, a lot of wonderful things become possible:

- No need for mocking libraries. You walk the tree in tests and assert on its structure: assert.equal(flow.cmd.name, 'cmdFindUser'). Nothing is executed.

- Wrap any effect with Retry(effect, { attempts: 3, delay: 200, backoff: 2 }). The configuration is plain data, so you can assert on it in tests.

- Every command's input and output flows through the interpreter, so you get a full execution trace for free. You can write a simple timeTravel() function that replays it locally without touching any I/O. Perfect for debugging complex production bugs.

- An onBeforeCommand hook sits between your business logic and the interpreter. Since it sees every intended side effect before it fires, it can be used to enforce runtime guardrails. You can quarantine destructive calls before they happen for example.

- You can review AI-generated code before it runs. Since Pure Effect pipelines are plain data, you can inspect what the generated code intends to do before it touches anything.

There are just six primitives: Success, Failure, Command, Ask, Retry, and Parallel, plus effectPipe and runEffect. Zero dependencies. Under 1 KB minified and gzipped.

How it compares to Effect-TS

Effect-TS is the full-featured option in this space and has a large ecosystem. Pure Effect offers a different tradeoff. It covers the 80% case: testable pipelines, dependency injection, retry, and OpenTelemetry hooks, all in under 1 KB with zero dependencies and no new vocabulary to learn. Effect-TS is a framework you build around. Pure Effect, on the other hand, is a pattern you drop into existing code.

I've been using Pure Effect in production since December. It's at v0.8.0, not 1.0 yet, but stable enough that I wanted to put it out there and hear what people think.

GitHub: https://github.com/aycangulez/pure-effect

I wrote five posts that document how Pure Effect evolved. They are tagged at https://lackofimagination.org/tags/effect/ if you want the longer story.