
Stayo
Selected work
From MyHomeStayz to Stayo.
A rebrand and a full product for a curated homestay company in Hyderabad. We took MyHomeStayz to Stayo and built the platform underneath it: the guest-facing web app, the console that runs the homes, and the backend that ties them together.
Built by Pivot & Anchor, a small product studio.- Role
- Design & Engineering
- Client
- MyHomeStayz
- Platform
- Web & mobile
- Category
- Hospitality, short stays
- Stack
- Next.js, Node, Postgres
- Status
- In development, launching at stayoapp.in
Stayo is a curated homestay brand in Hyderabad. Every property is hand-picked and prepared the night before a guest arrives: fresh linens, stocked kitchen, lamp on, a note from the team. One team runs it end to end. It is anti-marketplace by design, one brand rather than a directory of strangers.
MyHomeStayz came to us with a working business and a name they had outgrown. The operation was good; the brand was holding it back. They wanted a new identity and the product to carry it, built together. We rebranded the company to Stayo and built the platform underneath it: the guest-facing web app, the operations tooling that runs the homes, and the backend that ties it together.
The product

01 — Find a home
A curated home, not a listing
The landing opens on hand-picked homes and one search. Pick your dates and guests and you are browsing stays Stayo runs itself, never a stranger's spare room.
02 — Search
Map and list, together
Filter by area, dates, guests, and price, then read the results as a list beside a live Hyderabad map. Every pin is a home, priced for the nights you picked.
03 — The home
Everything, then book in place
Photos, the rooms, and what the team loves about the place, with a reserve panel that totals the stay as you choose dates. The cleaning fee and taxes show before you commit.
04 — Your trips
Every stay in one account
Upcoming and past trips, saved homes, invoices, and reviews sit in one place. Open a booking for the details, cancel within policy, or pull the invoice.
05 — Run the bookings
Every reservation on one board
Property managers work a single board of every booking across their homes. Filter by status, open a reservation, and act, with the guest, the dates, and the total on one line.
06 — Manage the homes
The homes you run
Each manager sees only their own homes: photos, pricing, amenities, and a live status. A super-admin onboards new homes, so the roster stays clean.
07 — See the revenue
Revenue, down to the GST
Confirmed revenue, average booking value, and the top homes by share roll up per manager. CGST, SGST, and IGST split on every downloadable report, ready for filing.
What we built
The guest experience
Browse curated homes, search on a map and a list with filters, open a property page with gallery, amenities, reviews, and map, and book it.
The booking flow
Dates, a ten-minute hold so two guests never grab the same night, a Razorpay payment, an instant confirmation, then trips and reviews.
The operations console
Property managers run their homes: properties, rates, availability calendars, bookings, check-ins, revenue, and replies to reviews.
The super-admin tier
Platform-wide analytics, the property and manager rosters, featured curation, users, content pages, and refund processing.
A mobile guest app
An Expo iOS and Android companion for search, booking, and reviews, sharing the same API. In progress.
Stayo is one product across three codebases on a shared API.
The web app is Next.js on the App Router, server-rendered so availability and pricing are always live. Maps are Google, payments are Razorpay, and sign-in is passwordless. The visual shift was full too: a new wordmark in DM Sans, the palette pulled from the homes, the copy voice rewritten. The legacy stack underneath kept its names on purpose so the business never stopped running.
The backend is Node and Express on PostgreSQL with Prisma, with Redis for rate-limiting and locks. The piece everything hangs off is availability. Every booking starts as a ten-minute hold, and a single query checks it against confirmed bookings, other live holds, and blocked dates, so the same night can't be sold twice. A job releases expired holds every minute to free the slot again.
Payments run through Razorpay, with Indian GST split into CGST, SGST, and IGST by the property's location, a cancellation policy snapshotted onto each booking, and refunds verified against the live Razorpay API before they post. Sign-in is multi-channel: magic link, phone OTP, Google, or Apple, with Redis-backed lockout against brute force.
Access is role-based across three tiers, guest, property manager, and super-admin, where a manager only ever sees their own homes. Eight scheduled jobs do the quiet work: hold release, booking and checkout reminders, review requests, a daily manager summary with a PDF invoice, and housekeeping. Email runs on AWS SES, files on S3 behind a CDN, OTPs on MSG91, and push on Firebase.
The hard parts
Availability without overbooking
Ten-minute holds, a three-way conflict check across bookings, holds, and blocked dates, and a per-minute release job.
Payments, GST and refunds
Razorpay orders and webhooks, Indian GST, policy-snapshot cancellations, and refunds verified against the live API before they post.
One product, three roles
Hierarchical access where property managers are scoped to their own homes and super-admins see everything.
Passwordless, four ways
Magic link, phone OTP, Google, and Apple on one account model, with Redis lockout against brute force.
The operation, automated
Eight scheduled jobs and a multi-channel notification system keep guests and managers in sync without anyone watching a queue.
Stayo runs on a single, quiet face. DM Sans does everything, from the wordmark down to the smallest caption, across five weights. One typeface, used with restraint, is the whole system.
- DM SansThe whole system
The palette was pulled from the homes themselves. Clay from the floors, sage from the linen, gold from the warm details, and cream as the breathing room around all of it.
- ClayPrimary. CTAs, links, the signature.#A8452F
- SageSecondary accent and soft surfaces.#7A8E72
- GoldWarm details and highlights.#B8943E
- CreamThe page, and the breathing room.#F7F3EE
- InkHeadings and body text.#252320
- LineHairline borders and dividers.#E8E0D6





