An open API service indexing awesome lists of open source software.

https://github.com/michaelpiper/real_estate_app_ui

This Flutter project is a pixel-perfect implementation of the Real Estate App UI
https://github.com/michaelpiper/real_estate_app_ui

Last synced: about 1 year ago
JSON representation

This Flutter project is a pixel-perfect implementation of the Real Estate App UI

Awesome Lists containing this project

README

          

# 🏑 Real Estate App UI (Dribbble Inspired)

This Flutter project is a pixel-perfect implementation of the [Real Estate App UI](https://dribbble.com/shots/23780608-Real-Estate-App) by **Kristina Spiridonova for Purrweb UI/UX Agency** on Dribbble. It faithfully recreates the sleek design, integrates real-world functionality, and adheres to clean architecture principles using `BLoC`.
---

## πŸŽ₯ Demo

https://drive.google.com/file/d/1FJtCs0hM4Pv1475UUCruvB9yyH3uJ7Zq/view?usp=sharing

## πŸŽ₯ APK
https://drive.google.com/file/d/1pFQNn3m5CBpn8g4-hcp7VobyyXetrQv0/view?usp=sharing
---

## ✨ Features & Achievements

### 🎯 Pixel-Perfect Implementation
- Downloaded and applied the **exact font** used in the original design.
- Used a **keen eye for detail** to match layouts, spacing, and colors.
- Carefully replicated **box shadows** using `BlurStyle.outer` for an authentic feel.

### 🧠 State Management with BLoC
- Implemented `flutter_bloc` to separate UI from business logic for scalability and maintainability.

### πŸ“± UI & UX Improvements
- Fixed major scroll/layout issues using a custom `SwipeDetector` to deliver a **seamless scroll experience** on the `HomePage`.

### πŸ—ΊοΈ Real Integration
- Integrated **Google Maps** to simulate real property locations and interactions.

### ⚑ Performance Optimization
- Used `precacheImage` for **network image caching**, enhancing smoothness and speed in image rendering.

---

## πŸ“Έ UI Preview

> Check out the original inspiration: [Dribbble Shot](https://dribbble.com/shots/23780608-Real-Estate-App)

https://drive.google.com/file/d/1FJtCs0hM4Pv1475UUCruvB9yyH3uJ7Zq/view?usp=sharing
---

## πŸ› οΈ Tech Stack

- **Flutter** with **Dart**
- **flutter_bloc** for state management
- **Google Maps API**
- **Custom Gestures & Swipe Detection**
- **Image Caching**

---

## πŸš€ Getting Started

```bash
git clone https://github.com/michaelpiper/real_estate_app_ui.git
# GOOGLE_API_KEY for map support
# replace {{GOOGLE_API_KEY}} in real_estate_app_ui/ios/Runner/AppDelegate.swift
# replace {{GOOGLE_API_KEY}} in real_estate_app_ui/android/app/src/main/AndroidManifest.xml

# replace {{GOOGLE_API_KEY}} in real_estate_app_ui/lib/constants.dart
cd real_estate_app_ui
flutter pub get

flutter run
```

---

## πŸ“Œ TODO

- [ ] Add backend integration for property listings
- [ ] Implement search & filtering
- [ ] Add dark mode

---

## πŸ™Œ Credits

- UI Design by [Kristina Spiridonova for Purrweb UI/UX Agency](https://dribbble.com/purrwebui)
- Developed by **Michael Piper**

---

Let me know if you want it tailored for GitHub with badges or deployment instructions.

## Code Structure
```txt
lib/
β”œβ”€β”€ core/
β”‚ β”œβ”€β”€ constants/ # App constants, enums
β”‚ β”œβ”€β”€ errors/ # Custom exceptions and failures
β”‚ β”œβ”€β”€ network/ # Dio/HTTP client setup, interceptors
β”‚ β”œβ”€β”€ routes/ # App routing configuration
β”‚ β”œβ”€β”€ theme/ # App theme data
β”‚ β”œβ”€β”€ usecases/ # Base use case class
β”‚ └── utils/ # Extensions, helpers, validators
β”‚
β”œβ”€β”€ features/
β”‚ β”œβ”€β”€ property/ # Already created
β”‚ β”‚
β”‚ β”œβ”€β”€ authentication/ # Auth feature
β”‚ β”‚ β”œβ”€β”€ data/
β”‚ β”‚ β”‚ β”œβ”€β”€ datasources/ # AuthRemoteDataSource
β”‚ β”‚ β”‚ β”œβ”€β”€ models/ # UserModel, TokenModel
β”‚ β”‚ β”‚ └── repositories/
β”‚ β”‚ β”œβ”€β”€ domain/
β”‚ β”‚ β”‚ β”œβ”€β”€ entities/ # UserEntity
β”‚ β”‚ β”‚ β”œβ”€β”€ repositories/ # AuthRepository
β”‚ β”‚ β”‚ └── usecases/ # Login, Register, Logout, etc.
β”‚ β”‚ └── presentation/
β”‚ β”‚ β”œβ”€β”€ bloc/ # AuthBloc, AuthEvents, AuthStates
β”‚ β”‚ β”œβ”€β”€ pages/ # LoginPage, RegisterPage
β”‚ β”‚ └── widgets/ # AuthForm, SocialLoginButtons
β”‚ β”‚
β”‚ β”œβ”€β”€ profile/ # User profile management
β”‚ β”‚ β”œβ”€β”€ data/ # ProfileDataSource
β”‚ β”‚ β”œβ”€β”€ domain/ # ProfileEntity, UpdateProfile
β”‚ β”‚ └── presentation/ # ProfileBloc, ProfilePage
β”‚ β”‚
β”‚ β”œβ”€β”€ favorites/ # Saved properties
β”‚ β”‚ β”œβ”€β”€ data/ # FavoritesDataSource
β”‚ β”‚ β”œβ”€β”€ domain/ # FavoritesRepository
β”‚ β”‚ └── presentation/ # FavoritesBloc, FavoritesPage
β”‚ β”‚
β”‚ β”œβ”€β”€ search/ # Property search
β”‚ β”‚ β”œβ”€β”€ data/ # SearchDataSource
β”‚ β”‚ β”œβ”€β”€ domain/ # SearchFilters entity
β”‚ β”‚ └── presentation/ # SearchBloc, FilterWidgets
β”‚ β”‚
β”‚ β”œβ”€β”€ notifications/ # Push notifications
β”‚ β”‚ β”œβ”€β”€ data/ # NotificationsDataSource
β”‚ β”‚ β”œβ”€β”€ domain/ # NotificationEntity
β”‚ β”‚ └── presentation/ # NotificationsBloc
β”‚ β”‚
β”‚ β”œβ”€β”€ messaging/ # Chat with agents
β”‚ β”‚ β”œβ”€β”€ data/ # ChatDataSource
β”‚ β”‚ β”œβ”€β”€ domain/ # MessageEntity
β”‚ β”‚ └── presentation/ # ChatBloc, ChatUI
β”‚ β”‚
β”‚ └── map/ # Property map view
β”‚ β”œβ”€β”€ data/ # MapDataSource
β”‚ β”œβ”€β”€ domain/ # MapMarkerEntity
β”‚ └── presentation/ # MapBloc, CustomMap
β”‚
β”œβ”€β”€ injection.dart # Dependency injection setup
└── main.dart # App entry point
```