An intelligent cross-platform housing rental and digital contract platform.
HomeSpace connects tenants and property providers through Web and Mobile applications while supporting AI-assisted property discovery, electronic rental contracts, and blockchain-based contract integrity verification.
HomeSpace is currently in the foundation and system design phase.
The team is establishing:
- Product scope and business requirements
- Domain boundaries and microservice responsibilities
- Repository conventions
- Development environments
- Infrastructure configurations
- Authentication and authorization models
- API and event contracts
- Mock data and testing strategies
The repositories may currently contain only initial scaffolding, configuration files, documentation, or experimental implementations. Features described in this organization represent the target architecture and are not necessarily completed.
| Area | Current status |
|---|---|
| Product requirements | In progress |
| System architecture | In progress |
| Repository initialization | In progress |
| Local infrastructure | Planned |
| Backend implementation | Not started |
| Web implementation | Not started |
| Mobile implementation | Not started |
| AI integration | Planned |
| Blockchain integration | Planned |
| Production deployment | Not available |
HomeSpace aims to provide a unified rental platform where users can:
- Discover and compare rental properties
- Publish and manage property listings
- Schedule property viewings
- Submit and manage rental requests
- Communicate with other transaction participants
- Create and manage electronic rental contracts
- Verify contract integrity through blockchain records
- Receive AI-assisted property recommendations
- Make rental-related payments through supported payment providers
A single customer account may participate in different business contexts.
For example, the same user may:
- Publish a property as a landlord
- Rent another property as a tenant
- Act as the lessor in one contract
- Act as the lessee in another contract
LANDLORD, TENANT, LESSOR, and LESSEE are contextual business roles,
not permanent account types.
| Application | Repository | Description |
|---|---|---|
| Customer Web | homespace-customer-web |
Web application for tenants and property providers |
| Mobile Application | homespace-mobile-app |
Cross-platform mobile application |
| Admin Portal | homespace-admin-portal |
Internal administration and moderation portal |
The Web and Mobile applications share the same business platform through the HomeSpace API Gateway.
HomeSpace follows a domain-oriented microservices architecture.
Client applications communicate with backend services through the API Gateway. Services use synchronous REST APIs for request-response operations and asynchronous domain events for workflows that do not require an immediate response.
| Service | Repository | Primary responsibility |
|---|---|---|
| API Gateway | homespace-api-gateway |
Routing, security enforcement, rate limiting and resilience |
| User Service | homespace-user-service |
User profiles, account status, authorization metadata and eKYC status |
| Property Service | homespace-property-service |
Property listings, categories, facilities, media references and search |
| Booking Service | homespace-booking-service |
Viewing schedules, rental requests and booking lifecycle |
| Chat Service | homespace-chat-service |
Real-time conversations, messages and WebSocket communication |
| Contract Service | homespace-contract-service |
Electronic contract lifecycle, signatures and contract verification |
| Payment Service | homespace-payment-service |
Deposits, rental payments, transactions and payment-provider integration |
| Notification Service | homespace-notification-service |
In-app, email and push notifications |
| AI Service | homespace-ai-service |
AI assistant, semantic retrieval, image analysis and price estimation |
| Audit Service | homespace-audit-service |
Audit trails and records of important system activities |
| Repository | Responsibility |
|---|---|
homespace-smart-contracts |
Solidity smart contracts, deployment scripts and contract tests |
homespace-infrastructure |
Docker Compose, databases, Kafka, Redis, Keycloak and supporting services |
homespace-observability |
Prometheus, Grafana, dashboards and alert configurations |
homespace-engineering-docs |
Architecture, ADRs, API conventions, event definitions and runbooks |
homespace-spring-boot-starter |
Shared technical configuration for Java services |
.github |
Organization profile, templates and shared GitHub configuration |
HomeSpace separates system-level authorization from transaction-level business roles.
Examples of system-level roles include:
CUSTOMERADMINMODERATORSUPPORT
System roles control access to platform-level capabilities.
Business roles are inferred from the related resource:
Property landlord:
property.landlordId == currentUserId
Rental request tenant:
rentalRequest.tenantId == currentUserId
Rental request landlord:
rentalRequest.landlordId == currentUserId
Contract lessor:
contract.lessorId == currentUserId
Contract lessee:
contract.lesseeId == currentUserId