Portfolio

SELECTED WORK FROM MY PORTFOLIO


ojabook.vercel.app
Ojabook screenshot

Ojabook

Offline bookkeeping for small business

Working demo

An installable, offline-first PWA that lets small traders record sales and expenses and total them up without a data connection.


Stack

TypeScriptReactTanStack StartTailwind CSSPWAOffline-first

vision-forge-chi.vercel.app
VisionForge screenshot

VisionForge

AI image analysis platform

Demo

A multimodal AI image analysis platform that checks whether an image looks AI-generated, using NVIDIA Nemotron vision models. Images are processed in memory and never stored.


Stack

TypeScriptReactTanStack StartTailwind CSSNVIDIA NemotronThree.js

ligowin-shopper.vercel.app
LigowinShopper screenshot

LigowinShopper

E-commerce Shopping Platform

Demo

A full-stack shopping demo with a product catalog, cart, and checkout flow.


Stack

TypeScriptReactNext.jsREST API

camp-go-kappa.vercel.app
CampGo screenshot

CampGo

Camping & Outdoor Adventure App

Demo

A web demo for discovering campsites and planning camping trips.


Stack

TypeScriptReactTailwind CSSVercel

event-scan-brown.vercel.app
EventScan screenshot

EventScan

Event Ticketing & Scanning Platform

Demo

An event ticketing demo with QR-based check-in and a basic organizer dashboard.


Stack

TypeScriptReactNode.jsQR CodesREST API

Project Showcase

OJABOOK

Working demo

Offline bookkeeping for small business

Ojabook is an offline-first bookkeeping app for small traders and business owners. Record sales and expenses in seconds, always know who owes you, and let Ojabook add everything up for you — no account and no data connection required.

Problem

Small businesses still track money in paper notebooks — sales, expenses, and customer debts get lost, and nothing adds up at the end of the day.

Solution

Built an installable, offline-first web app that records every sale and expense, tracks customer debts, and totals sales, expenses, profit, and money owed automatically — saved right on the device.


Stack

TypeScriptReactTanStack StartTailwind CSSPWAOffline-first

Features

  • Record every sale
  • Track what you spend
  • Know who owes you
  • Sales, expenses & profit totals
  • Works offline — no data
  • Installable, no account

Security and CI

Runs on pull requests, pushes to main/master, and a weekly schedule: Gitleaks secret scan, Trivy filesystem and container scans, a bun dependency audit, and CodeQL analysis for JavaScript and TypeScript.

View the workflow file
ojabook.vercel.app
Ojabook landing page preview
Ojabook landing page with the headline “Put down the notebook. Pick up Ojabook.”

Landing page

A clear promise, three core jobs, and an install prompt.

Ojabook home dashboard showing sales, expenses, profit, customers who owe you, and recent records

Home dashboard

Sales, expenses, profit, and debts — totalled at a glance.

Ojabook new record form for adding a sale or an expense with amount, payment, and date

Add a record

Capture a sale or expense in a few taps, even offline.

Project Showcase

BENCHWISE

Ongoing — early access

Biochemistry data-analysis tool

Turns raw lab readings into standard curves, statistics, graphs and a written results paragraph — entirely in the browser, showing every step of the working.

Problem

Raw lab readings need to become a standard curve, statistics, a graph and a written results paragraph, with the working shown.

Solution

An in-browser tool that builds the standard curve, runs the statistics, draws the graph and writes the results paragraph, showing each step.


Stack

TypeScriptReactTanStack StartTailwind CSSOffline-first

Features

  • Standard curve from raw readings
  • Statistics
  • Graph
  • Written results paragraph
  • Every step shown
  • Runs in the browser

Key technical decision

Run the standard-curve maths, statistics and graph drawing in the browser, so every step can be shown.

Limitations

Still an ongoing project, currently in early access.

What I'd improve next

Finish the ongoing build and move it out of early access.

Pre-launch — private repositoryView Demo
benchwise1.vercel.app
Benchwise landing page preview
Benchwise landing page with the headline “From raw absorbance to a defended result.”

