Open source by GainRatio

Software that can show you it did what it claimed.

Local-first applications and the libraries underneath them: signed data, content-addressed bundles, and caches that re-check signatures instead of trusting rows. No accounts, no analytics, no upload.

Applications

Three working products, each built on the same verified-data path. They run in your browser and keep the sensitive part on your machine.

Live

AML-Filter

Checks customer names against government sanctions lists inside the browser. The watchlist is signed and fresh; names never leave the page.

aml-filter.com →
Live

EdgeReco

Search and product recommendations that run in the shopper's browser, from a signed catalog, instead of a per-query server round trip.

edge-reco.com →
Live

AlmaMesh

A Vedic astrology chart computed entirely in your browser. No account, no birth-data upload, no tracking.

almamesh.com →

Libraries

The reusable pieces, in the open. Start where your problem is; each repository documents its own failure modes.

@gainratio/browser

Load data into a browser tab only if it is provably yours, then keep using it offline.

edge-proc

Ship signed data to devices from Python: verify it, download only changes, search offline.

edgeproc-core

Keep each customer's search results separate in a shared index, with stable error codes.

avow

Seal a record into a signed receipt anyone can check offline, later.

privacy-core

Hide card numbers, emails and ID numbers from AI models, then put them back in the reply.

errors

Turn any error into one stable code and one clear message.

assay

Turn measurements on different scales into one score that shows its math.

agentic-tab-context

Let a coding assistant use the browser tab you already have open, with your existing logins.

What “verified” means here

Not a badge. Three properties you can test in the repository, on the live site, or with the network disconnected.

Signed, not assumed

The publisher signs a pointer; the client pins a public key and refuses a signer it does not trust or has revoked.

Addressed, not trusted

Manifests and chunks are named by their SHA-256. A byte that changed is a load that fails, not a warning in a log.

Local, not harvested

The browser products do the sensitive work on your machine. There is no account, no analytics script, and no upload of the names or birth data you enter.

Read the code before you trust the claim.

Every repository is public and MIT-licensed, with tests, a security policy, and a documented threat model. If a claim here is wrong, the issue tracker is open.

github.com/gainratio ↗