burneh

Systems engineering for things that have to run themselves.

We build software that keeps running without you watching it.

burneh · systems consolelive
modules
throughput
1,240/s
p99
42ms
fill
99.2%
execution · 60m
-77.0%
activity
trace · tradingtail -f
12:04:40order.filledfilled
12:04:37order.submittedsent
12:04:34strategy.evalpass
12:04:31webhook.receivedok

The stack we build and ship on, across every discipline.

Next.jsReactTypeScriptJavaScriptNode.jsBunDenoTailwindSvelteVueAstroPythonRustGoSolidityPHPRubySwiftKotlinElixirSupabasePostgreSQLRedis
MongoDBMySQLPrismaGraphQLVercelCloudflareRailwayDockerKubernetesGitHubGitLabNginxLinuxNamecheapHostingerStripeResendTelegramDiscordSolanaEthereumFirebaseTradingView

Built on the stack you already use.

Pick a technology to see what we ship with it, and how.

1import { api, auth, db, trace } from "@burneh/core";
2
3// A typed endpoint: authenticate, query, respond.
4export const getOrders = api.route(async (req) => {
5 const user = await auth.require(req);
6
7 const orders = await db.orders.findMany({
8 where: { userId: user.id, status: "open" },
9 take: 50,
10 });
11
12 return trace("orders.listed", { count: orders.length, data: orders });
13});

You can watch it run.

Everything we ship keeps its own log. On the left, a trading loop taking a signal to a filled order. On the right, a support bot that steps aside the moment a person is needed. The clock is yours, live.

signal → broker
live
--:--:--risk.rejectedmax positionshold
--:--:--order.filled+0.6%ok
--:--:--order.submittedES · mktsent
--:--:--risk.passeddrawdown 1.4%ok
--:--:--signal.verifiedhmac okok
--:--:--webhook.receivedTV → brokerok

Traced, line by line

A signal lands, the risk check runs, the order goes out. Every line is a real event with a time, one you could pull up a week later. Press Send to fire one yourself.

Escalated--

from @omar on WhatsApp with intent dispute.open

handed to a person, thread attached

Resolved--

from @maria on Telegram with intent booking.create

handled end to end by the agent

It knows when to step back

The bot handles what it can and hands off the rest. The second it is unsure, the whole thread goes to a person, nothing dropped.

The dashboard your operators actually use.

Multi-tenant from the first commit. Live metrics, a full audit trail, and the controls to step in the moment a system needs you.

Overview

all systems · last 60m

active tenants
312
+6
orders / min
1,240
+18.4%
p99
42ms
-3ms
uptime
99.98%
30d
orders filled+18.4%
timetenantmktsidestatus
12:04:33acme-coESlongfilled
12:04:31nakonNQshortfilled
12:04:28pearl-labsSOLlongpending
12:04:22vireoBTClongfilled
12:04:17acme-coESshortrejected
12:04:09orbitETHlongfilled

It has to be run, not just launched.

So we build the operating side too. Who can touch what, and how the whole thing is holding up, without leaving the dashboard.

workspace
acme-co
pro
members
24
admins
3
active
seats
40

Access and roles

Multi-tenant from day one. Every action is scoped to a workspace and a role, with an audit trail behind it.

Learn more
uptime
99.98%
requests1.2M
errors240
latency p99
42ms
saturation
queue depth

Health and alerts

Uptime, latency, and error budgets in view, with an alert the moment something drifts.

Learn more

The code, and what it makes.

No slideware. The thing that ships is the thing you see, side by side with how it is built.

1import { feed, strategy, backtest } from "@burneh/core";
2
3// A mean-reversion strategy, backtested on a year of candles.
4const strat = strategy.define({
5 entry: (c) => c.rsi < 30,
6 exit: (c) => c.rsi > 55,
7 risk: { maxDrawdown: 0.05, size: 0.25 },
8});
9
10export const report = backtest(strat, feed.history("ES", "y"));

The engineering underneath.

The parts you only notice when they are missing. We build them in from the start.

Multi-tenant isolation

Every workspace is sealed off. Data is scoped with row-level security, so one tenant can never read another.

Everything is traced

Every step a system takes is a recorded event with an id, so you can replay exactly what happened.

Rate-limited and abuse-aware

Per-key limits, backoff, and suppression, so one busy or hostile caller can't take the whole thing down.

Safe to retry

Webhooks and jobs carry idempotency keys. A duplicate delivery does the work once, never twice.

Keys stay secret

Secrets live server-side, never in the browser. Every request is HMAC-verified before it runs.

Risk guards on money

Anything that moves funds passes a risk check first, with drawdown and position limits it can't skip.

Sandboxed demos

Every tool can be tried live in an isolated sandbox, so a demo can never touch real funds or data.

Typed end to end

One type system from the database to the UI. If it compiles, the shapes line up.

Ships on your stack

We build in the language and framework you already run, not a rewrite you will have to maintain.

Tell us what has to keep running.

Tell us what it has to do. We come back with a scope, a plan, and where a demo proves it.