Flagship Portfolio Project

BuildEstate Pro

The Enterprise Property Development Lifecycle Platform

A full-stack enterprise SaaS platform engineered for property developers who manage multi-million pound developments end-to-end. It replaces spreadsheets, disconnected systems, and manual processes with a single, auditable, role-secured digital command centre spanning 14 integrated modules — from land identification through construction, sales, handover, and long-term asset management.

View on GitHub

Platform Overview

BuildEstate Pro manages 8 sequential lifecycle phases with clear role ownership: Opportunity → Due Diligence → Planning → Design & Prep → Construction → Sales → Completion → Operations. Each phase has dedicated roles, automated workflows, approval gates, notification triggers, and real-time dashboards.

BuildEstate Pro — Complete platform overview showing the end-to-end property development lifecycle

14

Business Modules

13

User Roles

43

Permissions

49

UI Components

188

Tests Passing

14 Integrated Business Modules

Each module represents a distinct business domain within property development. Rather than building isolated features, the platform models how these domains interact — data flows from Land Acquisition into Planning, which feeds Construction, which drives Sales. One connected system, not fourteen disconnected ones.

BuildEstate Pro — Full domain breakdown showing all 14 modules and their interconnected capabilities

Framework Foundations

Before building any business module, I invested in a comprehensive platform foundation — the shared infrastructure that every module builds upon. Security, user management, notifications, global search, and the design system are not afterthoughts. They are the backbone that makes the entire platform consistent, secure, and maintainable.

BuildEstate Pro — Framework foundations implementation plan showing the cross-cutting platform infrastructure

Security & Authorization

Zero-trust architecture. Every request verified. Every action logged. Every permission enforced at both API and UI level. The security system implements JWT authentication with refresh token rotation, 43 granular permissions enforced per endpoint, session tracking per device, account lockout on failed attempts, and a frontend directive that dynamically shows or hides UI elements based on the user's permission set.

BuildEstate Pro — Security architecture showing JWT authentication, RBAC, 43 permissions, session management, and audit trails

Authentication

JWT tokens (60 min) + refresh rotation (7 days) + session tracking per device + account lockout

13 Enterprise Roles

Mapped to organisational responsibilities: directors, managers, legal, finance, construction, sales, admin

43 Granular Permissions

Policy-based enforcement on individual API endpoints. Permission toggle → session revocation → immediate effect

Frontend Integration

*appHasPermission directive hides UI elements dynamically. Sidebar shows only authorised modules

Audit Trail

Every permission change logged with user, timestamp, IP address, and old/new values

Session Revocation

Administrators can revoke sessions per device. Role changes take immediate effect on next request

User Management Console

An enterprise identity management console inspired by Microsoft Entra ID and AWS IAM. This is not a simple CRUD table — it is a full administrative interface with dashboard KPIs, advanced filtering, modal-based operations, role assignment, session control, bulk operations, and a complete immutable audit trail.

BuildEstate Pro — User management listing page with advanced filtering, status badges, role indicators, and action buttons

User listing with search, role filter, status filter, and one-click actions

BuildEstate Pro — Create new user modal with role assignment, validation, and department selection

Modal-based user creation with real-time validation and role checkbox assignment

BuildEstate Pro — User management design concept showing the full admin interface layout

Design concept for the enterprise user management interface

BuildEstate Pro — User management page designs showing dashboard KPIs, session control, and audit views

Page designs: dashboard KPIs, session management, and permission matrix views

Enterprise Notification System

One engine. All modules. Admin-configurable. Zero code changes for new notification types. Any module emits a notification with a single line of code — the engine handles recipient resolution, template rendering, delivery, and audit logging. Administrators control everything through the UI without touching source code.

BuildEstate Pro — Enterprise notification system architecture showing the rule-based engine, template system, recipient resolution, and delivery audit

Rule-Based Engine

Events → rules → recipients → templates → delivery. Fully configurable per event type

Template System

Admin-editable message templates with {variable} substitution and live preview

27+ Event Types

Land Acquisition (13), Planning (5), Legal (9), plus automated background service events

User Preferences

Per-user opt-out, temporary mute, and notification type preferences

Real-Time Bell

Header component with unread badge, 60s polling, click-to-navigate, mark-as-read

Delivery Audit

Full history trail: who received what, when, read status, delivery channel

Land Acquisition — The Foundation Module

The Land Acquisition module establishes the patterns every subsequent module follows. It demonstrates the full depth of the platform's engineering: pipeline management with state machines, multi-step creation wizards, due diligence workflows, offer submission with auto-approval thresholds, contract management, feasibility assessments with ROI calculations, document uploads, approval gates, CSV export, and dashboard KPIs.

BuildEstate Pro — Land acquisition module showing the complete user workflow from opportunity identification through to acquired status

