Files
gps-speedo/CLAUDE.md
T
Mikkeli Matlock b0125dff6b Add project memory and future enhancement roadmap
- Document completed v1.0 features and architecture decisions
- Outline future improvements: orientation support, UI redesign, interactive controls
- Establish development patterns and testing requirements for future sessions
- Ready for future development phases

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-20 23:44:24 +09:00

2.8 KiB

GPS Speedometer - Claude Code Project Memory

Project Overview

A customizable Flutter GPS speedometer app targeting Android devices, emphasizing modularity and user customization.

Current Status: v1.0 Complete 

Fully functional GPS speedometer with all core requirements implemented.

Architecture Implemented

  • State Management: Provider pattern
  • Structure: Modular widgets, providers, screens separation
  • Persistence: SharedPreferences for settings
  • GPS Service: Geolocator with permission handling
  • UI Patterns: Consumer widgets, responsive design

Core Features Completed

  •  Real-time GPS speed tracking with accuracy monitoring
  •  Customizable speed units (km/h � mph) with persistent storage
  •  Dual display styles: Digital speedometer + Analog gauge
  •  Dark/Light theme support with system integration
  •  Optional metrics panel: coordinates, distance, trip time, accuracy
  •  Trip reset functionality and comprehensive error handling
  •  Portrait orientation lock for mobile-first experience
  •  Android permissions configuration (FINE_LOCATION, COARSE_LOCATION)

Technical Stack

Dependencies: geolocator, permission_handler, provider, shared_preferences, flutter_material_color_picker
Platforms: Android (primary), iOS support included but untested
Architecture: Provider + Consumer pattern for reactive state management
Permissions: Location services with graceful degradation

TODO - Future Improvements =

UI/UX Enhancements

  • Portrait/Landscape Support: Automatic orientation detection (ignore system auto-rotate toggle)
  • Interface Rearrangement: User-defined layout customization
  • Interactive Gauge: Click gauge face to switch digital/analog modes
  • Settings Menu Refurbishment: More intuitive interactions and better UX

Technical Improvements

  • Font Embedding: Consider custom fonts for better typography
  • Feature Removal: Identify and remove unused/redundant functionalities
  • Code Cleanup: Refactor deprecated warnings, optimize performance

Design Philosophy

  • Preserve modularity for easy future extensions
  • Prioritize user customization options
  • Maintain clean, extensible architecture
  • Focus on mobile-first, gesture-friendly interactions

Development Notes

  • Testing: Requires physical Android device for GPS functionality
  • Build System: Standard Flutter build process, first builds take time for Android SDK setup
  • Memory: Project uses automatic Claude Code memory - this file for major decisions only
  • Git: Active repository at https://github.com/mikkelimatlock/gps_speedo

Code Patterns to Maintain

  • Provider pattern for state management
  • Separate widgets for reusability
  • Settings persistence with SharedPreferences
  • Graceful error handling for GPS/permissions
  • Responsive design principles