home / projects / home-anywhere

Home Anywhere

Active Dev Open Source · MIT

Open-Source Homestay Booking Platform

Self-hostable homestay booking platform you can run for any property portfolio — boutique stays, family villas, hill retreats, city apartments. Bundles a multi-step guest booking flow, admin dashboard with built-in CMS, Stripe deposit payments, Google Calendar sync, and GA4 analytics. One-command Docker deploy.

Next.js 14React 18TypeScriptLaravel 11PHP 8.3Tailwind CSS v4shadcn/uiStripeGoogle Calendar APISQLite / MySQLDocker ComposeJestPHPUnit

// key_features

Multi-Step Booking Flow

Core

Pick a stay → pick a date → confirm details. Real availability loaded live from the backend — no double bookings, no stale slots.

Stripe Deposit Payments

Guests pay 30% to confirm; balance settled on check-in. Works in demo mode without Stripe keys — no friction for local development.

Google Calendar Sync

Every confirmed booking creates a Calendar event via service account. Cancellations remove the event and trigger automatic Stripe refund.

Admin Dashboard & CMS

Full CRUD for stays, slots, and bookings. Edit the hero, stats, testimonials, and CTA banner from the dashboard — no code, no redeploy.

Analytics & Notifications

GA4 funnel events (view_schedule, start_booking, complete_booking) out of the box. Email confirmations via SMTP; WhatsApp stub ready for Twilio.

One-Command Docker Deploy

docker compose up boots database, backend, and frontend — auto-generates app key, runs migrations, and seeds demo stays. Both apps ship with Dockerfiles.

// system_architecture

1.
Next.js 14
App Router + TypeScript
2.
Laravel 11 API
PHP 8.3 backend
3.
SQLite / MySQL
Relational data store
4.
Stripe Checkout
Deposit + webhooks
5.
Google Calendar
Booking events sync

// key_api_endpoints

POST /api/bookings Create booking → Stripe checkout URL
POST /api/webhooks/stripe Payment confirmation + calendar event
POST /api/admin/cancel Cancel + refund + remove calendar event
GET/PUT /api/admin/site-content CMS — view/edit homepage copy

// quick_start

One command spins up the full stack — database, backend, and frontend.

$ docker compose up
Guest site → localhost:3000 Admin → localhost:3000/admin
← Back to Projects