2023-02-13 18:01:53 +05:30
<!doctype html>
< html lang = "en-US" >
< head >
< meta charset = "utf-8" >
< meta http-equiv = "x-ua-compatible" content = "ie=edge" >
< meta name = "viewport" content = "width=device-width, initial-scale=1, shrink-to-fit=no" >
< link rel = "preload" as = "font" href = "/fonts/vendor/jost/jost-v4-latin-regular.woff2" type = "font/woff2" crossorigin >
< link rel = "preload" as = "font" href = "/fonts/vendor/jost/jost-v4-latin-700.woff2" type = "font/woff2" crossorigin >
< link rel = "stylesheet" href = "/main.4492eacff4110697cd6162326bce4ee59e92315bf9acc357594066968669326dc80b75b1a39e6cea81c4f8898bd1d294fcc657a9cb61baed14c7dee6f9e2b2d6.css" integrity = "sha512-RJLqz/QRBpfNYWIya85O5Z6SMVv5rMNXWUBmloZpMm3IC3Wxo55s6oHE+ImL0dKU/MZXqcthuu0Ux97m+eKy1g==" crossorigin = "anonymous" >
< noscript > < style > img . lazyload { display : none ; } < / style > < / noscript >
< meta name = "robots" content = "index, follow" >
< meta name = "googlebot" content = "index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1" >
< meta name = "bingbot" content = "index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1" >
< title > July, 2022: Monthly Report - mCaptcha< / title >
< meta name = "description" content = "Codeberg is trying out mCaptcha, Gitea is getting mCaptcha support, mCaptcha supports MariaDB, I've applied for NLnet and Open Tech Fund, documentation is updated: tutorials and glossary is added and glue libraries have new releases." >
< link rel = "canonical" href = "/blog/july-2022-monthly-report/" >
< meta name = "twitter:card" content = "summary_large_image" >
< meta name = "twitter:image" content = "/blog/july-2022-monthly-report/icon.png" >
< meta name = "twitter:title" content = "July, 2022: Monthly Report" >
< meta name = "twitter:description" content = "Codeberg is trying out mCaptcha, Gitea is getting mCaptcha support, mCaptcha supports MariaDB, I've applied for NLnet and Open Tech Fund, documentation is updated: tutorials and glossary is added and glue libraries have new releases." >
< meta name = "twitter:site" content = "@" >
< meta name = "twitter:creator" content = "@" >
< meta property = "og:title" content = "July, 2022: Monthly Report" >
< meta property = "og:description" content = "Codeberg is trying out mCaptcha, Gitea is getting mCaptcha support, mCaptcha supports MariaDB, I've applied for NLnet and Open Tech Fund, documentation is updated: tutorials and glossary is added and glue libraries have new releases." >
< meta property = "og:type" content = "article" >
< meta property = "og:url" content = "/blog/july-2022-monthly-report/" >
< meta property = "og:image" content = "/blog/july-2022-monthly-report/icon.png" >
< meta property = "article:published_time" content = "2022-08-04T00:00:00+00:00" >
2023-03-12 20:24:54 +05:30
< meta property = "article:modified_time" content = "2023-02-13T18:00:02+05:30" >
2023-02-13 18:01:53 +05:30
< meta property = "og:site_name" content = "mCaptcha" >
< meta property = "article:publisher" content = "https://www.facebook.com/" >
< meta property = "article:author" content = "https://www.facebook.com/" >
< meta property = "og:locale" content = "en_US" >
< script type = "application/ld+json" >
{
"@context": "http://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [{
"@type": "ListItem",
"position": 1 ,
"name": "Home",
"item": "\/"
},{
"@type": "ListItem",
"position": 2 ,
"name": "Blogjuly 2022 Monthly Report",
"item": "\/blogjuly-2022-monthly-report\/"
}]
}
< / script >
< meta name = "theme-color" content = "#fff" >
< link rel = "apple-touch-icon" sizes = "180x180" href = "/apple-touch-icon.png" >
< link rel = "icon" type = "image/png" sizes = "32x32" href = "/favicon-32x32.png" >
< link rel = "icon" type = "image/png" sizes = "16x16" href = "/favicon-16x16.png" >
< link rel = "manifest" href = "/site.webmanifest" >
< / head >
< body class = "blog single" >
< div class = "header-bar fixed-top" > < / div >
< header class = "navbar fixed-top navbar-expand-md navbar-light" >
< div class = "container" >
< input class = "menu-btn order-0" type = "checkbox" id = "menu-btn" >
< label class = "menu-icon d-md-none" for = "menu-btn" > < span class = "navicon" > < / span > < / label >
< a class = "navbar-brand order-1 order-md-0 me-auto" href = "/" > mCaptcha< / a >
< button id = "mode" class = "btn btn-link order-2 order-md-4" type = "button" aria-label = "Toggle mode" >
< span class = "toggle-dark" > < svg xmlns = "http://www.w3.org/2000/svg" width = "20" height = "20" viewBox = "0 0 24 24" fill = "none" stroke = "currentColor" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" class = "feather feather-moon" > < path d = "M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z" > < / path > < / svg > < / span >
< span class = "toggle-light" > < svg xmlns = "http://www.w3.org/2000/svg" width = "20" height = "20" viewBox = "0 0 24 24" fill = "none" stroke = "currentColor" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" class = "feather feather-sun" > < circle cx = "12" cy = "12" r = "5" > < / circle > < line x1 = "12" y1 = "1" x2 = "12" y2 = "3" > < / line > < line x1 = "12" y1 = "21" x2 = "12" y2 = "23" > < / line > < line x1 = "4.22" y1 = "4.22" x2 = "5.64" y2 = "5.64" > < / line > < line x1 = "18.36" y1 = "18.36" x2 = "19.78" y2 = "19.78" > < / line > < line x1 = "1" y1 = "12" x2 = "3" y2 = "12" > < / line > < line x1 = "21" y1 = "12" x2 = "23" y2 = "12" > < / line > < line x1 = "4.22" y1 = "19.78" x2 = "5.64" y2 = "18.36" > < / line > < line x1 = "18.36" y1 = "5.64" x2 = "19.78" y2 = "4.22" > < / line > < / svg > < / span >
< / button >
< ul class = "navbar-nav social-nav order-3 order-md-5" >
< li class = "nav-item" >
< a class = "nav-link" href = "https://github.com/mCaptcha" > < svg xmlns = "http://www.w3.org/2000/svg" width = "20" height = "20" viewBox = "0 0 24 24" fill = "none" stroke = "currentColor" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" class = "feather feather-github" > < path d = "M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22" > < / path > < / svg > < span class = "ms-2 visually-hidden" > GitHub< / span > < / a >
< / li >
< / ul >
< div class = "collapse navbar-collapse order-4 order-md-1" >
< ul class = "navbar-nav main-nav me-auto order-5 order-md-2" > < li class = "nav-item active" >
< a class = "nav-link" href = "/blog/" > Blog< / a >
< / li >
< li class = "nav-item" >
< a class = "nav-link" href = "/community/" > Community< / a >
< / li >
< li class = "nav-item" >
< a class = "nav-link" href = "/contact/" > Contact< / a >
< / li >
< li class = "nav-item" >
< a class = "nav-link" href = "/about/" > About< / a >
< / li >
< li class = "nav-item" >
< a class = "nav-link" href = "/docs/introduction/installing-captcha/" > Docs< / a >
< / li >
< / ul >
< div class = "break order-6 d-md-none" > < / div >
< form class = "navbar-form flex-grow-1 order-7 order-md-3" >
< input id = "userinput" class = "form-control is-search" type = "search" placeholder = "Search docs..." aria-label = "Search docs..." autocomplete = "off" >
< div id = "suggestions" class = "shadow bg-white rounded" > < / div >
< / form >
< / div >
< / div >
< / header >
< div class = "wrap container" role = "document" >
< div class = "content" >
< div class = "row flex-xl-nowrap" >
< nav class = "docs-toc d-none d-xl-block col-xl-3" aria-label = "Secondary navigation" >
< div class = "page-links" >
< h3 > On this page< / h3 >
< nav id = "TableOfContents" >
< ul >
< li > < a href = "#tldr" > TL;DR< / a > < / li >
< li > < a href = "#codeberg-is-deploying-mcaptcha" > Codeberg is deploying mCaptcha< / a > < / li >
< li > < a href = "#gitea-gets-mcaptcha-support" > Gitea gets mCaptcha support< / a > < / li >
< li > < a href = "#mcaptcha-supports-mariadb" > mCaptcha supports MariaDB:< / a > < / li >
< li > < a href = "#applied-for-funding-nlnet-and-open-tech-fund" > Applied for Funding: NLnet and Open Tech Fund< / a > < / li >
< li > < a href = "#documentation-updates" > Documentation updates< / a > < / li >
< li > < a href = "#new-releases-glue-libraries" > New releases: glue libraries< / a > < / li >
< li > < a href = "#footnotes" > Footnotes< / a > < / li >
< / ul >
< / nav >
< / div >
< / nav >
< main class = "docs-content col-lg-11 col-xl-9 mx-xl-auto" >
< article >
< div class = "blog-header" >
< h1 > July, 2022: Monthly Report< / h1 >
< p > < small > Posted August 4, 2022 by < a class = "stretched-link position-relative" href = "/contributors/aravinth-manivannan/" > Aravinth Manivannan< / a > ‐ < strong > 2 min read< / strong > < / small > < p >
2023-03-12 20:24:54 +05:30
< p > < small > Last Edited February 13, 2023< / small > < p >
2023-02-13 18:01:53 +05:30
< / div >
< p class = "lead" > We are mCaptcha. We build kickass CAPTCHA systems that give (DDoS) attackers a run for their money. And we do all of this without tracking your users. Oh and did I mention our UX is great?< / p >
< p > Hello and welcome to the July, 2022 monthly report!< / p >
< h2 id = "tldr" > TL;DR< / h2 >
< p > < em > Codeberg is trying out mCaptcha, Gitea is getting mCaptcha support,
mCaptcha supports MariaDB, I’ ve applied for NLnet and Open Tech Fund,
documentation is updated: tutorials and glossary is added and glue libraries
have new releases.< / em > < / p >
< h2 id = "codeberg-is-deploying-mcaptcha" > Codeberg is deploying mCaptcha< / h2 >
< p > Codeberg is committed to trying out mCaptcha to make their platform more
accessible: they currently use a text-based CAPTCHA, which will be
replaced by mCaptcha. The decision was finalized after I presented
mCaptcha to them at a meeting their organized. Please see
< a href = "https://batsense.net/talks/codeberg-introducing-mcaptcha/" > here< / a > for
slides.< / p >
< h2 id = "gitea-gets-mcaptcha-support" > Gitea gets mCaptcha support< / h2 >
< p > < a href = "https://gusted.xyz" > @Gusted< / a > from Codeberg is working on integrating
mCaptcha in Gitea so that Codeberg can deploy it. Please see
< a href = "https://github.com/go-gitea/gitea/pull/20458" > here< / a > for related the
pull request.< / p >
< p > This project is yet to see usage, so we are venturing into uncharted
territory: should you face issues with either deploying or
integrating mCaptcha, please feel free < a href = "/community" > to reach out< / a > .< / p >
< h2 id = "mcaptcha-supports-mariadb" > mCaptcha supports MariaDB:< / h2 >
< p > Codeberg uses MariaDB. To facilitate Codeberg deployment, I implemented
support for MariaDB. < a href = "https://mcaptcha.org/blog/may-2022-monthly-report#refactor" > The work done in
May, 2022< / a > made
implementing support easy. Support for MariaDB is first class in
mCaptcha: automatic testing exist to run tests with both Postgres and
MariaDB, so I expect things to be stable.< / p >
< h2 id = "applied-for-funding-nlnet-and-open-tech-fund" > Applied for Funding: NLnet and Open Tech Fund< / h2 >
< p > I’ ve applied for NLnet and Open Tech Fund[0], Please find the
applications
< a href = "https://forum.forgefriends.org/t/mcaptcha-nlnet-grant-application-august-2022/830/3" > here< / a >
and
< a href = "https://forum.forgefriends.org/t/mcaptcha-nlnet-grant-application-august-2022/830/3" > here< / a >
respectively.< / p >
< p > If funding is granted:< / p >
< ol >
< li > I’ ll be able to work full-time for a year at the rate of 2,000 EUR/month< / li >
< li > We’ ll have a dedicated build server< / li >
< li > We’ ll have funds to run a DDoS test to gauge mCaptcha’ s effectiveness< / li >
< / ol >
< h2 id = "documentation-updates" > Documentation updates< / h2 >
< p > mCaptcha docs over the months have become inconsistent and incorrect. I
cleaned up some of the mess and added < a href = "/docs/introduction/installing-captcha/" > a
tutorial< / a > to help folks install
mCaptcha on their website. The docs also gets < a href = "/docs/terminology/access-token/" > a
glossary< / a > , which contain explanations
to mCaptcha jargon.< / p >
< h2 id = "new-releases-glue-libraries" > New releases: glue libraries< / h2 >
< p > < code > 0.1.0-alpha-2< / code > for
< a href = "https://www.npmjs.com/package/@mcaptcha/vanilla-glue" > vanilla< / a > ,
< a href = "https://www.npmjs.com/package/@mcaptcha/react-glue" > react< / a > and
< a href = "https://www.npmjs.com/package/@mcaptcha/svelte-glue" > svelte< / a > glue
libraries were released. They now hand over widget sizing to the client
code(< a href = "https://github.com/mCaptcha/glue/pull/12" > associated PR< / a > ).< / p >
< h2 id = "footnotes" > Footnotes< / h2 >
< ul >
< li > [0]: Special thanks to
< a href = "https://mastodon.social/@humanetech" > @humantech< / a > for his thoughtful
reviews and to < a href = "https://dachary.org" > @dachary< / a > for pointing me towards
OTF.< / li >
< / ul >
< / article >
< div class = "docs-navigation d-flex justify-content-between" >
2023-03-12 20:24:54 +05:30
< a href = "/blog/february-2023-monthly-report/" >
< div class = "card my-1" >
< div class = "card-body py-2" >
← February, 2023: Monthly Report
< / div >
< / div >
< / a >
2023-02-13 18:01:53 +05:30
< a class = "ms-auto" href = "/blog/june-2022-monthly-report/" >
< div class = "card my-1" >
< div class = "card-body py-2" >
June, 2022: Monthly Report →
< / div >
< / div >
< / a >
< / div >
< p class = "edit-page" > < a href = "https://github.com/mCaptcha/website/blob/master/content/blog/07-22-monthly-report/index.md" > < svg xmlns = "http://www.w3.org/2000/svg" width = "16" height = "16" viewBox = "0 0 24 24" fill = "none" stroke = "currentColor" stroke-width = "2" stroke-linecap = "round" stroke-linejoin = "round" class = "feather feather-edit-2" > < path d = "M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z" > < / path > < / svg > Edit this page on GitHub< / a > < / p >
< / main >
< / div >
< / div >
< / div >
< footer class = "footer text-muted" >
< div class = "container" >
< div class = "row" >
< div class = "col-lg-8 order-last order-lg-first" >
< ul class = "list-inline" >
< li class = "list-inline-item" > Powered by < a href = "https://gohugo.io/" > Hugo< / a > , and < a href = "https://getdoks.org/" > Doks< / a > < / li >
< / ul >
< / div >
< div class = "col-lg-8 order-first order-lg-last text-lg-end" >
< ul class = "list-inline" >
< li class = "list-inline-item" > < a href = "/about/" > About< / a > < / li >
< li class = "list-inline-item" > < a href = "/donate" > Donate< / a > < / li >
< li class = "list-inline-item" > < a href = "/privacy-policy/" > Privacy< / a > < / li >
< li class = "list-inline-item" > < a href = "/security" > Security< / a > < / li >
< li class = "list-inline-item" > < a href = "https://stats.uptimerobot.com/GK7VLFJnBl" > Status< / a > < / li >
< li class = "list-inline-item" > < a href = "/support/" > Support< / a > < / li >
< li class = "list-inline-item" > < a href = "/thanks" > Thanks< / a > < / li >
< li class = "list-inline-item" > < a href = "/tos" > ToS< / a > < / li >
< / ul >
< / div >
< / div >
< / div >
< / footer >
< script src = "/main.min.fc14a6a9dceb7093b6984e33583a45c79e3c960959d75df6b62753b4d1c63a97d25af2b0ca924ed12675f1de34f3fce9ec81668f2d3bee114b9b6357dd2e92cd.js" integrity = "sha512-/BSmqdzrcJO2mE4zWDpFx548lglZ1132tidTtNHGOpfSWvKwypJO0SZ18d408/zp7IFmjy077hFLm2NX3S6SzQ==" crossorigin = "anonymous" defer > < / script >
< script src = "/index.min.f24b6e33dac74771476dda67fe905af998983abef17f74f74d71228ac8f40f87af8b15bcd9f0da775c90a41395c3d153fb0067cc75ff642c520b3607340014c0.js" integrity = "sha512-8ktuM9rHR3FHbdpn/pBa+ZiYOr7xf3T3TXEiisj0D4evixW82fDad1yQpBOVw9FT+wBnzHX/ZCxSCzYHNAAUwA==" crossorigin = "anonymous" defer > < / script >
< / body >
< / html >