explaingit

emmanuelmelvin/ratter-engine

Analysis updated 2026-05-18

2TypeScriptAudience · developerComplexity · 3/5Setup · moderate

TLDR

A local development tool that gives your services clean domain names like app.local instead of port numbers, by coordinating Caddy and a local DNS server.

Mindmap

mindmap
  root((Ratter))
    What it does
      Local domain names
      Coordinates DNS and proxy
    Tech stack
      TypeScript
      Caddy
      Technitium DNS
    Use cases
      Readable local domains
      Automatic HTTPS
      Dashboard management
    Audience
      Developers
    Components
      SQLite storage
      Swagger API docs
      Web dashboard

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Give local development services readable domain names instead of port numbers.

USE CASE 2

Automatically get HTTPS on local domains without manually running mkcert.

USE CASE 3

Manage local domain routing through a dashboard, HTTP API, or Swagger UI.

USE CASE 4

Coordinate DNS records and routing rules together whenever a local domain changes.

What is it built with?

TypeScriptNode.jsCaddyTechnitium DNS ServerSQLite

How does it compare?

emmanuelmelvin/ratter-enginearashthr/hugo-flowargeneau12e/kairos-tx
Stars222
LanguageTypeScriptTypeScriptTypeScript
Setup difficultymoderatemoderatehard
Complexity3/53/54/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires Node.js plus Caddy and Technitium DNS Server installed separately.

License is not stated in the explanation.

In plain English

Ratter is a local development tool that solves a common frustration: when you are building software and running several services at once on your computer, you typically have to juggle multiple port numbers (localhost:3000 for the front end, localhost:8080 for the API, and so on). Instead, Ratter lets you use clean, readable addresses like app.local or api.local, the same way a real website works, without manually editing system configuration files. To make this happen, it coordinates three other programs behind the scenes. Caddy is a web server that acts as a middleman, routing traffic from a domain name to whichever service is running on your computer and automatically handling secure HTTPS connections. Technitium DNS Server answers the name-resolution question: when you type api.local into your browser, your computer needs to know what address that points to, and Technitium answers that locally. The third component, mkcert, was previously used to generate trusted local certificates but is now handled by Caddy instead. Ratter itself runs as a small coordination layer on port 4321. When you create or update a local domain through its dashboard or HTTP API, it simultaneously registers a DNS record in Technitium and creates the routing rule in Caddy. Settings are stored in a SQLite database on your machine, and the project also exposes a web dashboard, Swagger UI, and interactive API documentation so you can inspect and manage all your local domains without touching configuration files directly. It is written in TypeScript and requires Node.js along with Caddy and Technitium installed separately.

Copy-paste prompts

Prompt 1
How do I set up Ratter with Caddy and Technitium DNS Server on my machine?
Prompt 2
Explain how Ratter keeps DNS records and Caddy routing rules in sync when I add a local domain.
Prompt 3
Show me how to use Ratter's dashboard or HTTP API to create a new local domain like api.local.
Prompt 4
Help me troubleshoot why my app.local domain isn't resolving with Ratter and Technitium DNS.

Frequently asked questions

What is ratter-engine?

A local development tool that gives your services clean domain names like app.local instead of port numbers, by coordinating Caddy and a local DNS server.

What language is ratter-engine written in?

Mainly TypeScript. The stack also includes TypeScript, Node.js, Caddy.

What license does ratter-engine use?

License is not stated in the explanation.

How hard is ratter-engine to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is ratter-engine for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.