Back to Projects

Mobile & Cloud Platform

TrustMark

An all-in-one mobile product cataloging, inventory tracking, and QR code authentication platform built with React Native (Expo) and a Spring Boot backend.

Project Overview

Developed for NTU's Mobile & Ubiquitous Applications Development module (IN6222), TrustMark modernizes product inventory and brand protection for SMEs. The platform enables creators to manage multi-tiered product catalogs and collections, generate per-item unique QR code certificates for instant authenticity verification, track real-time stock levels, and orchestrate order shipping workflows through an intuitive mobile interface.

Key Architecture & Contributions

  • Architected a cross-platform mobile application using React Native and Expo Router with modular screen flows (Collections, Shipping, QR Authenticity).
  • Engineered a Spring Boot REST API backend with Spring Data JPA and MySQL for brand, collection, and product item persistence.
  • Implemented an automated QR certificate lifecycle protocol generating unique item-level serials for instant authenticity verification.
  • Built real-time stock visibility tracking (In Stock, Low Stock, Out of Stock) based on produced vs remaining inventory ratios.
  • Created order fulfillment and shipping progress simulation flows with batch dispatching for in-stock inventory.
  • Containerized the multi-service architecture (Spring Boot backend and MySQL database) using Docker and Docker Compose.
AuthCheckScreen.tsx
Source Preview
export const verifyProductCertificate = async (qrPayload: string) => {
  const serial = normalizeQrCertificate(qrPayload);
  const { data } = await apiClient.get(`/api/v1/products/verify/${serial}`);

  if (data.status === "ACTIVE") {
    return {
      authentic: true,
      productName: data.productName,
      stockStatus: data.stockStatus, // In Stock, Low Stock, Out of Stock
      certificateUrl: data.certificateQrUrl,
    };
  }

  return { authentic: false, message: "Invalid or revoked certificate" };
};