TH Log in

(01)
Personal index
Est. 2026
Self-hosted

Apps and tools by Cj.

Some are open source. The rest need a sign-in.

Log in members only
projects below

~/github

cjpsms

cj@dex:~$ git log --since=1.year

loading…

cj@dex:~$

(02)About

A student in Thailand who writes Linux tools and web apps.

I'm Cj. Most of these projects started as something I needed myself. I also do competitive programming in C++.

public repositories
21
contributions in the last year
200+
POSN computer camps
2

(03)Why computers

From Python I couldn't follow yet, to a first Arduino kit, to Linux.

  1. 01

    First try at Python

    I tried to learn Python as a kid, but it was too hard back then, so I put it aside.

  2. 02

    First Arduino

    An Arduino class at school with PictoBlox, where you program by snapping blocks together. The first time my code made something real move.

  3. 03

    My own Arduino kit

    My mom bought me an Arduino kit, so I dropped the blocks and taught myself C++ from videos. C++ is still the language I know best.

  4. 04

    First POSN computer camp

    I met Linux (Ubuntu) for the first time at the camp and started setting up my own machine.

  5. 05

    Linux goes deeper

    I installed Ubuntu for a friend, who said Arch runs games better, so I tried it. After many distros I came back to Arch, because I can set up everything the way I want.

    UbuntuArchFedoraArch + HyprlandManjaroArchBazziteUbuntuArch
  6. 06

    Second POSN camp

    Two camps so far, and my own projects going up on GitHub along the way.

(04)Projects

Three main projects, then the rest of my public repositories.

01JavaScript

lamshell

A browser game that teaches the Linux terminal to Thai high-school students.

  • 44 levels, from typing in Thai to exact bash commands
  • An AI helps read answers in the early levels, with a built-in dictionary as fallback
  • A teacher page shows the progress of the whole class
JavaScriptClaudeSQLite
02JavaScript

Grader-kak

An online judge for C++ and Python.

  • Submissions run in bubblewrap with seccomp and no network
  • Each run has its own memory, process and time limits
  • Problems, tests and limits are edited on the web
Node.jsLinux sandboxC++17
03Python

openbox

A parcel locker system for online orders.

  • Customers send an order screenshot to a Telegram bot and Claude reads it
  • Payment slips are checked before a box is reserved
  • A camera reads the parcel label and opens the matching box
PythonFastAPIClaude visionTelegram

(05)Tools

Tools

(06)Contact

Contact

github.com/cjpsms