Landing page

The standard curve and the promise to show every step.

Standard curve screenshot needed

Standard curve

Screenshot slot — not supplied yet.

Statistics screenshot needed

Statistics

Screenshot slot — not supplied yet.

Graph screenshot needed

Graph

Screenshot slot — not supplied yet.

Results paragraph screenshot needed

Written results

Screenshot slot — not supplied yet.

Step-by-step working screenshot needed

Step-by-step working

Screenshot slot — not supplied yet.

Project Showcase

VISIONFORGE

Working demo

AI image analysis platform

A multimodal AI image analysis platform that checks whether an image looks AI-generated, using NVIDIA Nemotron vision models in a TanStack Start app.

Problem

It is hard to tell whether an image was AI-generated, and people need a quick check without handing the image to a service that stores it.

Solution

Built an image upload flow that sends the image to an `/api/analyze` route, calls an NVIDIA Nemotron vision model, and returns an AI-generated percentage, reasoning, and confidence breakdown. Images are processed in memory and never stored.


Stack

TypeScriptReactTanStack StartTailwind CSSNVIDIA NemotronThree.js

Features

  • AI-generated percentage
  • Reasoning and confidence breakdown
  • Images processed in memory, never stored
  • JPG, PNG and WebP up to 5MB
  • 3D particle background
  • Responsive layout

Key technical decision

Send each image through an `/api/analyze` server route to an NVIDIA Nemotron vision model, then show the AI-generated percentage, reasoning, and confidence breakdown in the analysis screen.

Limitations

Requires an NVIDIA API key; the README documents JPG, PNG and WebP uploads up to 5MB.

What I'd improve next

Add clearer error states for missing keys and failed model calls, and cover the `/api/analyze` route with tests.

vision-forge-chi.vercel.app
VisionForge landing page preview
VisionForge landing page with the headline “See more in every image.”

Landing page

Entry point to the analysis tool.

VisionForge analysis screen with an empty image-upload area.

Analysis screen

Where an input is submitted for analysis.

VisionForge analysis screen showing an analysis result and explanation.

Analysis result

Where the result is displayed.

Architecture-page screenshot needed

Architecture page

Screenshot slot — not supplied yet.

Documentation-page screenshot needed

Documentation page

Screenshot slot — not supplied yet.

In Development

NOW BUILDING WORK IN PROGRESS


Benchwise screenshot
Early access — waitlist openPre-launch — private repository

Benchwise

Biochemistry data-analysis tool

Turns raw lab readings into standard curves, statistics, graphs and a written results paragraph — entirely in the browser, showing every step of the working. Early access via the waitlist.

TypeScriptReactTanStack StartTailwind CSSOffline-first
Omze screenshot
Client project, in developmentClient work — private repository

Omze

Real Estate & Construction Platform

The company website for Omze Homes & Properties Ltd — property listings, construction showcases, and a consultation flow. In development; demo delivered.

TypeScriptReactTanStack StartTanStack RouterTailwind CSSGSAP
De Diaspora screenshot
Client project, in developmentClient work — private repository

De Diaspora

Restaurant & Cultural Dining Platform

A restaurant platform with menu and cart, table booking, and an admin dashboard. In development; demo delivered.

TypeScriptReactTanStack RouterExpressPostgreSQLPrismaDocker
Notee screenshot
Personal project, in progressPrivate repo

Notee

Notes & Productivity Mobile App

A cross-platform notes app with rich-text notes, reminders, and local-first storage. Personal project in progress.

React NativeExpo RouterTypeScriptRich-text EditorMarkdownAsyncStorage
Demo coming soon
GospelKonect screenshot
Personal project, in progressPrivate repo

GospelKonect

Faith-Based Community App

A faith-based community app for wholesome social connection. Personal project in progress.

React NativeExpo RouterNestJSPostgreSQLPrismaRedis
Demo coming soon

Your Project

Have a project in mind? Let's build it together.

Whether it's a web app, mobile experience, bot, or a full platform — I can take it from idea to launch.

Get in touch