Career Curve - MLB Prospect Analytics App
Core Concept & Inspiration: Career Curve was inspired by the growing importance of data analytics in baseball scouting and player development. The name "Career Curve" is a clever play on baseball terminology (curveball) while representing a player's career trajectory. The app aims to modernize how baseball prospects are evaluated by providing:
- Advanced statistical analysis
- Career probability predictions
- Player comparisons
- Team-by-team prospect tracking
Key Features:
**Prospect Tracking
- Comprehensive player profiles
- Position-specific statistics
- Performance metrics (batting/pitching)
- Career probability predictions
- Peak WAR projections
- MLB debut timeline predictions
- Similar player comparisons
Team Analysis
- Division-based organization
- Team-specific prospect pools
- Organizational depth charts
- Prospect rankings by team
- Division-wide comparisons
Analytics Dashboard
- Interactive charts and graphs
- Success probability distribution
- WAR projections
- Position distribution analysis
- Timeline visualization
- Key performance metrics
User Experience
- Dark/Light mode support
- Customizable font sizes
- Profile management
- Smooth animations
- Intuitive navigation
Technical Implementation:
Architecture
- MVVM (Model-View-ViewModel) design pattern
- SwiftUI for modern UI development
- Combine framework for reactive updates
- Clean separation of concerns
Data Models
- Player (Core data model) - Team (Team information) - Division (League structure) - Stats (Performance metrics) - ProjectedStats (Predictions)Key Components
- Custom Theme system for consistent styling
- Reusable UI components
- Chart implementations
- Animation systems
- Data persistence
Development Challenges & Solutions:
Data Structure Complexity
- Challenge: Managing complex relationships between players, teams, and statistics
- Solution: Implemented clear model hierarchies and type-safe relationships
State Management
- Challenge: Keeping UI in sync with data updates
- Solution: Used @StateObject and @Published for reactive updates
Performance Optimization
- Challenge: Smooth handling of large datasets
- Solution: Implemented lazy loading and efficient list rendering
Dark Mode Implementation
- Challenge: Maintaining visual hierarchy in both modes
- Solution: Created a sophisticated theme system with dynamic colors
Animation Smoothness
- Challenge: Complex transitions and loading states
- Solution: Custom animation timing and sequencing
Project Structure:
Career Curve/
├── Models/
│ ├── Player.swift
│ ├── Team.swift
│ └── Stats models
├── Views/
│ ├── ProspectViews
│ ├── TeamViews
│ ├── AnalyticsViews
│ └── SettingsViews
├── ViewModels/
│ └── ProspectViewModel.swift
├── Utilities/
│ └── Theme.swift
└── Resources/
└── Assets.xcassets
Technical Features:
Custom UI Components
- StatCard for metrics display
- ProbabilityRing for visual stats
- Custom charts and graphs
Theme System
- Dynamic color adaptation
- Custom color sets for different modes
- Consistent visual language
Data Visualization
- Interactive charts
- Custom animations
- Real-time updates
Future Enhancements:
- Machine learning for improved predictions
- Social features for scout collaboration
- Advanced filtering and search capabilities
- Custom notification system for prospect updates
Development Process:
- Initial concept and wireframing
- Data model design
- UI implementation
- Theme system development
- Animation and interaction design
- Testing and refinement
The app represents a modern approach to baseball prospect analysis, combining traditional scouting metrics with advanced analytics in an accessible, user-friendly interface. It's designed to serve both professional scouts and baseball enthusiasts who want to track the next generation of MLB talent.

Log in or sign up for Devpost to join the conversation.