One API, every platform
A browser agent, seven server SDKs, four native mobile SDKs, and edge connectors — all speaking the same identify + verify contract. Open source and MIT-licensed.
Browser agent
A 14 kB zero-dependency agent. Install from npm or a single script tag.
npm install @prynt/js
Or drop in a script tag: <script src="http://127.0.0.1:5050/cdn/prynt.umd.js"></script>
View on GitHubServer SDKs — seven languages
Verify identifications with your secret key, check webhook signatures, unseal Sealed Results, and call /collect, /enrich, /challenge and /outcomes.
<!-- Maven --> <dependency> <groupId>io.github.devonauts</groupId> <artifactId>prynt-server</artifactId> <version>1.0.0</version> </dependency>View on GitHub
Mobile SDKs
Stable device identity + integrity (jailbreak, root, Frida, emulator, cloned-app) + hardware attestation.
// Package.swift .package(url: "https://github.com/devonauts/pryntid", from: "1.0.0")View on GitHub
// build.gradle.kts (repositories: mavenCentral())
implementation("io.github.devonauts:prynt-android:1.0.0")
View on GitHub
Edge connectors
Decide at the edge before traffic reaches your origin — Cloudflare Workers and nginx/OpenResty, fail-open by design.
# wrangler.toml → deploy at the edge npm install @prynt/edge-cloudflare
Decides allow / challenge / block sub-10ms, serves the agent first-party under /__prynt/*, fail-open.
View on GitHub# auth_request + OpenResty Lua # see packages/edge-nginx/README
Gate any origin with an auth_request subrequest — no app code changes required.
View on GitHubPrefer to run it yourself?
The API, admin console, and browser CDN all ship in the monorepo — one docker compose up and you own the whole stack.