
MetaLens VGC
A cross-filtering metagame dashboard for Pokémon Champions VGC 2026, built from real tournament and ladder data.
10:57 amin Singapore — kopi and morning sun
Professional
vin@sg:~$ whoami
Software Engineer

About
Software Engineer specializing in modern web platforms, data architecture, and applied AI. I focus on turning complex operational data into clean, maintainable web systems and actionable dashboards. Always searching for the simplest, most reliable solution to real-world problems.
What I Do
Focusing on clean full-stack architecture, API integration, and performant web applications using TypeScript, React, and modern backend frameworks.
Designing data pipelines, dashboards, and analytical models using Python, Pandas, and SQL to extract actionable operational insights.
Integrating LLMs, vector search, and intelligent workflows into production applications to solve concrete user problems.
Project Showcase
A cross-filtering metagame dashboard for Pokémon Champions VGC 2026, built from real tournament and ladder data.
Live siteView liveView project
Projects

A cross-filtering metagame dashboard for Pokémon Champions VGC 2026, built from real tournament and ladder data.

A local-first quest board and scrapbook journal that works with no account and no network, with optional sync through your own Supabase project.

A real-time Schwarzschild black hole in the browser, with light rays traced per pixel in WebGL2.

A catalogue of free, licence-checked assets with importers, a credits generator and a static search page.

A small PlatformIO base for ESP32 projects with captive-portal Wi-Fi setup, password-protected OTA updates and HTTP JSON telemetry.

Small, dependency-light graphics building blocks: postfx shaders, seeded generators and a Vite playground.

A portable design kit with dark and mint-light tokens, self-hosted fonts, card and button helpers, and a credits card.

A small Cloudflare Worker that serves Singapore open data as clean, cached, CORS-friendly JSON, with a typed client.

Private notes plus a read-only MCP server that exposes them together with the portfolio's content.

A Claude Code plugin with a project workflow: scaffolding, headless visual QA, design review, a ship checklist and two subagents.

A small procedural voxel room with a desk, a trophy shelf and a project wall, built from this site's own JSON feeds.

A voxel garden you can scan, where the QR code is built from hedge blocks and path tiles and the tree's canopy is repainted so it redraws the code.


A responsive PWA for reminders with two-way Google Calendar sync, recurrence, natural-language quick-add and offline support.

A Chrome side panel that makes any web page easier to read, with bigger text, high contrast, a dyslexia-friendly font and calmer motion.

An ambient, endless window-seat ride through Singapore in 3D, with real OpenStreetMap buildings, live daylight and rain.
A Chrome extension that summarizes the page you are reading in one click, privately, using Chrome's built-in on-device AI.

A public, read-only dashboard for the health of deployed projects: commits, CI, uptime, Lighthouse scores and latest blog posts.
Code Snippets
MetaLens VGC (public/js/lib/stats.js). Win-rate bounds that stay honest on small samples (a 3-0 record reads as 44-100%, not 100%), plus meta diversity as the effective number of species: exp of the Shannon entropy of usage counts.
MetaLens VGC (public/js/lib/aggregate.js). Positive Pokémon chips are ANDed into a single per-Pokémon test, so "Rillaboom + Life Orb" keeps teams with a Rillaboom holding Life Orb; negative chips drop any team with a match.
GitHub
559 contributions in the last year
Experience
Jan 2026 – Present
Ong&Ong Pte Ltd
May 2024 – Aug 2024
Health Promotion Board
Jun 2023 – Aug 2023
PT Pancaseraya Permai · Indonesia
Skills
Languages
Levels are out of 5 (5 = native).
| Languages | Speaking / Comprehension | Writing | Overall |
|---|---|---|---|
| English | 5/5 | 5/5 | Fluent |
| Indonesian | 5/5 | 5/5 | Fluent |
| Malay | 4/5 | 3/5 | Professional |
| Mandarin | 3/5 | 3/5 | Conversational |
| Hokkien (Fujian) | 3/5 | 3/5 | Conversational |
Education
Aug 2021 – Jul 2025
Singapore Management University (SMU) · Singapore



Jul 2018 – May 2021
Science Program · Indonesia

Achievements
2022
Asia-Oceania University Chess Championship (International)
2022/2023
Singapore Inter-Varsity Chess League
Singapore
2020
National Logistic Mathematics Competition (KMNR)
Indonesia
2020
Math Olympiad, OSS MIPA Expo XIV
Indonesia
2019
ICAS (International Competitions and Assessments for Schools) Mathematics
2020
Read1 Online Mathematics Competition (ROMC), National Competition
Indonesia
2022
Singapore Polytechnic Speed Chess Invitational
Singapore



Exco
2023 – 2024
SMU Chess Club
2023 – 2024
SMU Intellectual Sports
2018 – 2021
Math Club
Interactive
Small interactive widgets I built for fun. Each one loads only when you scroll to it.
Click the coin to flip it. Heads or tails?
Click the shrinking targets as fast as you can, 10 in a row.
Flip two cards at a time and match all 8 pairs before the clock runs out.
Type each answer and hit Enter before the 30-second timer runs out.
Draw on the 32 by 32 grid. Keyboard: arrows move, Space paints.
Drag inside the canvas to draw a symmetric mandala pattern.
Watch the code rain fall, and wave your cursor through it.
Click cells to toggle them alive, then press Play to watch them evolve.
Click or drag to throw some sparkles.
Hold the key (or Space) to beep out dots and dashes; pause to decode the letter.
Click or drag across the sheet to pop the bubbles.
Drag the sliders to extrude the box, then copy the generated CSS.
Type a phrase and watch it glitch, then copy the CSS.
Click anywhere on the canvas to fire a burst of confetti.
Drag an end ball outward and let go to set off the swing.
Type below — watch it hit the page.
Can't decide? Spin the wheel.
Type a-z in order to race the clock.
Avoid the bouncing dots with your cursor.
Type something — see it in block art.
Match the color using the sliders.
Drag across the sand to rake calming parallel lines.
Watch the sand fall through the hourglass, or flip it to reset.
Play the keys with the mouse or A S D F G H J K and W E T Y U.
Hit D F J K as the notes reach the line.
Pick a die and roll it.
Blog
I won Run and Bun, the first win in ASEAN, and I'm the number 1 Nuzlocker in Singapore.
Contact
The quickest way to reach me is email.
Singapore time 10:57 SGT · Fri, 6 Nov 2026
ACHIEVEMENT UNLOCKED