Roofline CRM – Real Estate CRM with Viewing Calendar | Vibe96

Real Estate & Property

Roofline CRM – Real Estate CRM with Viewing Calendar

Source code included

Real estate CRM for small agencies: listings, contacts, pipeline, calendar, follow-ups, admin/agent roles.

Built by Redowan Ahmed Farhan Updated 29 Oct 2026 27,668 lines of code

Open live demo Built withClaude Code

About this software

About Roofline CRM – Real Estate CRM with Viewing Calendar

Roofline CRM brings property listings, buyers and sellers, viewings and follow-ups into one workspace for small agencies. Manage sales and rentals with a drag-and-drop pipeline, month/week/team-day calendar, conflict warnings and calendar export. Match contacts to listings, log notes and track overdue tasks. Admins manage the team, settings and branding; agents see their own contacts, leads and viewings. Choose your currency, time zone and area unit. Includes TypeScript source, database schema, demo seed, setup guides and automated tests. Runs with Docker Compose, Node.js + PostgreSQL, or Cloudflare Workers + Neon.

Category: Real Estate & PropertyStack: React 19.3.1 + Hono 4.13.13 · PostgreSQL 17Built with: Claude Code Licence: Single-site, full source

Why Roofline CRM – Real Estate CRM with Viewing Calendar

What makes it better
than the alternatives

  1. 01

    International settings

    Any ISO currency, 20 English number/date formats (US, UK, India, UAE, Germany), agency time zone, m² or ft².

  2. 02

    Viewing calendar

    Month, week, team day and agenda views; drag-and-drop rescheduling with conflict warnings; outcome recording and .ics export.

  3. 03

    Pipeline board

    Drag leads through Inquiry → Viewing → Offer → Sold/Let stages; cards flag missing next steps and show upcoming viewings.

  4. 04

    Role-based access

    Admins see everything; agents see shared listings but only their own contacts, leads, viewings and follow-ups (enforced in SQL).

  5. 05

    Photo management

    Up to 12 photos per listing, resized in the browser before upload; gallery view on listing detail pages.

Listings

  • Sale and rental properties (per week
  • month or year)
  • Eight property types with status from draft to sold/let
  • Up to 12 photos per listing
  • resized before upload
  • Owner (seller/landlord)
  • features
  • floor area in m² or ft²
  • price per area unit
  • Matching available listings shown on contact requirements

Contacts

  • Buyers
  • sellers
  • tenants and landlords in one record
  • Duplicate warning on email or phone
  • Requirements: budget
  • bedrooms
  • areas
  • One-click call
  • WhatsApp and email links
  • Timeline of notes
  • viewings and activity

Pipeline

  • Stages: Inquiry → Viewing scheduled → Offer made → Sold/Let
  • plus Lost with reason
  • Drag-and-drop board or list view
  • Filter by sale/rent
  • priority and agent
  • Booking a viewing moves inquiry forward; offer marks listing under offer
  • Cards flag leads with no next step
  • show next viewing or follow-up

Viewing Calendar

  • Month
  • week
  • team day (one column per agent) and agenda views
  • Click empty slot to book; client and listing pickers search as you type
  • Drag viewing to reschedule; conflict warnings if agent or listing already booked
  • Record outcome and client feedback
  • Add to Google
  • Apple or Outlook calendar (.ics export)

Notes and Follow-ups

  • Log calls
  • emails
  • WhatsApp
  • meetings and notes on leads
  • contacts or listings
  • Follow-ups with due times
  • Overdue follow-ups show on bell icon
  • Activity feed on dashboard
  • Timeline view on contact detail pages

Dashboard

  • Today's viewings
  • follow-ups due
  • open leads
  • offers on table
  • deals closed this month
  • Pipeline value by stage
  • lead sources
  • leads going cold
  • Activity feed of recent notes and viewings
  • Team table (admins only) with each agent's numbers
  • KPI ledger and pipeline funnel charts

Team and Roles

  • Admin role: full access plus team
  • settings and branding
  • Agent role: shared listings; only own contacts
  • leads
  • viewings and follow-ups
  • Access rules enforced in SQL with record-level visibility checks
  • Create users with temporary passwords
  • Deactivate users without deleting their data

Settings and Branding

  • Any ISO currency (amounts re-labelled
  • never converted)
  • 20 English number and date formats (US
  • UK
  • India
  • UAE
  • South Africa
  • Germany)
  • Agency time zone
  • week start day
  • m² or ft²
  • Agency name
  • logo upload
  • tagline and accent colour
  • Password change under My Account

Authentication and Security

  • First-run setup screen creates agency and admin user
  • Optional setup token for public servers
  • PBKDF2 password hashing (600k iterations on Node
  • 100k on Workers)
  • Rate limiting on login
  • password change and API endpoints
  • Session cookies with secure
  • httpOnly
  • sameSite=lax; CSRF protection via origin check

Deployment

  • Node.js server src/server/entry/node.ts with PostgreSQL connection pool
  • Cloudflare Workers route src/server/entry/worker.ts with Hyperdrive
  • Docker Compose with PostgreSQL 17
  • Caddy reverse proxy and auto-migration
  • Drizzle ORM migrations in drizzle/ folder
  • Vite build for React 19 frontend
  • Hono API backend

Quality report

Manually reviewed

94/ 100

Automated audit score

✓ Passed the audit

Passed the audit and a manual review.
Audit run: 23 Oct 2026
Reviewed by Vibe96 staff, Dubai.

Security96
Code structure82
Docs & completeness87
Dependency health95
Build & deploy92
Reviewer notes (2 minor)

Weak default passwords in examples and test fixtures; database access rules: well-scoped queries, minor schema gaps (missing indexes on fks). None of these stop the software from working; the developer has been told and improvements come in a future update.

Versions & updates

1.0.0
First release29 Oct 2026✓ Reviewed & audited

No updates yet. New versions appear here with a changelog.
Buyers receive updates free for 1 year.

Quality report

What you get

  • </>Full source codeThe complete audited source, delivered as a download from your account. No obfuscation.
  • ▤DocumentationSetup guide, architecture notes, CLAUDE.md and AGENTS.md.
  • ↻One year of updatesEvery new version the builder publishes, free for 12 months.
  • ♧30 days of supportInstallation and defect support through Vibe96 tickets.
$79Single-site licence Details