▸ NLV-26-ONT Ontevo, getting a paid AI product ready to charge for Ontevo (Lighthouse Insights) · with Tran Tien Van Building04/2026 → 2 claims · 1 public Pricing, checkout and Stripe entitlements, tenant-safe customer simulations and admin tools for a US AI customer-insight SaaS.
Problem Paid plans, tenant safety and admin tools had to land in a large shared codebase. Build Next.js 15 screens and Django 5.2 services, each change shipped with tests. Result 637 commits and 293 test files added since 04/2026.
My commits on Ontevo 637
Test files I added to Ontevo 293 Open the record → Live ↗
▸ NLV-26-PRF Two slow intros removed, and what they were hiding fixed Van Data Team · with Tran Tien Van Delivered10/2026 10 claims Performance passes on vandatateam.com and vanaxity.com, measured before and after on the same machine.
Problem Intros hid the pages for up to 6 seconds and bundles shipped the whole blog. Build Removed the intros, moved WebGL to a worker, split bundles, stopped idle repaints. Result Hero visible on desktop at 526 ms instead of 4,493 ms.
Top of the page visible on desktop 4,493 → 526 ms
Mobile layout shift (CLS) 0.160 → 0
Headline readable on desktop 5,436 → 716 ms Open the record → Live ↗
▸ NLV-26-HRM An HR system for a furniture factory, from time clock to timesheet A furniture manufacturer in Vietnam Live04/2026 → 6 claims Attendance, shifts, piecework and payroll for a factory in Vietnam, with a Linux agent that reads the gate time clocks.
Problem Attendance ran on clock exports and spreadsheets. Build .NET 8 API, React client, PostgreSQL and a time-clock agent on site. Result 79,262 punches turned into 6,354 workdays in production.
Time-clock punches turned into workdays 79,262 → 6,354
Permissions across 6 roles 112 Open the record →
▸ NLV-25-DMS Distributor management for Uniben Foods and Vietcos Uniben Foods and Vietcos · with Pratek Live02/2025 → 06/2026 2 claims · 1 public Order, return and reporting modules used by a multi-branch distributor network, with Java APIs behind a React client.
Problem Distributors tracked orders and returns across branches by hand. Build Five modules, Java REST APIs, real-time status and Excel or PDF export. Result Running for two consumer-goods companies on their own domains.
DMS modules delivered 5 Open the record → Live ↗
▸ NLV-25-EVS eVS, e-invoice checking for Vietnamese companies Pratek Live02/2025 → 06/2026 1 claim · 1 public The public site and invoice flows of a SaaS that collects incoming e-invoices and checks them with the tax authority.
Problem Accountants checked every incoming invoice by hand each tax period. Build Java APIs called only through Next.js server routes, validated XML upload, SEO and two languages. Result Live at evsapp.vn with a free tier and a partner program.
eVS is live ✓ Open the record → Live ↗
▸ NLV-26-WMS Production and warehouse modules for a furniture ERP A furniture manufacturer in Vietnam Building09/2026 → 3 claims The manufacturing module and the warehouse upgrade of an ERP built with its lead developer. Production orders, bills of materials imported from Excel, shortage checks, pick allocation and barcode scanning.
Problem The factory wanted its warehouses, purchasing and production on one system; its bills of materials lived in Excel. Build Production orders, an Excel import that evaluates bill-of-materials formulas, shortage checks and a warehouse upgrade. Result Running as a pilot at the factory, with tests on every module I touched.
Test cases I wrote in the ERP repository 1,193
API operations in the manufacturing module I built 24 Open the record →
▸ NLV-26-REV Weekly revenue dashboard with an admin area ↗ Own project Live10/2026 1 claim · 1 public A revenue card rebuilt from a reference video, an admin area to edit the data and a REST API behind both.
Problem A take-home brief with a reference video and a short deadline. Build Next.js 16 front end, Express 5 API, Prisma and PostgreSQL, tests at three levels. Result Live demo with data reset every night.
revenue-dashboard test cases 55 Live ↗ GitHub ↗
▸ NLV-26-VDT vandatateam.com in two languages, with an AI model benchmark hub ↗ Van Data Team · with Tran Tien Van Live03/2026 → 3 claims · 1 public The agency site of Van Data Team. I wrote 403 of its 938 commits, the Vietnamese routes and the first version of the benchmark hub.
Problem The site needed Vietnamese pages and a way to compare AI models with sources. Build Locale routing, a sourced benchmark dataset and tests for both languages. Result 87 routes live, 26 of them in Vietnamese.
Models in the benchmark hub 131
Page routes, English and Vietnamese 87 Live ↗
▸ NLV-25-BIP Power BI portal behind Azure AD sign-in Pratek Delivered02/2025 → 06/2026 1 claim An internal portal where each user signs in with Microsoft and sees only the reports their role allows.
Problem Reports were shared by link with no control over who saw what. Build .NET APIs that check the role, a React client with MSAL, embedded Power BI. Result Three role tiers, one sign-in.
Role tiers in the BI portal 3
▸ NLV-25-EOF E-Office, people and project planning at Pratek ↗ Pratek Live02/2025 → 06/2026 Internal system for scheduling people and planning projects. I set the frontend structure the team kept as its standard.
Problem Resource planning lived in spreadsheets. Build React and Ant Design screens on .NET APIs, Microsoft sign-in. Result In use at hrm.pratek.vn. Live ↗
▸ NLV-26-POD This site, and how its figures are checked Own project Building10/2026 → 1 claim Every figure on this site comes from one ledger with a source and a date. The build fails when a reference does not check out.
Problem Portfolios state numbers nobody can check. Build A typed claims ledger, evidence with access levels, copy linted for machine-sounding phrases. Result The CV PDFs and the site read from the same file. Open the record →
▸ NLV-25-UCD An online-course platform, built from a course and extended ↗ Learning project Live02/2025 → 10/2025 1 claim A learning project. Evondev's Next.js course app, which I extended with a course chatbot, admin analytics and notifications.
Problem I wanted to learn a whole product, from the screens to the data, so I built the course's platform end to end. Build On top of the course: a chatbot that answers from the course catalogue, an analytics dashboard for admins, and notifications. Result Live as a demo. Sign-in, orders, uploads and course editing come from the course; no tests.
My commits after the course base 25 Live ↗