Back to work
In active developmentVilla Rental & Operations Platform

Magickal Experiences Bali

An end-to-end multi-tenant platform spanning public booking, guest services, partner operations, referrals, administration, and financial workflows.

My contribution
Architecture, backend and frontend
Built at
General Magic (Thailand)
Commercial product. Source is private.
Core stack
FastAPIPostgreSQLReactTypeScript
MAGICKAL EXPERIENCES BALIBOOKING / OPERATIONSPORTALSPUBLICGUESTPARTNERAGENTADMINAVAILABILITYBOOKEDOPEN
5 role-specific portals over one platform: public booking, guest, partner, referral agent, admin.

How it fits together

React / TypeScript

  • Public booking
  • Guest
  • Partner
  • Referral agent
  • Admin

FastAPI

Shared business logic and scoped data access

  • KeycloakIdentity & roles
  • RedisCaching

PostgreSQL

Platform data & append-only ledger

Engineering decisions

A financial record that holds up

Commissions and refunds need to reconcile correctly, including when requests arrive at the same time.

I built the financial core around an append-only ledger to preserve transaction history and keep calculations consistent.

The right access for every role

Guests, partners, agents and staff share a platform but need different views of its data.

I combined Keycloak authentication and role-based access with row-level data scoping across the backend.

From API to working portals

Public booking and day-to-day operations need to work together across several user journeys.

I designed and built the FastAPI/PostgreSQL backend and React/TypeScript frontend, spanning the booking site, role-specific portals and admin dashboard.