Natserract Personal and Research Notes

  • Main
  • Projects
  • Notes
  • Talks
RSS Feeds Analytics
© 2025 Alfin Surya

Sigi Tour Transport

Sigi Tour flow

Overview

Sigi Tour transport is an online bus ticket booking application. Customers can order tickets and make payments in one application.

Sigi Tour Demo Sigi Tour Demo2 Sigi Tour Demo3 Sigi Tour Demo4 Sigi Tour Demo5

This application is made as an intermediary between Bus Agents and Customers. Each bus agent has its own type of bus provider.

For example: Bus Agency - John Doe.

John doe is registered with the bus provider:

  1. Gunung Harta
  2. MTrans
  3. Surya Trans

Note: Agent registration must be done at the branch office manually. Not through the app

Problems

The problem to be solved in this application is the main goal to unify all bus providers into 1 independent application based on the ownership of the Bus Agent (unified APIs).

Challenges

  1. Each bus provider has different APIs, such as: Model, Source, etc. Schema

  2. Synchronize/Matching each bus provider’s scheme with our application scheme. Schema 2 Schema 3

  3. All the APIs of each provider are in the mobile app. So to get the right API and mechanism we need to extract/decompile their APK into readable code.

  4. Not all APKs were extracted successfully.

  5. Mobile First (PWA) - To get a mobile experience but all in one supporting all platforms. Plus with minimum budget

  6. Hard to test, especially when testing transactions, every test either succeeds or fails. We need to pay for the transaction.

  7. Race conditions problem when booking the same ticket simultaneously.

Deployment

Deployment

Tech Stacks

NextJS13, React Query, Multithread, Koa.js, PostgreSQL, Xendit, Zod, TypeScript, TurboRepo, PWA, Sequelize, Async Mutex, Android Development, Sentry

Demo: https://sigitour-git-master-functreescom.vercel.app

/ Projects
RSS Feeds Analytics
© 2025 Alfin Surya