About this software
About Daar CRM: Real Estate CRM with Viewing Calendar
Daar CRM runs the sales and rental work of a UAE property agency in one place. Agents move leads through a six-stage pipeline on a list or drag-and-drop board, book viewings on a shared calendar that stops double-booking, and get email and SMS reminders before every viewing. Listings carry the DLD advert permit and Madmoun QR, with warnings before a permit expires. Deals work out commission, co-broker and agent shares and 5% VAT, and print a tax invoice with your TRN. Leases track Ejari numbers and rent cheques, with renewal reminders. Managers see the whole team, reports show where leads come from and who converts them, and admins set up routing, a website enquiry form, API keys and webhooks. Every screen works in English and Arabic (right to left) and on phones. Built with Django 6.1.2, Celery, PostgreSQL and Redis, and a React 19 TypeScript web app. Installs with Docker or on an Ubuntu server; full user manual included.
Why Daar CRM: Real Estate CRM with Viewing Calendar
What makes it better
than the alternatives
- 01
Made for UAE agencies
- 02
Fully bilingual
- 03
Viewing calendar that prevents clashes
- 04
Leads never go cold
- 05
Commission done right
Leads & pipeline
- six stages (New
- Contacted
- Viewing booked
- Offer made
- Won
- Lost) on a list or drag-and-drop board; search
- filters and paging; duplicate warning by phone or email; UAE numbers saved as +971; requirements (buy or rent
- budget
- bedrooms
- area
- type) with matching listings; timeline of notes and every change; reason asked when a lead is lost; one-tap call
- WhatsApp and email; CSV export
Lead routing
- hand out new leads in turn or by source; choose who takes turns; email alert when a new lead has no reply after set minutes; pass the lead to the next agent after set hours
Viewings & calendar
- day
- week
- month and list views in the agency timezone; filter by agent; book by selecting free time; drag to reschedule; clash rules for agent and unit; Scheduled
- Done
- No-show and Cancelled with an outcome note; WhatsApp confirmation message
Reminders
- confirmation and reminder emails to client and agent; reminder times you choose (e.g. 24 and 2 hours before); optional Twilio SMS; messages in the client's own language
Tasks
- Today
- Overdue
- Upcoming and Done tabs; priority and due time; linked lead; mine or everyone's for managers; automatic call-back task for website enquiries
Properties
- sale and rent; apartment
- villa
- townhouse
- penthouse
- office
- shop
- warehouse and land; available
- reserved
- sold and rented; English and Arabic titles and descriptions; up to 15 photos with cover and order; reference codes; CSV import and export
DLD permits & Golden Visa
- Trakheesi permit number and expiry; Madmoun QR upload; missing
- expired and expiring warnings and filter; Golden Visa badge above a price you set
Owners
- owner records with call and WhatsApp; their listings on one page; agents see the owners they added
Off-plan projects
- developer
- area
- expected handover and status; payment plan that must total 100%; unit types with size
- starting price and units available; listings linked to a project
Deals & commission
- price
- commission % or amount
- co-broker agency and share
- agent share with an agency default
- VAT (5% default); Pending
- Closed and Cancelled; printable tax invoice and receipt with TRN; monthly commission targets with progress
Tenancies
- unit
- tenant
- dates
- annual rent
- deposit and Ejari number; equal rent cheques created automatically; cheque number
- bank and Cleared or Bounced; Active
- Ending soon
- Starts later and Ended; renewal reminder email
Documents
- private files on leads
- listings and deals (PDF
- JPG
- PNG up to 10 MB); passport
- Emirates ID
- visa
- title deed
- Forms A
- B and F
- NOC and more; optional expiry date; only people who can open the record can download them
Dashboard & reports
- today's viewings
- overdue tasks
- new leads and deals won; pipeline
- task
- source and agent charts; reports for any date range: funnel
- lead sources with win rate
- agent table
- last 12 months; every report chart also shown as a table
Team & security
- Admin
- Manager and Agent roles checked on every request; agents see only their own leads
- viewings
- tasks and deals; invite by email; deactivate without deleting; two-factor sign-in with an authenticator app; sign-in rate limits; full change history
Settings & integrations
- company details and TRN; five themes (Gulf
- Palm
- Skyline
- Sandstone
- Marina Night); website enquiry form with spam protection; CSV import with column matching; API keys (shown once
- revocable) and an OpenAPI description; signed webhooks for new leads
- stage changes
- viewings and closed deals
- with a delivery log
Languages & devices
- English and Arabic with right-to-left layout; per-user language; phone layout with bottom tab bar
| Language | Version | Framework | Used for | Share of code |
|---|---|---|---|---|
| TypeScript (React) | — | — | Front-end | 37.4% |
| Python | — | — | Web, API | 37% |
| SQL | — | — | Database | 17.2% |
| TypeScript | — | — | Front-end | 7.1% |
| CSS | — | — | Styling | 1.2% |
| HTML | — | — | Front-end | 0% |
| Shell | — | — | Scripts | 0% |
- Primary language
- Python 3.12
- Framework
- Django 6.1.2 + React 19.3.1
- Database
- PostgreSQL 16
- Authentication
- Email and password with JWT (short-lived access token, httpOnly refresh cookie); optional TOTP two-factor; API keys for integrations
- Licence
- Single-site
- Screens
- 42
- Database tables
- 26
- Supported languages
- English, Arabic (RTL)
- Browser support
- Latest Chrome, Edge, Firefox and Safari, desktop and mobile
| Minimum | Recommended | |
|---|---|---|
| CPU | 1 vCPU | 2 vCPU |
| RAM | 2 GB RAM / 10 GB disk | 4 GB RAM / 20 GB disk |
| OS | Ubuntu 24.04, Python 3.12, PostgreSQL 16, Redis 7, Node 24, or Docker 24+ | Ubuntu 24.04, Python 3.12, PostgreSQL 16, Redis 7, Node 24, or Docker 24+ |
| Est. monthly hosting | $12 | $12 |
```bash cp .env.example .env # Edit .env: SECRET_KEY (openssl rand -hex 32), DB_PASSWORD, DAAR_NUM_PROXIES=1, email settings docker compose up -d --build docker compose exec web python manage.py initial_setup # asks for the first admin's email and password # Open http://localhost:8080 (HTTPS with Caddy: HowToSetup.md, step 7) ```
```bash sudo apt install -y python3 python3-venv postgresql redis-server nginx certbot python3-certbot-nginx # Node.js 24 from NodeSource, to build the web app sudo -u postgres psql -c "CREATE USER daar WITH PASSWORD 'strong-password';" -c "CREATE DATABASE daar OWNER daar;" python3 -m venv /opt/daar/venv && /opt/daar/venv/bin/pip install -r /opt/daar/daar-backend/requirements.txt cp .env.example /opt/daar/daar-backend/.env # then edit it cd /opt/daar/daar-admin && npm ci && npm run build && cp -r dist ../daar-backend/spa cd /opt/daar/daar-backend DJANGO_SETTINGS_MODULE=Config.settings.production /opt/daar/venv/bin/python manage.py collectstatic --noinput DJANGO_SETTINGS_MODULE=Config.settings.production /opt/daar/venv/bin/python manage.py initial_setup # systemd units for gunicorn, Celery worker and beat, the nginx site and certbot: docs/deploy-vps.md ```
Quality report
Manually reviewedHow to read the quality report
What this is. Every project on Vibe96 goes through an automated audit of its source code before a reviewer in Dubai checks it by hand. The score is out of 100; 75 is the minimum to be listed, and any single failing check blocks a listing regardless of the score.
- Security
- No real credentials in the code, every data-changing route protected, admin areas role-gated, no SQL built from user input.
- Code structure
- A developer can navigate and extend it: clear module boundaries, no giant files, little copy-paste.
- Docs & completeness
- The setup guide, example config, schema and required files the builder committed to are actually in the archive.
- Dependency health
- Packages pinned, no known critical vulnerabilities, no abandoned libraries in production paths.
- Build & deploy
- A clean machine can restore, build and start it by following the shipped instructions.
Warnings are problems that didn't block the listing; they stay visible here until a later version clears them. The audit reads the code — it does not run it — so always try the live demo before you buy. Lines of code are counted from the same audited archive.
Reviewer notes (4 minor)
Weak default credentials in example files; no real secrets found; dependencies mostly current; a few outdated packages but no known critical vulnerabilities; strong authentication and role checks; minor ownership gaps on read endpoints; database access is safe; minor schema gaps in foreign key indexes and cascade rules; moderate code duplication and some oversized test files; generally well-structured. None of these stop the software from working; the developer has been told and improvements come in a future update.
Versions & updates
No updates yet. New versions appear here with a changelog.
Buyers receive updates free for 1 year.
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.