← All work
In progress Solo — Full-Stack · 2023 — Present

ChatTy — Terminal Chat App

A terminal-based, peer-to-peer chat app for Ubuntu & macOS — designed and built solo, by hand, before AI coding tools were part of my workflow. Now being re-engineered with AI-assisted development.

  • Node.js
  • Express
  • MongoDB
  • MQTT
  • Python
  • JWT
  • Bash

ChatTy is the project I’m proudest of as a pure engineering exercise — designed and built entirely by hand, solo, before AI coding tools were part of how I work. Every piece, from the backend to the terminal client to the cross-platform packaging, was reasoned through from first principles.

What it is

A real-time chat app that runs in the terminal on Ubuntu and macOS. Users register and log in from the command line, exchange a short token, and talk directly with each other — no GUI, no fuss.

How I built it

  • A signalling backend in Node.js / Express + MongoDB — accounts, JWT auth, and chat provisioning — deliberately kept out of the message path.
  • A peer-to-peer message layer over MQTT — once a chat is established, messages flow directly between the two clients on paired directional topics; the backend only relays the initial request.
  • A Python terminal client — health checks, register / login, token exchange, and a threaded live send/receive loop.
  • Cross-platform packaging — Debian packages, a systemd unit (Linux), and a launchd plist (macOS), with install scripts.

What’s next

I’m re-engineering ChatTy with AI-assisted workflows — adding end-to-end encryption, moving hardcoded config into real secrets, finishing role-based access and chat history, and shipping one-line installers. A deliberate before/after: a hand-built foundation, now accelerated with AI coding. Packaged installers will land under Products.