~/projects/charly-cares $ cat case-study.md
CASE STUDY — 03

Charly Cares — Babysitting Platform

Shipping features across web and mobile for the largest babysitting platform in the Netherlands — one codebase, every screen.

Cross-Platform Developer Placeholder period
ReactReact Nativereact-native-webTypeScript
01 — The Problem

Two platforms, one team, no room for drift

Parents book sitters on the web; sitters live in the mobile app. Building every feature twice would have doubled cost and guaranteed the platforms drift apart.

Placeholder: describe a specific feature challenge — booking flows, payments, messaging.

bash
$ yarn workspace app run ios && yarn workspace web run dev
building shared/ui … 142 components
platform overrides: 11 (.native.tsx)
web ✓ ios ✓ android ✓
02 — The Approach

Write once with react-native-web, override surgically

The component layer is written in React Native primitives and rendered to the web through react-native-web. Platform-specific behavior lives in small `.native.tsx` / `.web.tsx` overrides instead of forked features.

Placeholder: expand on TypeScript patterns, design-system work, or testing approach.

tsx
 1// BookingCard.tsx — renders on web AND native 2export function BookingCard({ booking }: Props) { 3  return ( 4    <Pressable onPress={() => open(booking)}> 5      <Text style={styles.title}>{booking.sitter.name}</Text> 6      <Availability slots={booking.slots} /> 7    </Pressable> 8  ); 9}10// BookingCard.web.tsx only exists where platforms differ
03 — The Architecture

A shared core with thin platform shells

Business logic, API clients, and UI components live in a shared core; the web and native apps are thin shells that compose it. New features land everywhere at once.

Shared Core (TS) RN Components Web Shell iOS App Android App Platform API
04 — The Results

Features ship to every platform at once

Placeholder: numerous features shipped across web and mobile with feature parity by construction. Add specifics — release cadence, a flagship feature, team impact.

0
shared codebase, web + native
0
platforms from one component tree
0+
features shipped (placeholder)
0K+
users served (placeholder)