Skip to content

Din MΓ¦gler – Modern Danish real-estate platform. Browse properties, agent profiles, advanced search & user auth. Built with React 19, Vite & SCSS.

Notifications You must be signed in to change notification settings

GR0UD/dinmaegler

Repository files navigation

🏑 Din Mægler - Real Estate Platform

A modern, responsive real estate platform built with React and Vite, featuring property listings, agent profiles, user authentication, and advanced search functionality. This project demonstrates proficiency in modern front-end development, API integration, and professional Danish real estate market practices.

🌟 Project Overview

Din Mægler (Your Real Estate Agent) is a comprehensive real estate web application that connects property buyers with real estate agents. The platform offers an intuitive interface for browsing properties, searching by location, viewing detailed property information, and connecting with professional agents.

🎯 Key Features

  • 🏠 Property Listings: Browse and search through available properties
  • πŸ” Advanced Search: Real-time search with filtering by location and property details
  • πŸ‘₯ Agent Profiles: View detailed information about real estate agents
  • πŸ” User Authentication: Login and registration system with form validation
  • πŸ“± Responsive Design: Mobile-first approach with modern UI/UX
  • πŸ“§ Newsletter Subscription: Keep users updated with market news
  • πŸ“„ Sales Process Guide: Educational content about the buying process
  • 🏒 Company Information: About us and contact pages

πŸ›  Technical Stack

Frontend Technologies

  • React 19.2.3 - Modern React with latest features
  • Vite 6.0.5 - Fast build tool with HMR
  • React Router DOM 7.1.5 - Client-side routing with file-based routing
  • SCSS/Sass 1.83.4 - Advanced styling with variables and mixins

Form Management & Validation

  • React Hook Form 7.54.2 - Performant form handling
  • Yup 1.6.1 - Schema-based validation
  • @hookform/resolvers 5.2.2 - Form validation integration

UI/UX Libraries

  • React Icons 5.5.0 - Comprehensive icon library
  • Google Fonts (Roboto) - Professional typography

Development Tools

  • ESLint 9.17.0 - Code linting with React-specific rules
  • Vite Plugin Pages 0.33.2 - File-based routing system
  • Vite Plugin ESLint - Real-time linting during development

πŸ“ Project Architecture

src/
β”œβ”€β”€ components/           # Reusable UI components
β”‚   β”œβ”€β”€ home/            # Homepage components
β”‚   β”œβ”€β”€ boliger/         # Property listing components
β”‚   β”œβ”€β”€ details/         # Detail page components
β”‚   β”œβ”€β”€ maeglere/        # Agent components
β”‚   β”œβ”€β”€ login/           # Authentication components
β”‚   β”œβ”€β”€ register/        # Registration components
β”‚   └── kontakt/         # Contact components
β”œβ”€β”€ pages/               # Route components (file-based routing)
β”œβ”€β”€ hooks/               # Custom React hooks
β”œβ”€β”€ utils/               # Utility functions (API calls)
β”œβ”€β”€ style/               # SCSS stylesheets (modular structure)
└── App.jsx              # Main application component

πŸš€ Getting Started

Prerequisites

  • Node.js (v18+ recommended)
  • npm or yarn package manager

Installation & Setup

  1. Clone the repository

    git clone https://github.com/GR0UD/DinMaegler.git
    cd DinMaegler
  2. Install dependencies

    npm install
  3. Start development server

    npm run dev
  4. Open in browser

    • Navigate to http://localhost:5173

Available Scripts

Command Description
npm run dev Start development server with HMR
npm run build Build production-ready application
npm run preview Preview production build locally
npm run lint Run ESLint for code quality checking

🌐 API Integration

The application integrates with a REST API hosted at https://dinmaegler.onrender.com for:

  • Property listings and details
  • Agent information
  • User authentication
  • Search functionality

API Architecture:

  • Centralized API utility in src/utils/API.js
  • Error handling and response validation
  • Async/await pattern with proper error boundaries

