Powered by ToyTools

The platform behind the tools

Every tool on this site signs itself the same way. This page is what that signature means: not a badge, but the 22 engines, the shared browser runtime and the build gates that all 139 tools are assembled from.

Engines
22
Patterns
33
Tools
139
Categories
13

A tool here is a declaration, not an application

The usual way to end up with 139 online utilities is to write 139 of them. Each one gets its own page, its own idea of what a button looks like, its own bugs, and its own answer to whether your data leaves the machine. Sites built that way get worse as they get bigger.

ToyTools is built the other way round. The computation lives in an engine, and the interface, the output rendering, the keyboard behaviour, the saved state and the privacy contract belong to the platform. A tool declares which engine it runs on and what it is called. 17 of the 22 engines ship a shared widget, so most tools on the site contribute a config file and nothing else. That is why the catalog can grow without the site getting heavier or less consistent.

The layers

Four things sit between you and an answer, and each one is shared by everything above it.

  1. Engines

    The maths. 22 of them, owning 33 patterns between them: encoding, hashing, structured data, finance, date and time, colour, units, simulation and the rest. An engine is tested on its own, away from any page, so a correctness fix lands for every tool that runs on it at once rather than in one of them.

  2. Runtime

    One small core on every page: copy, toasts, saved state, favourites, recent tools and focus handling. On top of it, exactly one engine chunk, loaded only by the pages that declare that engine. Opening a hash tool does not download the finance code.

  3. Knowledge graph

    Related tools, guides and FAQ entries are derived from the same declarations, following engine to pattern to family to category. Nothing on the site is a hand-maintained list of links, which is why every guide, every question and every related-tool row stays correct as the catalog changes.

  4. Gates

    Each page carries a byte budget the build enforces. A change that makes a page heavier than its budget fails the build instead of quietly spending your bandwidth. Content, engine shape and phone layout have their own checks in the same run.

What every tool inherits

These are not per-tool promises. They are properties of the platform, so they hold on the tool you opened today and on the one added next month.

  • It computes on your device. There is no application server and no database to send anything to.
  • It opens fast and stays inside its budget. Enforced at build time, per page.
  • It keeps working offline once you have opened it, and installs to a phone home screen as its own app.
  • It behaves the same way. Same keyboard shortcuts, same copy and clear controls, same dark mode, same search.
  • Anything it saves is yours. Stored in your browser, and exportable or deletable from settings.

The engines

The current manifest, generated from the registry rather than written out by hand.

See it for yourself

The architecture map draws the same registries as an interactive diagram, down to which engine powers which tool. About covers why the site exists and how new tools get chosen, and privacy covers exactly what is stored and what is sent.