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
- Host: GitHub
- URL: https://github.com/michaelpiper/real_estate_app_ui
- Owner: michaelpiper
- Created: 2025-04-16T12:35:32.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-04-16T16:23:13.000Z (over 1 year ago)
- Last Synced: 2025-04-16T19:50:26.804Z (over 1 year ago)
- Language: Dart
- Size: 2.65 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
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
```