Back to projects
PAID CLIENTSOLO FULLSTACK

INDETA

Tourism platform: destinations, UMKM products, travel packages and articles, with visitor reviews and an admin CMS. Laravel renders, Supabase does the rest.

  • Laravel
  • Supabase
  • PostgreSQL
  • Tailwind
  • Vite
  • Vercel
INDETA — screenshot

OVERVIEW

Visitors browse destinations by category, read articles, look through local UMKM products and travel packages, and leave a rating and review; an admin dashboard covers full CRUD over all of it, with live counts and image uploads. The architecture is the part worth explaining: Laravel 12 stays a thin routing and Blade rendering layer, while fetching, auth, CRUD and file upload all run client-side through the Supabase JS SDK. So the framework renders and the BaaS holds the data — no API layer of my own in between. Installable as a PWA, deployed serverless on Vercel through vercel-php.

WHAT I DID

  • BaaS-driven architecture: Laravel 12 handles routing and Blade views only, while data fetching, auth, CRUD and uploads go straight from the browser to Supabase — a traditional PHP framework and a modern BaaS sharing one app, with no API of my own between them.
  • Five content types under one admin dashboard — destinations, categories, articles, UMKM products and travel packages — with full CRUD, image upload to Supabase Storage, live counts and the product-to-destination relation.
  • Ratings and written reviews from visitors on every destination, alongside a photo gallery and category filtering.
  • Installable as a PWA through a service worker and web manifest, and deployed serverless on Vercel with vercel-php rather than on a traditional PHP host.