Week 2 Progress: User Preferences and Activity Logging
AuthorCycle My Way Team
Publish Date
CategoryWeekly Progress
#progress#development#user-preferences
Week 2 brought significant improvements to the personalization features of Cycle My Way.
User Preferences System
We've built a comprehensive system for users to tag streets:
- Street Tagging: Users can now mark streets as "loved" or "avoided" directly on the map
- Preference Storage: Preferences are stored and used to influence route calculations
- Visual Feedback: The map now shows color-coded indicators for user preferences
Activity Logging
The activity logging system is now functional:
- Strava Integration: Connected with Strava API to import cycling activities
- Activity Storage: Activities are stored with full GPS tracks and metadata
- Route Matching: System can match logged activities to existing routes in our database
Route Discovery Improvements
We've enhanced the route discovery algorithm:
- Preference Weighting: Routes now prioritize streets users have marked as "loved"
- Avoidance System: Routes actively avoid streets marked as "avoided" when possible
- Freshness Factor: The system considers how recently a user has visited certain areas
Performance Optimizations
This week also included important performance work:
- Database Indexing: Added indexes to improve query performance
- Caching Layer: Implemented caching for frequently accessed route data
- API Response Times: Reduced average API response time by 40%
What's Next
For week 3, we're planning:
- Building the route simulation system with physics calculations
- Implementing time-based routing (quick routes vs. scenic routes)
- Starting work on the mobile-responsive UI
The platform is really starting to take shape!