Skip to content

About

JR Toolkits is a set of single-purpose tools. Each one does a single job and runs entirely inside your browser. This page explains why the site is built that way, how it works technically, and what pays for it.

Why there is no backend

Most online tools send what you type to a server. That is easier to build, but it asks you to trust the site first. Production schemas and unreleased data often should not leave a company network, and a promise that nothing is stored is not something you can check.

Doing all the work client-side turns “could this leak?” into a question you can answer yourself. Open the network tab in devtools and look for a request carrying your data. Nothing here has to be taken on faith.

That choice costs something real. There are three main trade-offs:

  • Nothing syncs across devices, because there are no accounts and no server to store anything on.
  • Capacity is bounded by browser memory and single-threaded performance, so very large inputs get noticeably slower.
  • Any feature that genuinely needs a server does not get built. It is either replaced with something achievable in the browser, or dropped.

How it is built

  • Astro generates the site, so every page ships complete HTML at build time and is readable without running JavaScript.
  • Interactive tools load as React islands, so only a tool page downloads React. Content pages ship zero JavaScript.
  • Saved inputs are written to the browser’s localStorage rather than a database. See the privacy policy for the details.
  • Hosting is Cloudflare Pages. The whole site is a bundle of static files handed to you by a CDN, with no return path.
  • There is no backend code in the repository and no analytics service installed.

What pays for it

  • Google AdSense is the only source of revenue for the site.
  • Ads appear at the edges of a page and never on top of a tool’s working area.
  • The privacy policy covers how advertising cookies are used and how to opt out of personalised ads.