How danielxjones/ccps-ltd works
Check-In App is a private, mobile-first wellbeing service: a user registers or signs in, submits a three-state check-in, and shares it with explicitly connected people; the app also supports communities, alerts, and subscriptions. The React client reaches the Express REST API through its query client; routes own domain operations, storage persists them in PostgreSQL, and notification scheduling handles reminders and missed check-ins. The README documents additional admin, organisation, privacy, and billing capabilities. Unsampled screens and route internals are represented at their exact paths; links are limited to relationships visible in excerpts or README statements.
Main entry points: routes.ts Express API · App.tsx React app and routes · notifications.ts Alert delivery rules · storage.ts Domain data access
Components 26
Client experience
- React app and routes
client/src/App.tsx - API query client
client/src/lib/queryClient.ts - Auth and account state
client/src/lib/auth-context.tsx - Check-in screens
client/src/pages/check-in.tsx - Connections and communities
client/src/pages/communities.tsx - Admin console
client/src/pages/admin.tsx - Plans and purchase UI
client/src/pages/choose-plan.tsx
API and domain
- Express API
server/routes.ts - Token authentication
server/auth.ts - Admin data export
server/export.ts
Notifications and billing
- Reminder scheduler
server/scheduler.ts - Alert delivery rules
server/notifications.ts - SMS provider adapter
server/sms.ts - UK time handling
server/time.ts - RevenueCat purchases
server/revenuecat.ts - Legacy Stripe billing
server/stripe.ts
Persistence and contracts
- Domain data access
server/storage.ts - Shared schema
shared/schema.ts - PostgreSQL
Native apps
- Capacitor native shell
client/src/lib/capacitor.ts - iOS host
ios/App/App/AppDelegate.swift - Android host
android/app/src/main/java/com/ccwellbeing/app/MainActivity.java
Other components
- User
- The SMS Works
- RevenueCat service
- Stripe service
Connections 32
- User → React app and routes: uses
README.md - React app and routes → Auth and account state: gates routes
client/src/App.tsx - React app and routes → API query client: provides query client
client/src/App.tsx - React app and routes → Check-in screens: routes to
- React app and routes → Connections and communities: routes to
- React app and routes → Admin console: routes to
- React app and routes → Plans and purchase UI: routes to
- API query client → Express API: HTTP JSON
README.md - Auth and account state → API query client: uses
client/src/lib/auth-context.tsx - Express API → Token authentication: auth middleware
server/index.ts - Express API → Domain data access: reads and writes
server/routes.ts - Domain data access → PostgreSQL: queries
- Domain data access → Shared schema: uses tables
- Express API → Shared schema: validates domain data
README.md - Express API → Alert delivery rules: triggers alerts
server/routes.ts - Express API → SMS provider adapter: sends SMS
server/routes.ts - Alert delivery rules → Domain data access: reads and records
server/notifications.ts - Alert delivery rules → SMS provider adapter: delivers messages
server/notifications.ts - Alert delivery rules → UK time handling: resolves UK dates
server/notifications.ts - SMS provider adapter → The SMS Works: sends messages
README.md - Reminder scheduler → Alert delivery rules: runs reminders
server/scheduler.ts - Reminder scheduler → Domain data access: checks jobs
server/scheduler.ts - Reminder scheduler → UK time handling: checks local time
server/scheduler.ts - Express API → Reminder scheduler: starts or triggers
server/index.ts - Express API → Admin data export: builds CSV export
server/routes.ts - Express API → RevenueCat purchases: handles purchases
server/routes.ts - RevenueCat purchases → RevenueCat service: purchase integration
README.md - Express API → Legacy Stripe billing: legacy billing
server/routes.ts - Legacy Stripe billing → Stripe service: checkout integration
README.md - React app and routes → Capacitor native shell: initializes
client/src/main.tsx - iOS host → Capacitor native shell: hosts bundle
README.md - Android host → Capacitor native shell: hosts bundle
README.md