Life Help
Life Help is a personal project connecting people with wellness advisors for live coaching, community support, and one-on-one guidance.
The core experience is a live 1:1 video session — users browse advisor profiles, book a session, and join a private Agora RTC room. Between sessions, they can message their advisor in a persistent chat powered by Socket.io.
The business model required building a full marketplace infrastructure: advisors are onboarded through Stripe Connect, complete identity verification via Stripe Identity, and receive automatic payouts after each session. A custom microservices split keeps the payment logic isolated from the main API — Stripe webhooks hit dedicated services that can be updated, scaled, or replaced independently.
The four-microservice architecture behind Traefik was a deliberate choice for isolation: a bug in the payout service cannot take down chat or video, and each service can be deployed independently without a full system restart.
Highlights
- ✓ Live 1:1 video sessions between users and wellness advisors via Agora RTC
- ✓ Real-time chat with Socket.io — persistent conversation history
- ✓ Stripe Connect advisor payouts with full KYC identity verification
- ✓ Microservices architecture: 4 independent NestJS services behind Traefik
- ✓ Multi-flavor CI/CD pipeline shipping to iOS and Android simultaneously
Technical details
Architecture
Monorepo with a Flutter mobile app and four NestJS microservices (main API, Stripe Identity MS, Stripe Connect payout MS, deep-link MS) orchestrated by Docker Compose + Traefik v3. Services communicate over an internal Docker bridge network. Deployed on Hetzner.
**Infrastructure:** Docker Compose + Traefik v3.6.9. All services share a `cosmic-net` bridge network. TLS via Let's Encrypt (acme.json). Production on Hetzner; local dev mirrors prod architecture via `*.localhost` domains.
**Mobile:** Flutter 3 with BLoC/Cubit state management. Agora RTC for video, `socket_io_client` for chat. Firebase suite: Auth, FCM push, Crashlytics, Analytics.
**Payments:** Stripe Connect for advisor onboarding and payouts. Stripe Identity for user KYC — webhooks handled by the identity microservice.