BTR Directory

A structured platform that enables users to discover, compare, and enquire about Build-to-Rent developments, while providing operators with an efficient channel for receiving qualified leads.

Django Full-Stack PostgreSQL Python UX

Role

Full-Stack Developer (UX-led)

Stack

Django, PostgreSQL, HTML, CSS, JavaScript, Bootstrap

Timeline

4 weeks

The problem

Searching for Build-to-Rent developments is often confusing and time-consuming. Users typically rely on multiple property platforms and developer websites, which are inconsistent and often lack the detail needed to make informed comparisons.

At the same time, operators receive enquiries that are frequently incomplete or unstructured, making it harder to convert interest into meaningful leads. This creates a disconnect between how information is presented to users and how it is received by businesses.

Goals

  • Create a centralised platform to browse Build-to-Rent developments
  • Allow users to filter and explore properties in a clear, structured way
  • Provide detailed, consistent development pages
  • Enable users to send enquiries with minimal friction
  • Deliver structured, usable enquiry data to operators

Process

Discover

I found that the main issue wasn’t the availability of listings, but the lack of structure and consistency. Users had to piece together information from different sources, which increased cognitive load and reduced confidence when making decisions. The key insight was that both users and operators benefit from structured data. Users need clear, comparable information, while operators need enquiries that are organised and actionable.

Design

I designed the platform around a simple user flow: browse, explore, then enquire. The interface focuses on scannable information and predictable structure, allowing users to quickly compare developments without friction. Each development page presents key details such as pricing, amenities, and availability in a consistent format. On the backend, the experience was designed so that every enquiry captures meaningful, structured data that is easy to review and act on.

Build

I built the application using Django, with a clear separation between data, logic, and presentation. The system was designed to handle structured data efficiently while supporting a simple and intuitive frontend experience. The platform is powered by a relational data model that reflects real-world relationships between developments, locations, and user enquiries. Developments are linked to cities, amenities, bedroom types, and images, ensuring consistent and reusable data across the platform. Each enquiry is tied to a specific development and captures relevant user intent in a structured format. Django’s ORM was used to manage relationships and maintain data integrity. Amenities were implemented using a many-to-many relationship, while bedroom types were structured as a one-to-many relationship, allowing flexible pricing and availability without duplicating data. The enquiry system was designed to reduce friction on both sides. Users can submit enquiries quickly, while operators receive structured information that is easy to review and act on. A mailto-based forwarding approach was used for the MVP to keep the system simple, reliable, and easy to maintain. The result is a system that works effectively in its current state while being well-structured and ready to scale with additional features and complexity.

Refine & Launch

Refinements focused on improving clarity, consistency, and usability across both the frontend and backend. This included adjusting spacing, improving content hierarchy, and simplifying form interactions. The final product delivers a clean, reliable experience for users and provides a solid technical foundation for future development.

Solution

The platform transforms a fragmented property search process into a clear and structured experience, while also improving how enquiries are captured and delivered.

Structured Property Listings

All developments are presented in a consistent format, making it easy for users to scan, compare, and understand key information quickly.

Clear User Journey

The experience follows a simple, intuitive flow from discovery to enquiry, reducing friction and improving usability.

Scalable Data Model

The database is designed to be flexible and extensible, allowing new features, relationships, and data points to be added without major restructuring.

Outcome

The database is designed to be flexible and extensible, allowing new features, relationships, and data points to be added without major restructuring.

  • Centralised platform for discovering Build-to-Rent developments
  • Improved clarity and consistency across property listings
  • Structured enquiry system for better lead quality
  • Fully responsive and accessible user experience
  • Strong foundation for future feature expansion

Reflections

This project reinforced the importance of designing the system behind the interface as carefully as the interface itself.

One of the key lessons was understanding how much impact a well-structured data model has on the overall product. By investing time upfront in designing relationships and data flow, the rest of the build became more predictable, scalable, and easier to manage.

It also highlighted the value of balancing simplicity with capability. Instead of over-engineering early solutions, I focused on building a clean, functional MVP that solves the core problem while leaving room for future growth.

Going forward, I will continue to approach projects with both a user-focused and system-focused mindset, ensuring that experience and architecture are aligned from the start.

Like this project?

If you like how I think and build, send a message and tell me what you need. I'll reply by email.