A comprehensive booking management system for transfer services with a full-featured backend and realistic test data.
# Run the automated setup
start-demo.bat# Install dependencies
npm install
# Initialize database and seed with test data
npm run demo
# Or run steps individually:
npm run init-db # Create database schema
npm run seed-data # Populate with test data
npm start # Start the server- Real-time booking management with 80+ sample bookings
- Driver & vehicle allocation with availability tracking
- Invoice generation & email (simulated Xero integration)
- Payment processing (simulated Stripe/Square)
- Advanced filtering & search by date, status, driver, payment
- Booking status workflow (pending โ confirmed โ allocated โ completed)
- Multi-leg reservations with automatic PNR generation
- Simplified booking creation interface
- Driver availability dashboard
- Mobile-optimized design
- Customer booking form with location selection
- Real-time pricing calculation
- Booking confirmation system
The demo includes:
- 80+ realistic bookings spanning 44 days (30 past, 14 future)
- 14 customers (individuals, corporate clients, agents)
- 5 active drivers with realistic schedules
- 5 vehicles (sedans, vans, buses) with capacity tracking
- 14 locations across Kangaroo Island
- Mixed booking statuses and payment states
- Return trips and multi-leg reservations
GET /api/bookings- List bookings with filtersGET /api/bookings/:pnr- Get specific bookingPOST /api/bookings- Create new bookingPUT /api/bookings/:pnr- Update bookingDELETE /api/bookings/:pnr- Cancel booking
GET /api/drivers- List driversGET /api/vehicles- List vehiclesGET /api/customers- List customersGET /api/locations- List locations
POST /api/invoices/generate- Generate invoicePOST /api/invoices/email- Send invoice emailPOST /api/payments/process- Process paymentGET /api/analytics/dashboard- Dashboard stats
- Compact table layout - Maximum booking density
- Single-row action buttons - Edit, Invoice, Email, Preview, Delete
- Responsive design - Works on desktop and tablet
- Real-time filtering - Instant search and filter results
- Smart column widths - Optimized for content
- Status indicators - Color-coded booking and payment status
- Collapsible sidebar navigation
- Touch-friendly buttons and controls
- Optimized layouts for mobile screens
- Node.js + Express REST API
- SQLite database with comprehensive schema
- Simulated external services (Xero, Stripe, Email)
- Rate limiting and security middleware
- Vanilla JavaScript for maximum compatibility
- CSS Grid/Flexbox responsive layouts
- Fetch API for backend communication
- LocalStorage fallback for offline capability
- Normalized relational design
- Proper foreign key constraints
- Audit trails and timestamps
- Scalable architecture ready for production
- Customer places booking (online or via staff)
- Booking confirmation with PNR generation
- Driver/vehicle allocation based on availability
- Service completion tracking
- Invoice generation and email delivery
- Payment processing and reconciliation
- Commission tracking for travel agents
- Bulk booking capabilities
- Custom rates and terms
- GST compliant invoicing
- Multiple payment methods
- Payment status tracking
- Revenue reporting
- Input validation and sanitization
- Rate limiting on API endpoints
- SQL injection prevention
- XSS protection headers
- CORS configuration
- Modular API design for easy feature additions
- Database migrations system ready
- Environment configuration support
- Logging infrastructure
- Xero API integration framework
- Stripe/Square payment processing
- Email service (SendGrid, Mailgun)
- SMS notifications (Twilio)
- Optimized database queries with proper indexing
- Efficient frontend with minimal JavaScript
- Compressed assets and caching headers
- Scalable architecture for growth
- View today's bookings
- Allocate drivers to pending bookings
- Update booking status as services are completed
- Generate invoices for completed services
- Search for customer bookings by PNR or name
- Update booking details and special requirements
- Process payments and refunds
- Handle cancellations and reschedules
- Generate invoices for completed bookings
- Track payment status across all bookings
- Handle agent commissions and corporate billing
- Export financial data
- Monitor driver availability and workload
- Track vehicle utilization
- Manage fleet assignments
- Handle emergency changes
For demo questions or technical issues, check the console logs for detailed error messages and API responses.
This system demonstrates a complete, production-ready booking management solution with realistic data and workflows. All features are functional and ready for real-world deployment with minimal configuration.