Complete lifecycle: Identify → Evaluate → Offer → Contract → Registry → Acquired. Each stage enforced by state machine.

BuildEstate Pro — 5-step opportunity creation wizard with validation, site details, financial assessment, and document upload

5-step creation wizard: site details, financial assessment, documents, notes, and confirmation

Module Capabilities

Pipeline board with drag-and-drop status transitions
Due diligence management with status transitions
Offer submission with auto-approval thresholds
Contract management with exchange tracking
Feasibility assessment with ROI calculations
Document upload with type categorisation
Land owner CRUD with contact management
Finance Director approval gate
CSV export, column toggle, saved views

Planning & Approvals Module

Once land is acquired, the platform transitions into planning. This module manages planning applications, conditions, milestones, appeals, fees, and council submissions. It tracks the complex approval processes that property developers navigate with local planning authorities — deadlines, conditions to discharge, milestone tracking, and appeal workflows when applications are refused.

BuildEstate Pro — Planning and approvals module showing application workflows, condition management, milestone tracking, and council submission processes

Legal & Compliance Module

Property development involves significant legal complexity — land contracts, title transfers, compliance requirements, insurance management, and regulatory obligations. This module provides case management for legal matters, contract lifecycle tracking, compliance check workflows, insurance management with expiry alerting, audit records, and document retention policies.

BuildEstate Pro — Legal and compliance module implementation showing case management, contracts, compliance checks, insurance, and retention policies

Enterprise Design System & Shared Component Library

49 components. 188 tests. 28 correctness proofs. One import. Every module uses the same governed set of building blocks — ensuring the platform looks, feels, and behaves like a single product. Instead of each module building its own tables, modals, and forms, every team draws from one governed library with strict governance rules: search before create, extend over duplicate, documentation mandatory, and no PR merges without accessibility compliance.

Data Tables

Server-side sort, paginate, search, column visibility, export, saved views, bulk select

Filter Bar

Text (debounced), dropdown, date-range, status-chip, tag, presets, active count badge

12 Form Controls

All with ControlValueAccessor: text, number, email, phone, select, multi-select, toggle, currency, etc.

Enterprise Modals

5 sizes, focus trap, dirty form detection, programmatic API, fade/scale animation

Workflow Components

Lifecycle stepper, approval panel, pipeline columns, timeline, KPI cards, notification panel

Theming

4 themes (Light, Dark, Corporate, Business), 3 font scales, density options, Preferences playground

Accessibility & Quality

WCAG 2.1 Level AA throughout
Keyboard navigation, focus trapping, screen readers
44×44px minimum touch targets on mobile
prefers-reduced-motion disables animations
28 property-based correctness proofs (fast-check)
188 unit tests, all passing, zero build errors

Global Search — Enterprise Command Palette

Ctrl+K from anywhere. 14 modules searchable. 7-layer relevancy scoring. Permission-aware. Sub-300ms responses. This is platform infrastructure — accessible from every page via the navigation bar or keyboard shortcut. It provides intelligent, fast, grouped results with layered matching (exact, starts-with, contains, token, fuzzy, phonetic, synonym), contextual boosting, and real-time permission filtering. New modules add search capability with one ISearchProvider class — zero changes to the aggregator or frontend.

14

Search Providers

7

Scoring Layers

6

Contextual Boost Rules

<300ms

Response Target

Capabilities

Instant results with debounce and in-flight cancellation
Category tabs with results grouped by module
Match highlighting (XSS-safe server-generated markup)
Full keyboard navigation (arrows, Enter, Escape)
Recent searches, pinned items, saved presets
Advanced filters: module, status, date, creator, tags
Command palette mode with ">" prefix
Preview panel on desktop without leaving search

Technology Stack

Backend

.NET 8ASP.NET CoreC# 12MediatRFluentValidationAutoMapperEntity Framework CoreSQL ServerASP.NET IdentityJWT Bearer

Frontend

Angular 20TypeScript (strict)NgRxDaisyUITailwind CSSStandalone ComponentsAngular SignalsOnPush Change Detection

Testing

xUnitMoqFluentAssertionsFsCheckJasminefast-checkProperty-Based Testing

Architecture

Clean ArchitectureCQRSDomain EventsState MachinesRESTful APIsSwagger / OpenAPIDomain-Driven Design

What This Demonstrates About My Engineering

Solutions architecture with strict layer boundaries
Full-stack engineering: .NET + Angular + SQL Server
Enterprise security with RBAC and 43 permissions
Domain-driven design with state machines
Reusable 49-component library with governance
Production patterns: concurrency, soft delete, pagination
Property-based testing for correctness proofs
Accessibility-first design (WCAG 2.1 AA)
Extensible architecture (add modules, not rewrites)
Enterprise-grade documentation and governance

Interested in this level of engineering?

I am available immediately for senior developer, technical lead, and contract opportunities across the UK.