
INNOSTIM — EaseFlow
INNOSTIM's EaseFlow is a non-invasive, Bluetooth-enabled electrical-stimulation therapy device built for at-home use under a clinician-guided program. The product is more than the patch: it is a connected ecosystem where patients run and track their treatment from their phone, while clinicians and operators manage devices, content, and outcomes from a web portal — all backed by a single source of truth.
As founding full-stack product engineer, I designed and built the three software surfaces and the API that ties them together: a patient-facing WeChat Mini Program, a NestJS backend, and a Next.js management portal.
System Architecture
A three-tier architecture keeps the patient app, clinician portal, and device all synchronized through one authenticated API.
- Patient App (WeChat Mini Program): Skyline-rendered, tab-based client that pairs with the EaseFlow device over Bluetooth LE and drives the treatment experience.
- Backend API (NestJS + Fastify): Centralized business logic with Prisma ORM over PostgreSQL, WeChat OAuth + JWT authentication, scheduled tasks, and OpenAPI docs.
- Management Portal (Next.js + React): Ant Design Pro dashboard with TanStack Query and Zustand for device tracking, content management, and analytics.
- Data Layer (PostgreSQL): Unified store for users, sessions, devices, diaries, and knowledge-base content.

Key Features
The patient experience centers on safe, guided treatment and effortless health tracking, while the portal gives operators control over the fleet and content.
- Guided Treatment Sessions: Step-by-step flows for patch placement and intensity adjustment, with safety-bounded controls, an emergency stop, and automatic pause if the Bluetooth connection drops.
- Bluetooth Device Management: Device discovery, pairing, status monitoring, and prescription-based authorization between the app and the EaseFlow patch.
- Health Diary: Calendar-based logging with month, week, and day views plus a data view for reviewing trends over time.
- Smart Reminders: Treatment and medication notifications delivered through WeChat subscription messages.
- Knowledge Base: An in-app library of educational articles with favorites and sharing.
- In-App Store: E-commerce for patches and accessories, from product detail through cart, checkout, and order history.






Engineering Notes
The backend exposes a clean, documented REST surface (OpenAPI/Swagger) with module boundaries per domain — auth, users, treatment sessions, diary events, reminders, devices, and articles. Authentication combines WeChat OAuth with JWT, and Prisma's typed queries guard the data layer. The Mini Program uses subpackage code-splitting and an offline-first approach so that treatment can continue even on a flaky connection, syncing once the device is back online.