Projects / PropSpaceX

Systems

PropSpaceX

A microservice-based real estate management platform combining Web2 and Web3. Decentralized ownership verification via Ethereum smart contracts, hybrid email/password and wallet auth, plus web and mobile clients over a gRPC service cluster.

Node.jsgRPCReactMongoDBPostgreSQLEthereum

01 Walkthrough

One short demo and two screens from the product.

Screenshot 01
Screenshot 02

02 Stack layers

Clients

React webReact Native mobile

Services

GatewayUserPropertyMediaMailPayments

Data & chain

MongoDBPostgreSQLEthereumRabbitMQ

03 Architecture

REQUESTPOST /v1/properties/verifytracing
verifygRPCgRPCeventsconsumeClientWeb · MobileCLIENTAPI GatewayAuth · limitsSVCUser ServiceJWT · walletSVCProperty ServiceListingsSVCPayment ServiceNestJSSVCRabbitMQEventsQUEUEMongoDBPropertiesDATAPostgreSQLUsersDATAMail ServiceSMTPSVC

Gateway handles auth and rate limits, verifies the user, then routes over gRPC to property and payment services. Mail runs async via RabbitMQ.

  • Web + mobile clients over a gRPC microservice backend
  • Hybrid email/password and wallet authentication
  • Ethereum ownership verification and multi-provider payments

04 Services

API Gateway

Auth, authorization, rate limiting, and request routing across the cluster.

Node.jsTypeScriptExpressgRPC
GitHub →

User Service

Hybrid email/password and wallet login, device trust, and audit logging.

JWTPostgreSQLWallet AuthgRPC
GitHub →

Property Service

Property lifecycle with geospatial search and Ethereum ownership verification.

MongoDBEthereumgRPCWeb3
GitHub →

Media Service

Chunked uploads, Sharp optimization, S3/Cloudinary abstraction.

AWS S3CloudinarySharpgRPC
GitHub →

Mail Service

RabbitMQ jobs with retries, DLQ, and Nodemailer SMTP delivery.

RabbitMQNodemailergRPC
GitHub →

Payment Service

Stripe, Paystack, and Flutterwave with webhooks and reconciliation.

NestJSStripePaystackFlutterwave
GitHub →

05 Engineering challenges

01

Hybrid authentication

One identity model backing email/password and Ethereum wallet signature verification.

02

Service mesh complexity

gRPC routing, rate limiting, and correlation IDs across a multi-service real-estate cluster.

03

On-chain ownership

Smart-contract integration proves ownership on Ethereum and records tokenized transfers.

04

Multi-provider payments

Stripe, Paystack, and Flutterwave behind one API with idempotent webhooks and reconciliation.

06 Trade-offs & decisions

gRPCvsREST everywhere

Binary protocol and streaming make inter-service calls cheaper than JSON over HTTP.

MicroservicesvsMonolith

Independent deploy and scaling for media, payments, and property under different load profiles.

EthereumvsDB-only records

Tokenized real estate needs an ownership record no single operator can rewrite.