Production-grade property booking extension platform enabling guests to extend their rental stays (pre-stay or post-stay) through a seamless multi-step booking flow. Features Stripe payment processing, Hostaway integration, and 4-language internationalization with RTL support.
- PlatformProduction Booking Platform
- StackReact 18, TypeScript, Node.js, Express, PostgreSQL, Stripe
- Scale5,400+ Lines Backend, 67+ Components, 15+ API Endpoints
- IntegrationsHostaway (multi-account), Stripe, SendGrid

Key Features
- Multi-Step Booking Flow: Property details, date selection, availability checking, user information, payment processing, and confirmation
- Pre/Post Stay Extensions: Guests can extend before or after their existing reservations with real-time availability
- Stripe Payment Processing: Payment intent creation, multi-currency support (EUR, GBP, USD, AED, DZD), and webhook handling
- Multi-Account Hostaway: Support for UK, Algiers, and Paris accounts with distinct JWT tokens and custom field handling
- 4-Language Support: English, French, Spanish, Arabic with full RTL (right-to-left) support
- Automated Reservations: Direct booking creation in Hostaway with retry logic and exponential backoff
- Email Notifications: Localized confirmation emails via SendGrid with booking details
- Currency Conversion: Real-time rates with database caching and automatic refresh
Technology Stack
- Frontend: React 18, TypeScript, Vite, shadcn/ui (Radix UI), Tailwind CSS, Framer Motion, TanStack Query
- Backend: Node.js, Express.js, TypeScript with tsx runtime
- Database: PostgreSQL via Neon serverless with Drizzle ORM
- Payments: Stripe SDK with payment intents and webhook handling
- Email: SendGrid for transactional emails
- i18n: i18next with HTTP backend and RTL support
- DevOps: Docker containerization, Kamal deployment
Architecture Highlights
- Optimistic Records: Creates extension records before payment confirmation to handle async webhook flows
- Structured Logging: JSON logging with correlation IDs, separate files for APIs, webhooks, and errors
- Error Notifications: Automated emails to operations team for Hostaway failures with full context
- URL-Based Routing: Query parameter-driven for direct linking from property management systems