A blockchain-based property marketplace platform that allows users to rent properties or invest in property tokens.
- Browse available properties in a beautiful grid layout
- Filter properties by city
- View property details including images, descriptions, and pricing
- Rent: Monthly rental with flexible duration (1, 3, 6, or 12 months)
- Invest: Purchase property tokens for fractional ownership
- Dark, space-inspired UI with gradient backgrounds
- Purple and teal color scheme
- Modern, futuristic design elements
- Firebase Authentication integration
- Secure login/signup flow
- User session management
- Flutter - Cross-platform mobile/web development
- Firebase Auth - User authentication
- HTTP - API communication
- Cached Network Image - Optimized image loading
- Node.js - Server runtime
- Express.js - Web framework
- Firebase Firestore - Database
- Hedera Hashgraph - Blockchain integration
- USDC - Payment processing
PenthouseProtocol/
├── frontend/ # Flutter application
│ ├── lib/
│ │ └── main.dart # Main application code
│ └── pubspec.yaml # Dependencies
├── backend/ # Node.js server
│ ├── routes/
│ │ └── properties.js # Property API endpoints
│ ├── services/
│ │ ├── firebaseService.js
│ │ └── hederaService.js
│ └── server.js # Server entry point
└── README.md
- Flutter SDK
- Node.js
- Firebase project setup
- Hedera testnet account
- Navigate to backend directory
- Install dependencies:
npm install - Set up environment variables for Firebase and Hedera
- Start server:
npm start
- Navigate to frontend directory
- Install dependencies:
flutter pub get - Run the app:
flutter run
GET /api/properties- Fetch all propertiesPOST /api/properties- Create new propertyPOST /api/properties/:id/rent- Rent a propertyPOST /api/properties/:id/invest- Invest in property tokens
{
"id": "property_id",
"name": "Property Name",
"description": "Property description",
"imageUrl": "https://example.com/image.jpg",
"rentalPrice": 2500.00,
"pricePerToken": 100.00,
"totalTokenSupply": 1000,
"status": "available",
"symbol": "PROP"
}- Welcome message with user's email
- City filter dropdown
- Property grid with cards showing:
- Property image
- Name and description
- Rent and Invest buttons
- Shows monthly rental price
- Duration selection (1, 3, 6, 12 months)
- Calculates total price
- Proceed to rent functionality
- Shows price per token
- Displays available tokens
- Token quantity input
- Calculates total investment
- Proceed to invest functionality
The app features an interstellar theme with:
- Deep space background colors (#0F0F23, #1A1A2E)
- Purple (#6C5CE7) and teal (#00CEC9) accent colors
- Gradient backgrounds and shadows
- Modern card-based layout
- Smooth animations and transitions
- Real-time property updates
- Advanced filtering options
- Property search functionality
- User portfolio tracking
- Payment integration
- Property management tools
- Mobile app optimization
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
This project is licensed under the MIT License.