Projects
Things I've built and contributed to.

CrackPOS — Frontend
Production-ready inventory management & POS dashboard. Multi-tenant system with role-based access (Admin/Staff), real-time data sync via React Query, and an AI chat assistant for querying business data. Features include product CRUD, sales & purchase orders, stock transactions, returns, reports with charts, activity logs, notifications, and a super admin panel for managing tenants.
- Multi-tenant auth with JWT + Google OAuth
- Role-based access: Super Admin, Tenant Admin, Staff
- AI chat widget for natural language business queries
- AI-powered product input (auto-fill from text)
CrackPOS — Backend
NestJS REST API powering the CrackPOS system. Built with modular architecture, Prisma ORM on PostgreSQL, and JWT authentication with refresh tokens. Includes an integrated Python AI microservice that uses LLM tool-calling to answer business queries in real-time.
- Modular NestJS architecture (17 modules)
- Multi-tenant data isolation via tenantId scoping
- JWT + refresh token + Google OAuth authentication
- Rate limiting, Helmet security, Winston logging
RevoBank API
Comprehensive banking API built with NestJS, PostgreSQL, and Prisma. Supports secure user authentication with JWT + refresh tokens, account management, financial transactions (deposit, withdraw, transfer) with idempotency keys to prevent duplicates, admin dashboard, and full audit logging for all actions.
- JWT authentication with refresh token rotation
- Role-based access: Customer & Admin
- Deposit, withdraw, transfer with idempotency key
- Auto-generated account numbers

Toko Online — E-Commerce
Full-featured e-commerce platform built with Next.js 16 App Router and TailwindCSS v4. Features custom JWT authentication using jose, dynamic product catalog from external API, shopping cart with Context API, protected admin dashboard for managing products, and server-side rendering for performance.
- Custom JWT auth with HttpOnly cookies & middleware
- Product catalog with search, filter, and categories
- Shopping cart with persistent state
- Admin dashboard with sales analytics (Recharts)
RevoFun — Mini Games
Collection of 3 web-based mini-games (Speed Clicker, Tebak Angka, Tebak Gambar) built with vanilla HTML, CSS, and JavaScript. No frameworks or dependencies required — runs directly in the browser. Features a company landing page and interactive gameplay with scoring, timers, and feedback systems.
- 3 mini-games: Speed Clicker, Tebak Angka, Tebak Gambar
- Vanilla JS — zero dependencies
- Landing page with company profile
- Score tracking, timers, and feedback system