How far can you take a real estate platform with Framer?
Over the past few months, I’ve been working on Zettla.
It started as a property website, but the scope gradually grew into something much closer to a full product.
Today, the platform includes:
• Buy and rent listings
• Advanced property filters
• User accounts and profiles
• Saved properties
• Price and availability alerts
• Online and onsite viewing bookings
• Consultation booking flows
• Payment plan requests
• Local services and providers
• Transactional emails and tracking
Framer still powers everything users see and interact with, including the public website, property pages, CMS content and product UI.
Supabase handles authentication, profiles, bookmarks and the structured data behind each property.
One of the more interesting challenges was connecting user-owned data with content managed inside the Framer CMS.
Each property is mirrored into a normalized Supabase record. Bookmarks, alerts, bookings and payment plan requests reference that record, so they stay connected to the correct property even when its CMS content changes.
Bookmarks are also tied to individual accounts and protected with row-level security. This lets users return to their saved property grid without exposing data from other accounts.
The rest of the system connects Framer with Supabase Edge Functions, n8n, a self-hosted Cal.com setup and Resend.
The final stack:
• Framer • Supabase • Cal.com • Resend • n8n • Custom React and TypeScript components
This project has been a good test of how far Framer can go when it is paired with the right backend setup.
Would love to hear what the Framer community thinks or answer any questions about the architecture.
You can test it here: zettla.com
How far can you take a real estate platform with Framer?
Over the past few months, I’ve been working on Zettla.
It started as a property website, but the scope gradually grew into something much closer to a full product.
Today, the platform includes:
• Buy and rent listings
• Advanced property filters
• User accounts and profiles
• Saved properties
• Price and availability alerts
• Online and onsite viewing bookings
• Consultation booking flows
• Payment plan requests
• Local services and providers
• Transactional emails and tracking
Framer still powers everything users see and interact with, including the public website, property pages, CMS content and product UI.
Supabase handles authentication, profiles, bookmarks and the structured data behind each property.
One of the more interesting challenges was connecting user-owned data with content managed inside the Framer CMS.
Each property is mirrored into a normalized Supabase record. Bookmarks, alerts, bookings and payment plan requests reference that record, so they stay connected to the correct property even when its CMS content changes.
Bookmarks are also tied to individual accounts and protected with row-level security. This lets users return to their saved property grid without exposing data from other accounts.
The rest of the system connects Framer with Supabase Edge Functions, n8n, a self-hosted Cal.com setup and Resend.
The final stack:
• Framer • Supabase • Cal.com • Resend • n8n • Custom React and TypeScript components
This project has been a good test of how far Framer can go when it is paired with the right backend setup.
Would love to hear what the Framer community thinks or answer any questions about the architecture.
You can test it here: zettla.com