lib created
Find a file
2021-03-11 12:23:31 +05:30
.github/workflows CI: linting and mv doc to master push 2021-03-11 12:23:31 +05:30
examples examples, doc and v0.1 prep 2021-03-09 17:37:46 +05:30
src Fixed incorrect function name and Docstring 2021-03-11 11:26:15 +05:30
.gitignore renamed data to system, hashcache is not 'static 2021-03-09 15:35:33 +05:30
Cargo.lock moved from mono repo 2021-03-09 15:59:38 +05:30
Cargo.toml moved from mono repo 2021-03-09 15:59:38 +05:30
CHANGELOG.md examples, doc and v0.1 prep 2021-03-09 17:37:46 +05:30
LICENSE.md licence 2021-03-01 20:34:05 +05:30
README.md doc links 2021-03-11 11:53:37 +05:30

mCaptcha

mCaptcha - PoW based DoS protection

Documentation Documentation dependency status AGPL License CI (Linux)
codecov Documentation

mCaptcha uses SHA256 based proof-of-work(PoW) to rate limit users.

If someone wants to hammer your site, they will have to do more work to send requests than your server will have to do to respond to their request.

NOTE: 0.1 is out, expect breaking changes as ergonomics and performance is improved. Checkout changelog for changes and migration pointers.

Why use mCaptcha?

  • Free software, privacy focused
  • Seamless UX - No more annoying captchas!
  • IP address independent(sort of) - your users are behind a NAT? We got you covered!
  • Automatic bot throttling
  • Resistant to replay attacks - bye-bye captcha farms!

Demo

I'll try to write a dedicated demo server but until then you can try Shuttlecraft/identity's sign up page available at https://accounts.shuttlecraft.io/signup. Feel free to provide bogus information while signing up(project under development, database frequently wiped).

Be sure to open dev tools' network tab to witness the magic!

Documentation

Usage

mCaptcha is made up of three components:

1. Front-end library

We have a WASM library now, Android and iOS libraries soon

2. Back-end library

We have Rust library, other languages will have support soon

3. Rate limiting service

Under development.

A paid, managed service will be made available soon but I(@realaravinth) encourage you guys to self-host. Go decentralisation!

Contributing

yes please!