Jason Cox Logo

Project Case Study

Realtor CRM

Realtor CRM is a full-stack business application designed to help manage client leads, follow-up tasks, and ongoing customer relationships in a structured workflow. The project emphasizes relational database design, dashboard-style interfaces, and real-world business data relationships while demonstrating how backend APIs and SQL queries power a production-style application.

Next.jsReactNode.jsExpressPostgreSQLSQLTailwind CSSDocker

Project Snapshot

Type

Full-Stack Business Application

Architecture

Next.js • Express • PostgreSQL

Focus

Relational data modeling, workflows, dashboards

Status

Currently in active development

Architecture

Next.js frontend provides dashboard pages, lead management interfaces, and task creation flows.
React components handle client-side rendering, filtering, and form management.
Node.js + Express backend exposes REST APIs for leads, tasks, and related workflows.
PostgreSQL stores normalized relational data including users, leads, and tasks.
Docker runs the PostgreSQL container to simplify local development and environment setup.
SQL queries support joins, filtering, and dashboard summaries.

Key Features

Lead creation and management system

Task management tied to specific leads

Dashboard overview of active tasks and upcoming work

Filtering system for tasks and lead activity

Detailed lead profile pages with associated tasks

Relational database schema connecting leads and tasks

REST API architecture for backend data operations

Challenges & Solutions

Designing a relational data model

Challenge

CRM systems rely on relationships between entities such as leads, tasks, and users. Without a properly structured schema, querying and managing these relationships becomes difficult.

Solution

Designed a relational schema in PostgreSQL using foreign keys to connect tasks to specific leads, allowing efficient joins and reliable data integrity.

Connecting frontend workflows to backend persistence

Challenge

Creating leads and tasks requires coordinating form state, API requests, and database updates while keeping the UI synchronized with the latest data.

Solution

Implemented REST endpoints for lead and task creation and connected them to Next.js forms so new records are immediately reflected in the dashboard and detail pages.

Building a realistic business workflow

Challenge

Many portfolio apps demonstrate simple CRUD operations but do not reflect real business workflows or relational data usage.

Solution

Structured the project around a real estate CRM workflow where leads generate tasks, allowing the application to demonstrate practical database design and multi-page application architecture.

Screenshots

CRM dashboard overview
Lead management page
Lead detail page with tasks