Portfolio · 第三版 / 2026

I see sound& hear
colour.

Hoàng Đình Sáng, known online as Meoki. A software engineer in Ho Chi Minh City, working somewhere between language, light and code. I like software that stays quiet until the moment you need it.

Scroll

Touch the paper.
It’s wet.

01AboutHo Chi Minh City, Vietnam

I build quiet, useful software for the things I love: Japanese, light novels, and interfaces that feel alive.

I started out in 2016 as a freelance graphic designer, studied information security at university, and ended up somewhere in between: a full-stack engineer who cares how a thing looks as much as how it holds up.

By day I am a full-stack engineer, faithfully converting coffee into shareholder value. By night I am an unapologetic otaku learning Japanese, and most of what I open-source exists because I wanted it for my own reading.

  • 2016
    Designing and building since
  • 33
    Public repositories, and counting
  • Tsundoku: the pile of unread light novels
02Selected works7 projects, 2024 to 2026

Things I made

01 / 07Desktop app · 2026

Aozora

An EPUB reader made for people learning Japanese.

Hover a word and a Yomitan dictionary opens. One click sends it to Anki. VOICEVOX reads the page aloud while a karaoke highlight follows along, in vertical text if you like it the way it was printed.

  • Electron
  • React
  • TypeScript
  • SQLite
Aozora library view with a shelf of Japanese light novels
02 / 07Open-source library · 2026

moe2d

Live2D characters that live on your web pages.

One install and a model file. The Cubism core and shaders ship inside the package, so there is no PixiJS and nothing to copy. Characters idle, follow the pointer, react to taps and lip-sync to any audio.

  • TypeScript
  • WebGL
  • React
  • npm
The moe2d playground showing a Live2D character and its controls
03 / 07Tray app · 2026

Gloss

Select text anywhere. Press a hotkey. Read it in your language.

A tiny tray app with three shortcuts: read a translation beside your cursor, write in a language you are still learning, or have a term explained. It works in any app and with any AI provider, cloud or local.

  • Tauri 2
  • Rust
  • React
Gloss · ReadJA → EN

I am a cat. As yet I have no name

CtrlShiftO
04 / 07Community library · 2026

TMW Archive

The books are on the shelf. The key is on Discord.

A members-only library of Japanese light novels and manga for the TMW community. There is no account to make: ring the bell in Discord, a bot hands you a one-hour key, and a Live2D librarian keeps the desk while you search.

  • Next.js
  • Express
  • PostgreSQL
  • Meilisearch
  • discord.js
TMW Archive home page: a title banner above a library of Japanese light novel covers
05 / 07Web platform · 2025

Ranobe Hub

One tidy shelf for every light novel I get asked to share.

People kept asking for books and passing files around one by one got tiring. Now there is a library to browse, and every title opens straight in the browser through the web port of Aozora.

  • Next.js
  • Express
  • MongoDB
Ranobe Hub home page with a grid of light novel covers
06 / 07Publication · 2024

Ranobe Blog

A quiet corner of the internet for light-novel thoughts.

Long-form reviews, essays and interviews in Vietnamese. Statically generated, written in MDX through an in-browser CMS, with fuzzy search and a mascot who watches you read.

  • Next.js
  • MDX
  • Keystatic
  • Tailwind
Ranobe Blog home page, a bento grid of essays and character art
07 / 07Industrial software · 2025

Toolkit Engine

The control desk for buildings that think.

A souvenir from a previous job: a desktop app for commissioning GNT room-control units, where lighting, air-conditioning, curtains, scenes and schedules are configured and monitored live. Its sibling, Rhythm Glow, turns music into colour and sends it down the same wire.

  • Electron
  • React
  • UDP
  • Microsoft Store
RCU · Live23 Bass24 Mid25 Treble
04ToolboxWhat is usually on the desk

Languages

  • TypeScript
  • JavaScript
  • Rust
  • Python
  • C / C++
  • Lua

Interface

  • React
  • Next.js
  • Tailwind
  • GSAP
  • WebGL
  • shadcn/ui

Desktop & systems

  • Electron
  • Tauri
  • Node.js
  • PostgreSQL
  • Prisma
  • Docker

Design

  • Figma
  • Photoshop
  • Illustrator
  • Lightroom
  • After Effects
05Path2016 to today

From pixels to payslips to books

  1. 2016

    Freelance graphic designer

    The first creations turned into the first cash. Every stumble since has been paving the same road.

  2. 2019

    University of Information Technology, VNU-HCM

    Four years of security, malware and networks. Web development crept in on the side and never left.

  3. 2023

    Cybersecurity engineering intern, then graduate

    Theory met production. Left with a degree and a preference for building things over breaking them.

  4. 2024

    Software engineer, full-stack

    A real job, with real deadlines. Desktop apps that talked to actual hardware, and shipping taught me what lectures could not.

  5. Now

    Full-stack web, and open source after hours

    Shareholder value by day. By night Aozora, moe2d, Gloss: tools for the things I love, Japanese, light novels, and software that feels alive.