🎨 Design & UI/UX

Design System

  • Typography: Roboto font family with responsive sizing
  • Layout: CSS Grid and Flexbox for responsive layouts
  • Components: Modular SCSS architecture
  • Responsive: Mobile-first design principles

Color Scheme & Branding

  • Professional real estate industry styling
  • Danish market-focused design language
  • Accessible color contrast ratios

πŸ“± Pages & Features

🏠 Homepage (/)

  • Hero section with property search
  • About company section
  • Featured apartments
  • Newsletter subscription
  • Agent showcase
  • Sales process explanation

🏒 Properties (/boliger)

  • Property listing grid
  • Search and filter functionality
  • Property cards with key information

πŸ‘₯ Agents (/maeglere)

  • Agent profile listings
  • Individual agent detail pages
  • Contact information

πŸ” Authentication

  • Login (/login) - User authentication with validation
  • Register (/register) - New user registration
  • Form validation with Yup schemas

πŸ“ž Contact (/kontakt-os)

  • Contact form with validation
  • Company information

πŸ”§ Development Features

Code Quality

  • ESLint Configuration: React-specific rules and best practices
  • Error Boundaries: Graceful error handling throughout the app
  • File-based Routing: Automatic route generation with Vite Pages
  • Modern JavaScript: ES6+ features and React best practices

Performance Optimizations

  • Vite Build Tool: Fast development and optimized production builds
  • Code Splitting: Automatic route-based code splitting
  • Suspense Boundaries: Loading states for better UX
  • Asset Optimization: Optimized images and fonts

Developer Experience

  • Hot Module Replacement: Instant updates during development
  • Path Aliases: Clean imports with @styles alias
  • TypeScript Ready: Configured for TypeScript migration
  • Modern Tooling: Latest versions of all dependencies

🌍 Localization

  • Danish Language: Fully localized for the Danish market
  • Cultural Adaptation: Danish real estate terminology and practices
  • Market-Specific Features: Tailored to Danish property market needs

πŸ“Š Project Metrics

  • 13+ React Components: Modular and reusable architecture
  • 7 Main Pages: Complete user journey coverage
  • 20+ SCSS Modules: Organized styling architecture
  • Modern Tech Stack: Latest stable versions of all dependencies
  • Production Ready: Configured for deployment

🎯 Skills Demonstrated

Frontend Development

  • βœ… React Development: Functional components, hooks, context
  • βœ… Modern JavaScript: ES6+, async/await, modules
  • βœ… Responsive Design: Mobile-first, CSS Grid, Flexbox
  • βœ… Form Management: React Hook Form, validation, UX

Development Practices

  • βœ… Component Architecture: Modular, reusable components
  • βœ… Code Organization: Clear folder structure and naming
  • βœ… API Integration: RESTful services, error handling
  • βœ… Build Tools: Modern development workflow

Professional Skills

  • βœ… Project Planning: Feature-complete real estate platform
  • βœ… UI/UX Design: User-centered design principles
  • βœ… Market Understanding: Danish real estate industry knowledge
  • βœ… Quality Assurance: Linting, validation, error handling

πŸš€ Deployment

The application is production-ready and can be deployed to:

  • Vercel (Recommended for Vite projects)
  • Netlify
  • GitHub Pages
  • AWS S3/CloudFront

Build command: npm run build
Output directory: dist/

πŸ‘¨β€πŸ’» About the Developer

This project showcases expertise in modern frontend development with a focus on:

  • Clean, maintainable code architecture
  • User experience and responsive design
  • Professional development practices
  • Real-world application development

Perfect for roles in: Frontend Development, React Development, Full-stack Development, UI/UX Development


Live Demo: View Project
Developer: Available for frontend development opportunities

About

Din MΓ¦gler – Modern Danish real-estate platform. Browse properties, agent profiles, advanced search & user auth. Built with React 19, Vite & SCSS.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors