A Short-Term Rental Platform Built From Scratch
Four products. One API. Zero platform commission.
Most short-term rental operators live inside Airbnb or Vrbo and pay the platform tax on every single booking — forever. Annashree Stays needed something different: the infrastructure to own the guest relationship directly. We built the whole stack.
Running a short-term rental business through Airbnb or Vrbo means paying their commission on every booking, operating within their rules, and never truly owning the guest relationship. Every booking that comes through a third-party platform is a booking where the platform holds the customer data, controls the cancellation policy, and takes a cut before a dollar reaches the operator.
Annashree Stays had properties near the Kentucky Horse Park in Lexington and a growing guest list — but no infrastructure of its own. There was no direct booking channel, no way to communicate with guests outside of the platform's messaging system, and no operational view of the business beyond what Airbnb's dashboard showed. As the property portfolio grew, so did the dependency on a platform they had no control over.
We designed and built four interconnected products that together give Annashree Stays full ownership of the booking stack.
The guest-facing site is built in Next.js 15 with React 19 and the App Router. Tailwind CSS handles styling. The site shows live property listings with rich detail pages, real-time availability calendars, and a full Stripe-powered checkout. Route Handlers under /app/api/ act as a thin BFF layer — they call Launch Lex Connect server-side so the browser never talks directly to internal API base URLs. This keeps the architecture clean and gives us a caching layer for expensive lookups.
Launch Lex Connect is the branded name for the custom REST API that sits at the centre of the entire system. Built in Express and TypeScript with ESM modules, it is the authoritative source of truth for listings, availability, payment intents, booking records, guest sessions, and notifications. MongoDB with Mongoose handles persistence. Stripe server-side handles payment orchestration. JWT and cookie-based auth manage sessions. Transactional email runs through SMTP. The API also exposes iCal feeds for calendar sync with external platforms where needed.
The CRM portal is a Vite and React application using MUI for the admin interface. Operators use it to manage properties, view and manage bookings, configure pricing and availability, and access guest history. MUI's data grid handles large booking tables. Date pickers handle availability configuration. The portal is authenticated separately from the guest surface — operator sessions are managed through Launch Lex Connect with role-based access.
The mobile app is built in Expo with expo-router for navigation. Renters can browse properties, check availability, and complete bookings with native Stripe Elements. Google and Apple sign-in are both configured. Push notifications are sent for booking confirmations, check-in reminders, and property updates. The app is another client of Launch Lex Connect — it calls the same API endpoints as the web app, with no mobile-specific backend surface required.
One API. Built to scale across properties.
Launch Lex Connect is the architectural centrepiece — every product in the system is a client of the same REST API. The infrastructure is built for operators running multiple properties: one source of truth for listings, availability, payments, and bookings regardless of which surface a guest or operator is using. Adding a new property doesn't mean rebuilding anything.
Built for ownership, not dependency
Every technology choice was made to give the operator full control — no vendor lock-in beyond payment processing, no black-box platform logic.
Annashree Stays now has the infrastructure to take bookings directly, manage its full property portfolio from a single operator dashboard, and reach guests through a native mobile app — without Airbnb, Vrbo, or any other platform taking a cut of every transaction. The operator owns the guest data, the booking history, the cancellation policy, and the checkout experience. Launch Lex Connect serves as the backbone: one API, four clients, one source of truth. As the property portfolio grows, the infrastructure grows with it.
Have a project in mind?
We keep our client list intentionally small so every project gets the full team. If you're ready to build something that actually works — not just looks good in a demo — let's talk.