Chapter 1: Server State & Offline Resilience
- 1.1: Why server state is the hardest problem in mobile apps
- 1.2: The lifecycle of server state in a mobile app
- 1.3: React Query as the foundation, not the solution
- 1.4: Offline-first is not a feature, it is a constraint system
- 1.5: The offline action queue model
- 1.6: Sync is not uploading, it is reconciliation
- 1.7: React Query persistence is not enough
- 1.8: Race conditions in mobile server state
- 1.9: Designing a resilient server state layer
- 1.10: Common failure patterns in production
- 1.11: Design principles to internalize
- Chapter 2 Preview: Failure Modes
Chapter 2: Failure Modes
- 2.1: By the end of this chapter
- 2.2: Why failure classification matters
- 2.3: The six failure classes
- 2.4: Visual overview of failure space
- 2.5: The debugging decision tree
- 2.6: Failure overlap
- 2.7: Building failure intuition
- 2.8: Practical example
- 2.9: What this unlocks
- 2.10: What comes next
- Next chapter preview
Chapter 3: Sync Engines
- 3.1: By the end of this chapter
- 3.2: Why sync engines exist
- 3.3: Core architecture of a sync engine
- 3.4: Local database choices
- 3.5: The sync loop
- 3.6: Sync strategies
- 3.7: Conflict resolution
- 3.8: Offline queue
- 3.9: Optimistic updates
- 3.10: Failure handling inside sync
- 3.11: Where this fits in your architecture
- 3.12: A minimal mental model
- 3.13: Common mistakes
- 3.14: Closing perspective
- 3.15: Next chapter preview
Chapter 4: Performance Measurement Framework
- 4.1: By the end of this chapter
- 4.2: What performance actually means in React Native
- 4.3: Core performance metrics and budgets
- 4.4: The performance measurement system
- 4.5: Profiling workflow in practice
- 4.6: Performance instrumentation model
- 4.7: Common performance failure patterns
- 4.8: Performance budgets as CI rules
- 4.9: Mental model summary
- 4.10: Chapter 5 preview
Chapter 5: Advanced Performance Techniques
- 5.1: From measurement to engineering decisions
- 5.2: Mental model of performance in React Native
- 5.3: Hermes engine and JavaScript execution efficiency
- 5.4: Image pipeline optimization at scale
- 5.5: FlatList and large dataset rendering
- 5.6: Bundle splitting and JavaScript delivery
- 5.7: React rendering tradeoffs and over-optimization
- 5.8: Advanced animation and gesture performance
- 5.9: Performance design checklist
- 5.10: Chapter summary
- Next chapter preview
Chapter 6: Observability as a First-Class System
- 6.1: Why observability becomes mandatory in production apps
- 6.2: The three pillars of observability
- 6.3: Crash reporting as the baseline system
- 6.4: Structured logging instead of console logs
- 6.5: Correlation IDs and request tracing
- 6.6: Performance observability
- 6.7: SLO-driven observability
- 6.8: Observability architecture in a React Native app
- 6.9: Common failure modes in observability systems
- 6.10: Design checklist for production observability
- Chapter 6 Summary
- Next Chapter Preview: Chapter 7: CI/CD and Safe Deployment
Chapter 7: CI/CD & Safe Deployment
- 7.1: By the end of this chapter
- 7.2: The role of CI/CD in mobile systems
- 7.3: High-level pipeline architecture
- 7.4: Build validation and quality gates
- 7.5: Build system and artifact generation
- 7.6: E2E testing strategy
- 7.7: Deployment strategies
- 7.8: Rollback strategies
- 7.9: Safe deployment patterns
- 7.10: CI/CD failure modes
- 7.11: Engineering discipline in deployment
- 7.12: Chapter summary
- 7.13: Next chapter preview
Chapter 8: Security & Hardening
- 8.1: Why security in React Native is not optional
- 8.2: Threat model for React Native applications
- 8.3: Secure storage and data handling
- 8.4: Authentication and session lifecycle
- 8.5: Network security and API hardening
- 8.6: JavaScript bundle protection and code integrity
- 8.7: Dependency and supply chain security
- 8.8: Logging, observability, and sensitive data leakage
- 8.9: Runtime hardening and device-level considerations
- 8.10: Security checklist for production readiness
- Chapter conclusion
- Next chapter preview: Chapter 9: Scaling Teams and Architecture Governance
Chapter 9: Scaling Teams & Architecture Governance
- 9.1: By the end of this chapter
- 9.2: The problem of scale
- 9.3: Architecture Decision Records as the source of truth
- 9.4: Enforcing boundaries with code, not meetings
- 9.5: Monorepo strategy and feature isolation
- 9.6: API contracts as architectural boundaries
- 9.7: CI enforced architecture rules
- 9.8: Versioning and gradual evolution
- 9.9: Architecture reviews as a scaling mechanism
- 9.10: Leadership model for large React Native systems
- Chapter summary
- Next chapter preview: Chapter 10 Mobile System Design Capstone
Chapter 10: Mobile System Design
- 10.1: Designing Mobile Systems That Survive Scale
- 10.2: Core System Patterns in Mobile Architecture
- 10.3: Offline-First as a System Property
- 10.4: Real-Time Systems in Mobile
- 10.5: Modular Mobile System Design
- 10.6: System-Level Failure Thinking
- 10.7: Capstone System Design Patterns
- 10.8: System Design Principles Summary
- 10.9: Final Capstone Reflection
- Next Chapter Preview
Chapter 11: Senior Capstone Projects
- 11.1: Purpose of the capstone layer
- 11.2: Capstone Project 1 - Production Grade Chat System
- 11.3: Capstone Project 2 - Multi Service Super App
- 11.4: Summary of capstone intent
- Closing thoughts