MCPcopy
hub / github.com/tiagozip/cap

github.com/tiagozip/cap @4.0.5 sqlite

repository ↗ · DeepWiki ↗ · release 4.0.5 ↗
229 symbols 635 edges 55 files 18 documented · 8%
README

Cap

Cap is a lightweight, modern open-source CAPTCHA alternative using SHA-256 proof-of-work. It's fast, private, and extremely simple to integrate.

Cap widget

Documentation

Read the docs, try the demo or read the feature comparison

What is Cap?

Cap replaces visual captchas with modern, accessible and privacy-preserving proof-of-work challenges. No images, no tracking, no dependencies, works everywhere.

You can either run it on any JavaScript runtime, or use the standalone mode with Docker. Learn more about how Cap works

Why Cap?

  • 250x smaller than hCaptcha
    ~20kb, zero dependencies, loads in milliseconds

  • Privacy-first
    Cap doesn't send any telemetry back to our servers

  • Fully customizable
    Change the colors, size, position, icons and more with CSS variables

  • Proof-of-work
    Your users no longer have to waste time solving visual puzzles.

  • Standalone mode
    Run Cap anywhere with a Docker container with analytics & more

  • Invisible
    Hide Cap's widget and solve challenges in the background

  • M2M
    Keep your APIs protected while accessible to friendly robots

  • Open-source
    Completely free & open-source under the Apache 2.0 license

Cap is a great alternative to reCAPTCHA, hCaptcha and Cloudflare Turnstile

License

This project is licensed under the Apache-2.0 License, please see the LICENSE file for details.

Copyright ©2025 - present tiago


Cap's free instance is supported by DigitalOcean for open-source. Try DigitalOcean and get $250 worth of credits.


OpenSSF Best Practices Product Hunt: #1 of the month: User Experience

Extension points exported contracts — how you extend this code

InitOutput (Interface)
(no doc)
wasm/src/browser/cap_wasm.d.ts
CapMiddlewareOptions (Interface)
(no doc)
checkpoints/elysia/index.d.ts
Window (Interface)
(no doc)
widget/src/cap.d.ts
TokenValidationResult (Interface)
(no doc)
checkpoints/elysia/index.d.ts
CapProgressEventDetail (Interface)
(no doc)
widget/src/cap.d.ts
ChallengeRedeemBody (Interface)
(no doc)
checkpoints/elysia/index.d.ts
CapSolveEventDetail (Interface)
(no doc)
widget/src/cap.d.ts
ChallengeRedeemResponse (Interface)
(no doc)
checkpoints/elysia/index.d.ts

Core symbols most depended-on inside this repo

addEventListener
called by 88
widget/src/cap.d.ts
removeEventListener
called by 25
widget/src/cap.d.ts
createModal
called by 19
standalone/public/js/utils.js
getI18nText
called by 12
widget/src/src/cap.js
setState
called by 10
standalone/public/js/state.js
error
called by 9
widget/src/src/cap.js
createChallenge
called by 8
server/index.js
redeemChallenge
called by 8
server/index.js

Shape

Method 101
Function 91
Class 20
Interface 17

Languages

TypeScript100%

Modules by API surface

widget/src/src/cap.js34 symbols
widget/src/cap.min.js33 symbols
widget/src/cap.compat.min.js31 symbols
server/index.js21 symbols
widget/src/cap.d.ts19 symbols
widget/src/wasm-hashes.min.js16 symbols
wasm/src/browser/cap_wasm.js9 symbols
standalone/public/js/keyPage.js6 symbols
checkpoints/hono/index.js6 symbols
checkpoints/express/index.js6 symbols
checkpoints/elysia/index.js6 symbols
solver/index.js5 symbols

Dependencies from manifests, versioned

@cap.js/server1.0.15 · 1×
@cap.js/solver0.0.3 · 1×
@cap.js/wasm0.0.4 · 1×
@cap.js/widget0.1.18 · 1×
@elysiajs/cors1.4.0 · 1×
@elysiajs/static1.4.4 · 1×
@elysiajs/swagger1.3.1 · 1×
@types/bunlatest · 1×
@types/node22.14.1 · 1×
bun-typeslatest · 1×
cookie-parser1.4.7 · 1×
elysia1.3.3 · 1×

Datastores touched

(mysql)Database · 1 repos

For agents

$ claude mcp add cap \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact