Project overview
The product
Section titled “The product”MyRentalCalendar is a multi-tenant SaaS property management system (PMS) for holiday-home agencies that manage tens to hundreds of apartments in one or more cities and rent them short-term (a few nights to several months).
It was born from the real operation of BMyGuest Holiday Homes Dubai (bmyguest.ae, ORN 818220), which serves as the reference tenant: its real portfolio, brand colours (emerald #004937, cararra #e7e6dd) and workflows drive the design.
The three audiences
Section titled “The three audiences”| Audience | Surface | Core value |
|---|---|---|
| Agency team (admin, backoffice, managers, housekeeping) | Admin portal (admin.*) | The fastest multi-unit calendar; every booking with its source; operations in one tool |
| Property owners / landlords | Landlord portal (owners.*) | Live transparency: occupancy, revenue share, statements — no more monthly e-mail ping-pong |
| Guests | Public website (www.*, own domain per agency) | SEO-strong direct booking site → agencies save OTA commission |
Why agencies switch
Section titled “Why agencies switch”- Manual-first calendar — many Dubai agencies book via phone, WhatsApp and local partners. MyRentalCalendar treats manual bookings as first-class, with channel sync (iCal) on top — not the other way around.
- Owner portal as a sales weapon — agencies win new landlords by showing them the transparency they’ll get.
- Fixed, predictable pricing — no revenue share (unlike Guesty & co.).
- Own website per tenant — each agency gets a white-label, SEO-optimised booking site on its own domain, with its own legal identity (imprint, terms, policies — editable in the backoffice).
What the MVP prototype demonstrates (today)
Section titled “What the MVP prototype demonstrates (today)”- ✅ Monorepo: Bun + TypeScript everywhere; Hono API; Vue 3/Vuetify admin; Nuxt 4 SSR website
- ✅ MariaDB schema with hard double-booking guard (
booking_nights, PK on unit+night) - ✅ Session auth with three roles — admin, backoffice, landlord (scoped + anonymised)
- ✅ 12 real apartments with generated galleries, owners, share & commission
- ✅ ~230 seeded bookings across Airbnb / Booking.com / Website / Direct / Partner
- ✅ Timeline calendar: colour by source, filters, occupancy, create/check-in/out/cancel with live conflict handling
- ✅ Quote engine: nightly rate − discounts + cleaning + Tourism Dirham + 5% VAT
- ✅ Public website (SSR): search with live availability, listing pages, price breakdown, booking requests
- ✅ Request inbox: one-click convert to confirmed booking
- ✅ Per-tenant legal editor: company profile + 5 legal pages (Markdown, live preview) published straight to the website
What comes next
Section titled “What comes next”See the Roadmap — headline items: housekeeping & cleaning routes, iCal channel sync, owner statements (PDF), price calendar with seasons, map view, multi-language public site (EN/DE/RU/AR), SaaS self-service onboarding and billing.
Documents in the repository
Section titled “Documents in the repository”The full German planning documentation lives in the repository under docs/:
actors & permission matrix, use cases, processes, architecture decisions (15 ADRs), data model, API design, frontend & calendar specification, testing strategy and the phased roadmap. The English user stories mirror docs/10-user-stories.md.