Charly Cares — Babysitting Platform
Shipping features across web and mobile for the largest babysitting platform in the Netherlands — one codebase, every screen.
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.
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.
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 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.
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.