Founder & CEO at KRAG. Full-stack developer building websites, web apps, and software across the stack — from embedded systems to production web services. Currently also at The Nex.

Studying Electronics & IT at the University of Colombo. Based in Sri Lanka.

Writing about systems programming, developer tooling, data engineering, and things worth understanding properly.

GitHub · LinkedIn · About

recent posts

#bazel #go #cpp #typescript #wasm #build-systems

Bazel for Multi-Language Monorepos: One Build System for Go, C++, TypeScript, and WASM

A practical guide to Bazel for beginners — how it manages a monorepo with Go backend, C++ ImGui chart, TypeScript React frontend, Protobuf schemas, and FlatBuffers, including platform transitions for WASM compilation.

#go #cli #tools #productivity

Building a Multi-Screen TUI in Go with Bubbletea

How to build a production-grade terminal UI with multiple screens, live data, and keyboard navigation using the Bubbletea framework — with real examples from a 6-screen market data TUI.

#clickhouse #sql #data-engineering #go

ClickHouse for Financial Data: Candles, Footprints, and the Timezone Trap

How to use ClickHouse to compute OHLCV candles, footprint charts, and enriched market data from raw trades — and why getting candle boundary alignment right for non-UTC timezones is trickier than it looks.

#docker #devops #ci-cd #github #tools

Docker, Docker Hub, GitHub Packages, and CI/CD Pipelines: The Complete Picture

A complete guide to Docker from zero — images, containers, Docker Hub, GitHub Container Registry, and how to wire everything together with a GitHub Actions CI/CD pipeline that builds, tests, and deploys automatically.

#go #cpp #grpc #architecture #serialization

FlatBuffers and Protobuf in One System: Picking the Right Serialization Format

A beginner-friendly guide to serialization formats — what Protobuf and FlatBuffers actually do, how they differ, and why a system might use both for different consumers.

#git #tools #productivity #cli

Git + GitHub CLI: A Unified Terminal Workflow

How to combine git and the GitHub CLI (gh) into one seamless workflow — from branching to PRs, code review, CI monitoring, and releases — without ever opening a browser.

→ all posts