Find Me a Home - Ireland

in-progress

Comprehensive property search platform for Ireland integrating listings, school information, and real-time transport data

Technologies

Python Flask PostgreSQL Azure AD B2C Bootstrap 5 Leaflet.js Irish Rail API

Tags

Property SearchReal EstateIrelandFlaskAzure AD B2CGTFS-R

A comprehensive web application designed to help people find homes for sale across Ireland with integrated information about nearby secondary schools and real-time transport options, providing a holistic view of property locations.

Purpose

House hunting in Ireland requires understanding not just the property itself, but the surrounding infrastructureβ€”schools for families, and transport connectivity for commuters. This application consolidates multiple data sources into a single, user-friendly platform to simplify the property search process.

Key Features

🏠 Property Listings

  • Browse properties from multiple sources across Ireland
  • Smart alerts for new properties matching search criteria
  • Favorites and rankings system for saved properties
  • Advanced search filters

πŸŽ“ School Information

  • Detailed information about nearby secondary schools
  • Department of Education official data integration
  • School quality metrics and enrollment information
  • Distance calculations from properties

πŸš† Real-Time Transport Options

  • Irish Rail API integration for train schedules
  • GTFS-R real-time bus and LUAS data
  • Commute time calculations
  • Transport accessibility scoring

πŸ—ΊοΈ Interactive Mapping

  • Leaflet.js-based interactive maps
  • Visualize properties, schools, and transport stops
  • Distance and route visualization
  • Multiple layer overlays

πŸ” Secure Authentication

  • Azure AD B2C integration for enterprise-grade authentication
  • User profile management
  • Saved searches and preferences
  • Personalized alerts system

Technical Implementation

Backend Architecture

  • Flask (Python): Lightweight web framework
  • PostgreSQL: Production-grade database for property, school, and user data
  • Azure AD B2C: Cloud authentication and identity management
  • Service Layer Pattern: Modular business logic separation

Frontend Design

  • Bootstrap 5: Modern, responsive UI framework
  • Leaflet.js: Interactive mapping library
  • Responsive Design: Mobile-first approach for property browsing on the go

API Integration

  • Irish Rail API: Real-time train schedules and station information
  • Department of Education ArcGIS: Official school data and statistics
  • GTFS-R: Real-time public transport data from data.gov.ie
  • Property Data: Multi-source aggregation (requires scraping or third-party service)

Deployment

  • Heroku: Cloud platform hosting
  • WhiteNoise: Static file serving (if applicable)
  • Environment Variables: Secure configuration management

Data Sources

Properties

  • MyHome.ie, Daft.ie, Property.ie integration (via web scraping or third-party service)
  • Requires compliance with robots.txt and terms of service
  • Sample data available for testing

Schools

Transport

Project Structure

Find me a home/
β”œβ”€β”€ app.py                 # Main Flask application
β”œβ”€β”€ models.py              # Database models
β”œβ”€β”€ requirements.txt       # Python dependencies
β”œβ”€β”€ routes/                # Blueprint routes
β”‚   β”œβ”€β”€ auth.py           # Azure AD B2C authentication
β”‚   β”œβ”€β”€ properties.py     # Property listing routes
β”‚   β”œβ”€β”€ schools.py        # School information routes
β”‚   β”œβ”€β”€ transport.py      # Transport data routes
β”‚   └── search.py         # Search and filter routes
β”œβ”€β”€ services/              # Business logic
β”‚   β”œβ”€β”€ property_service.py
β”‚   β”œβ”€β”€ school_service.py
β”‚   β”œβ”€β”€ transport_service.py
β”‚   β”œβ”€β”€ location_service.py
β”‚   └── search_service.py
β”œβ”€β”€ templates/             # HTML templates
└── static/                # CSS, JavaScript, images

Use Cases

Family Relocation

  • Find properties near quality secondary schools
  • Understand school catchment areas
  • Plan family commutes

Commuter Focus

  • Prioritize properties with good transport links
  • Calculate commute times to workplace
  • Compare transport accessibility across areas

Investment Analysis

  • Understand area infrastructure and amenities
  • School quality impact on property values
  • Transport development plans and future connectivity

Future Enhancements

  • Mobile app version
  • Price prediction using machine learning
  • Commute time calculator with traffic data
  • School comparison tool with rankings
  • Mortgage calculator integration
  • Virtual property tours
  • Community ratings and reviews
  • Background jobs for periodic data updates (APScheduler)
  • Email alerts for saved searches

Development Status

This project is actively under development, focusing on:

  • Implementing property data scraping or integration with property data services
  • Setting up Azure AD B2C tenant configuration
  • Adding background jobs for periodic data updates
  • Expanding search filters and property templates
  • Unit test coverage

Value Proposition

Simplifies the Irish property search experience by:

  • Consolidating Multiple Data Sources: Property, schools, transport in one place
  • Reducing Research Time: No need to cross-reference multiple websites
  • Family-Focused: Schools information front and center
  • Commuter-Friendly: Real-time transport integration
  • Personalized Experience: Alerts, favorites, and saved searches

Technical Highlights

  • Azure AD B2C Integration: Enterprise authentication for user management
  • Real-Time Data: Live transport schedules via Irish Rail and GTFS-R APIs
  • Official Education Data: Department of Education ArcGIS REST API
  • Interactive Mapping: Leaflet.js with multiple data layers
  • Flask Blueprints: Modular routing architecture
  • Service Layer: Clean separation of business logic
  • PostgreSQL: Production-ready data persistence
  • Mobile-First Design: Responsive UI for property browsing anywhere

Note: Property data integration requires web scraping or third-party service agreements.

← Back to Projects