founder · minthost & mintbreeze

Dex.

I build software that picks up the phone, books the client, and keeps the Discord civil.

Founder of MintHost and MintBreeze. I build AI-powered tools for small businesses, and I run Discord & ER:LC bots, including Zeltra, built on the open-source Ducky V1. I ship all of it end to end: product, code, database, infrastructure, support inbox.

nowkeeping MintHost, MintBreeze and Zeltra running. Also, this site.

~/minthost/lib Ln 1, Col 1 · TypeScript

~/terminal

Poke around.

A real little shell. Try help, neofetch, or sudo hire dex. Tab completes, ↑↓ walk history.

dex@mintbreeze: ~

~/work

Three things I run.

Two businesses and a bot I run. The code below is illustrative, written for this page; the business source stays private, and Zeltra is open source.

01

MintHost

Lead generation and booking

A chat widget that turns website visitors into booked customers. It scores every conversation, nudges the hot ones toward a calendar slot, and MintHost builds and hosts the site it lives on.

  • Next.js
  • TypeScript
  • Prisma
  • PostgreSQL
minthost.org
POST/v1/leads/score runs in your browser
200 OK12 ms
02

MintBreeze

Receptionist and assistant

It answers the phone, replies to email, follows up with people who went quiet, books appointments, and sends the owner a morning report of what actually needs them.

mintbreeze.org
handlers/call-ended.ts
on("call.ended", async (call) => {
  const intent = await classify(call.transcript);

  if (intent.kind === "book") {
    const slot = await calendar.firstOpen(intent.window);
    await sms.send(call.from, confirm(slot));
  }

  await owner.digest.add(summarize(call));
});
events · demo line
    m
    mod_kaiToday at 9:41 PM

    /slowmode seconds:30 reason:cool it down

    ZeltraBOTToday at 9:41 PM
    Slowmode on #general

    30 seconds between messages. Logged to the mod case history.

    reason: cool it down
    03

    Zeltra

    Discord + ER:LC bot · built on open-source Ducky V1 · AGPL-3.0

    73slash commands

    A multipurpose Discord + ER:LC bot I run and customize, built on the open-source Ducky V1 by duckyerlc (Lua, Luvit and Discordia). It covers moderation with case history, tickets, Roblox verification, staff shifts and LOAs, ER:LC server tools, giveaways and an economy. My fork is public under AGPL-3.0.

    -- /about, in Discord
    "Based on Ducky V1 by duckyerlc. Source: github.com/dtxdex1020/Zeltra"

    ~/open-source

    Small tools, out in the open.

    Six weekend-sized projects, MIT licensed and tested. Clone them, fork them, take what helps.

    ~/stack

    The toolbox, as an object.

    Hover a value. It's TypeScript all the way down, with a few boring choices on purpose.

    • 01Boring tech for the parts that must not break.
    • 02Ship the small version, then listen.
    • 03Privacy is a feature, not a footer link.
    dex.config.ts· satisfies Builder
    const dex = {
      role: "founder",
      ships: ["MintHost", "MintBreeze", "Zeltra"],
    
      languages: ["TypeScript", "JavaScript", "SQL", "HTML", "CSS"],
      frameworks: ["Next.js", "React", "Tailwind CSS"],
      runtime: "Node.js",
      data: { orm: "Prisma", db: "PostgreSQL" },
      bots: ["Discordia", "discord.js"], // Zeltra: open-source Ducky V1
      ops: ["Railway", "Docker", "Git"],
    
      focus: "AI-powered tools for small businesses",
      inbox: "support.minthost@gmail.com",
    } as const satisfies Builder;
    
    export default dex;

    ~/contact

    Missing calls?
    Losing leads?

    If you run a small business, or you want to talk about a build, my inbox is open.

    ~/changelog.md

    yes, a portfolio with a changelog.

    1. v2.1

      Added an open source section with six small tools, plus an oss command in the terminal.

    2. v2

      Torn down and rebuilt by hand. Light mode, MintBreeze blues, a terminal that actually works, ⌘K, and a view-source button because why not.

    3. v1

      Dark theme, mint green, three identical cards. Looked like every other portfolio. Retired.