πŸ“‹ Changelog

Track all updates, improvements, and fixes to the States I'd Live In Map application.

v2.10.02025-11-09

New Europe Cities Map - 74 Major European Cities

πŸ—ΊοΈ Major New Map

  • β€’Brand new Europe Cities map featuring 74 major cities across 35+ European countries
  • β€’Complete geographic diversity from Nordic capitals to Mediterranean cities
  • β€’Every European country now has at least one major city represented
  • β€’Free map accessible to all users - explore Europe's most iconic urban destinations
  • β€’Beautiful map projection optimized for European geography

πŸ›οΈ Featured Cities

  • β€’Western Europe: Paris, London, Berlin, Amsterdam, Brussels, Vienna, Zurich, and more
  • β€’Southern Europe: Rome, Madrid, Barcelona, Athens, Lisbon, Milan, Valencia, Seville
  • β€’Eastern Europe: Prague, Warsaw, Budapest, Bucharest, Sofia, Zagreb, Belgrade
  • β€’Nordic Region: Stockholm, Copenhagen, Oslo, Helsinki, Reykjavik
  • β€’Enhanced coverage: Multiple cities for Spain, France, Italy, and Germany

🎯 User Experience Improvements

  • β€’Fixed clustering issues - cities are properly spaced for easy clicking
  • β€’Optimized city selection to prevent overlapping markers
  • β€’Added to statistics page for viewing Europe Cities voting data
  • β€’Integrated into regional overview system with related map suggestions
  • β€’Full SEO optimization with dedicated landing page at /europe-cities/living-preferences

πŸ”§ Technical Implementation

  • β€’Comprehensive GeoJSON data with accurate coordinates for all 74 cities
  • β€’Background country boundaries for geographic context
  • β€’Integrated into all core systems: map selector, stats, regional overview
  • β€’URL short code 'ec' for easy sharing: whereidlive.com/?m=ec
  • β€’Sitemap entries added for search engine discovery
v2.9.02025-11-06

World Cities Map Now Free & Bug Fixes

🎁 World Cities Now Free

  • β€’World Cities map is now completely FREE for all users!
  • β€’Previously a premium map ($0.99), now accessible to everyone without payment
  • β€’All 15 users who purchased World Cities received Lord of the Rings map for FREE as compensation
  • β€’Migration completed automatically - previous purchasers now have both maps
  • β€’No action needed - compensation was applied to all eligible accounts

πŸ› Bug Fixes

  • β€’Fixed Portland city name collision - Portland, OR and Portland, ME are now properly distinguished
  • β€’Clicking Portland, ME no longer also selects Portland, OR
  • β€’Added state suffixes to disambiguate cities with identical names
  • β€’Improved city identification across all USA Cities map interactions

πŸ”§ Technical

  • β€’Created migration scripts to compensate World Cities purchasers with LOTR access
  • β€’Updated map pricing configuration to remove World Cities from premium tier
  • β€’Enhanced GeoJSON data with unique identifiers for duplicate city names
  • β€’Added verification scripts to ensure all migrations completed successfully
v2.8.02025-11-03

Smart Recommendations Engine with Collaborative Filtering

🎯 Major New Feature - Personalized Recommendations

  • β€’Smart recommendation system powered by collaborative filtering algorithm
  • β€’Finds users with similar voting patterns and suggests states they love
  • β€’Dedicated /recommendations page with beautiful, engaging UI
  • β€’Shows personalized recommendations across all regions (USA, Europe, World, etc.)
  • β€’Separate recommendations for 'Places to Live' and 'Places to Visit' modes
  • β€’Real-time recommendation generation based on user preferences and community data

🧠 Algorithm V2 - Intelligent Matching

  • β€’Focus on strong preferences: Only matches on 4-5 star (love) or 1-2 star (hate) votes
  • β€’Ignores neutral 3-star votes for better signal quality and more accurate matches
  • β€’Alignment scoring system: +3 points for shared loves, +2 for shared hates
  • β€’Recency weighting: Recent votes get +20% weight (30 days) or +10% (90 days)
  • β€’Requires 3+ states in common with similar users for meaningful recommendations
  • β€’Sophisticated similarity algorithm considers both agreement and preference intensity

⚑ Performance Optimization

  • β€’Database query time reduced from 40-80 seconds to 2-5 seconds (15-30x faster!)
  • β€’3 new composite database indexes for optimal query performance
  • β€’idx_votes_similarity_lookup: Optimizes finding similar users
  • β€’idx_votes_user_region_mode_state: Optimizes user vote lookups
  • β€’idx_votes_preference_lookup: Optimizes recommendation queries
  • β€’FORCE INDEX hints ensure MySQL uses optimal query plans

🎨 Beautiful User Experience

  • β€’5 distinct UI states: Hero page, need votes, no similar users, great picks, new recommendations
  • β€’Sticky header with prominent 'Vote on More States' button for easy navigation
  • β€’Color-coded cards: Yellow for needs votes, Amber for no matches, Green for validated picks, Purple for new recommendations
  • β€’Animated gradients and smooth transitions throughout the page
  • β€’Mobile-responsive design with optimized layouts for all screen sizes
  • β€’Clear messaging and helpful guidance at every stage of the journey

πŸ’¬ Engaging, Varied Content

  • β€’15+ different message variations to avoid repetitive text
  • β€’Personality-driven language: 'users like you', 'your tribe', 'kindred spirits'
  • β€’Context-aware messages based on rating levels (4.7+, 4.5-4.7, 4.0-4.5)
  • β€’Strategic emoji use for visual interest and emotional connection
  • β€’Validation messages celebrate user choices with affirming language
  • β€’Messages automatically cycle to ensure variety in every list

🎁 User Benefits

  • β€’Discover states you might love based on people with similar taste
  • β€’Validation when similar users also love your picks ('Great Picks' feature)
  • β€’Clear explanations when recommendations aren't available yet
  • β€’Social proof: See how many similar users recommend each state
  • β€’Star ratings show consensus strength (4.71/5, 4.68/5, etc.)
  • β€’Easy navigation between recommendations and voting with prominent CTAs
v2.7.02025-10-31

Where I've Visited Mode & Travel Tracking

✈️ Major New Feature

  • β€’Added 'Where I've Visited' mode alongside existing 'Where I'd Live' mode
  • β€’Independent tracking for travel history vs. living preferences
  • β€’Three-level visit status: Never Visited, Visited, Lived There
  • β€’Mode switcher allows instant toggling between living and visited preferences
  • β€’Separate vote storage for each mode - mark places you've visited AND where you'd live

🎨 Visual Improvements

  • β€’Gray-to-blue color gradient for visited mode (vs. red-to-green for living mode)
  • β€’Dynamic legend that updates based on current mode
  • β€’Contextual labels: 'Never Visited' to 'Lived There' for visited mode
  • β€’Stats page map colors now match selected mode
  • β€’Mode-specific color schemes throughout the entire application

πŸ“Š Data & Analytics

  • β€’Statistics page now supports both living and visited modes
  • β€’Separate rankings and vote counts for each mode
  • β€’Real-time mode switching on stats page with instant data updates
  • β€’Database optimized to store and retrieve mode-specific preferences
  • β€’API endpoints enhanced to handle dual-mode vote tracking

πŸ”§ Technical Enhancements

  • β€’Mode-aware preference filtering across all map types
  • β€’Database schema supports vote_mode field ('living' or 'visited')
  • β€’Optimized preference distribution mapping for 3-level visited system
  • β€’Backward compatible with existing living preference data
  • β€’Enhanced color system supports both gradient types across all visualizations

🌍 Use Cases Unlocked

  • β€’Travel planning: Track where you've been and where you want to go
  • β€’Bucket list management: Mark dream destinations separately from visited places
  • β€’Digital travel journal: Keep a visual record of your travel history
  • β€’Dual purpose tool: Living preferences AND travel tracking in one app
  • β€’Share both your travel experience and relocation preferences
v2.6.02025-10-11

Lord of the Rings Middle-earth Map & Premium Features

πŸ§™ New Fantasy Map

  • β€’Added complete Middle-earth map with all 24 iconic regions from J.R.R. Tolkien's world
  • β€’Includes regions from the Shire to Mordor, Gondor to Rohan, and everything in between
  • β€’Custom fantasy coordinate system with proper scaling and projection handling
  • β€’Interactive voting system for Middle-earth regions with real-time statistics
  • β€’Dedicated regional overview page with SEO optimization and social sharing

πŸ’° Premium Features

  • β€’Introduced premium map system with Stripe payment integration
  • β€’Lord of the Rings map available as premium content for $1.99
  • β€’Dynamic pricing system that automatically updates across all UI components
  • β€’Secure payment processing with user authentication and purchase tracking
  • β€’Premium badge indicators in map selector with real-time pricing

🎨 Technical Enhancements

  • β€’Added CSS transform support for map flipping and orientation control
  • β€’Implemented custom GeoJSON handling for fantasy coordinate systems
  • β€’Enhanced map projection system with geoIdentity support for non-geographic data
  • β€’Improved paywall modal with dynamic pricing and better error handling
  • β€’Added comprehensive documentation for adding new maps to the platform

πŸ”§ Infrastructure

  • β€’Extended database schema to support map purchases and user access control
  • β€’Added API endpoints for payment processing and access verification
  • β€’Implemented purchase service with map pricing and access management
  • β€’Enhanced sitemap with new fantasy map routes for better SEO
  • β€’Added regional overview template support for fantasy worlds
v2.5.02025-10-07

Accessibility & Social Media Improvements

β™Ώ Accessibility

  • β€’Added color blind friendly mode toggle for statistics maps
  • β€’Implemented blue-to-yellow gradient as accessible alternative to red-green
  • β€’Toggle allows users to switch between standard and accessible color schemes
  • β€’Color blind mode works for all types of color blindness (deuteranopia, protanopia, tritanopia)
  • β€’Enhanced map legends to dynamically update based on selected color mode

🎨 Design

  • β€’Redesigned OpenGraph social share image with modern gradient background
  • β€’Added visual map preview showing interactive functionality
  • β€’Included social proof badge (10M+ votes) for credibility
  • β€’Enhanced social media presence with professional, eye-catching design
  • β€’Created automated image generation tools for future updates

πŸ”§ Technical

  • β€’Dual color gradient system: standard (red-green) and accessible (blue-yellow)
  • β€’Modular color functions for easy maintenance and updates
  • β€’Created HTML templates and Node.js scripts for OG image generation
  • β€’Added comprehensive documentation for image generation workflow
v2.4.02025-10-04

Sentry Error Monitoring Integration

πŸš€ New

  • β€’Integrated Sentry for comprehensive error monitoring and performance tracking
  • β€’Added error capturing to all API routes with contextual information

πŸ”§ Improved

  • β€’Enhanced error handling in vote submission API with detailed context
  • β€’Added user agent and request context to all error reports
  • β€’Implemented automatic error capturing in React ErrorBoundary
  • β€’Added source map generation for better error stack traces
  • β€’Configured environment-specific error tracking

πŸ“Š Monitoring

  • β€’Error tracking across authentication, voting, and stats APIs
  • β€’Performance monitoring for database operations and API responses
  • β€’Real-time error alerts and performance degradation notifications

πŸ”§ Technical

  • β€’Sentry Vite plugin integration for automated release tracking
  • β€’Error context includes section tags, user agents, and request parameters
  • β€’Distributed tracing configured for localhost and production domains
  • β€’Environment-aware configuration for development vs production
v2.3.02025-09-30

Stats Page Performance Optimization

⚑ Performance

  • β€’Implemented materialized stats table - 50-100x faster stats queries
  • β€’Reduced stats page load time from 3-6+ seconds to <500ms
  • β€’Optimized database queries from scanning 1.2M+ rows to 737 pre-calculated rows
  • β€’Added incremental stats updates on each vote for real-time accuracy

πŸš€ New

  • β€’Added vote_stats table for pre-calculated statistics
  • β€’Created rebuild-stats-table.js script for maintenance and recovery
  • β€’Implemented atomic incremental updates using ON DUPLICATE KEY UPDATE

πŸ”§ Improved

  • β€’Increased stats cache TTL from 5 minutes to 30 minutes
  • β€’Enhanced HTTP cache headers (5 min client, 10 min CDN)
  • β€’Optimized database connection pooling for better concurrency
  • β€’Stats now update automatically with each vote submission

πŸ“Š Technical

  • β€’Database query time reduced from 2-5+ seconds to 50-100ms
  • β€’Stats table indexed by region and state_id for instant lookups
  • β€’Preference distribution pre-calculated and stored (pref_1-5_count)
  • β€’Background rebuild capability maintains data integrity
v2.2.02025-09-29

USA Cities Map & Analytics

πŸš€ New

  • β€’Added Major USA Cities map with 70 cities covering all 50 states
  • β€’Implemented point geometry rendering for city markers
  • β€’Added background map layer support (non-interactive state boundaries)
  • β€’Integrated Google Analytics for traffic source tracking

πŸ”§ Improved

  • β€’Enhanced map component to support both polygon and point geometries
  • β€’Added USA state map as contextual background for city visualization
  • β€’Improved visual hierarchy with cities as interactive markers over non-interactive states
  • β€’Updated stats page to include USA Cities as a selectable region
  • β€’Implemented 5-minute in-memory caching for stats API - dramatically faster page loads
  • β€’Reduced database queries by ~95% with TTL-based cache strategy

πŸ“Š Features

  • β€’70 major cities including NYC, LA, Chicago, Houston, Phoenix, Anchorage, Honolulu, and more
  • β€’Complete coverage of all 50 states with at least one major city per state
  • β€’City preference tracking with same 5-level system (Never to Absolutely)
  • β€’Dedicated city statistics and rankings on stats page
  • β€’Geographic context provided by background state boundaries
v2.1.02025-01-29

Database Migration & Performance Improvements

πŸš€ New

  • β€’Migrated from Google Sheets to MySQL database for better performance
  • β€’Added DigitalOcean managed database integration
  • β€’Implemented proper database connection pooling

πŸ”§ Improved

  • β€’Standardized all TopoJSON map naming formats
  • β€’Fixed cryptic ID codes (like 'CA.QC', 'CH', '124') to use proper region names
  • β€’Increased rate limits: 2000 votes/hour, 500 votes/minute
  • β€’Optimized vote submission with better error handling

πŸ› Fixed

  • β€’Resolved Poland voivodeship names from ALL CAPS to proper case
  • β€’Fixed Europe map showing country codes instead of full country names
  • β€’Eliminated all numeric and cryptic region IDs across all maps
  • β€’Fixed USA map to use local TopoJSON instead of CDN

πŸ—‘οΈ Removed

  • β€’Removed Google Sheets API dependencies
  • β€’Cleaned up old data mapping files (brazilData.ts, mexicoData.ts, etc.)
  • β€’Removed redundant geography ID mapping logic
v2.0.02025-01-15

Map Standardization & UI Improvements

πŸš€ New

  • β€’Added support for 13 different regional maps
  • β€’Implemented comprehensive stats visualization
  • β€’Added preference distribution charts

πŸ”§ Improved

  • β€’Standardized all maps to use consistent 'name' property
  • β€’Enhanced map projections for better visual accuracy
  • β€’Improved mobile responsiveness across all components
v1.5.02024-12-20

Multi-Region Support

πŸš€ New

  • β€’Added World, Europe, Americas, Asia regional maps
  • β€’Implemented country-specific preference tracking
  • β€’Added Brazil, Mexico, Japan, and other country maps
v1.0.02024-11-01

Initial Release

πŸš€ New

  • β€’Interactive US states preference mapping
  • β€’Google Sheets integration for data storage
  • β€’Basic preference selection (Never, Reluctantly, Maybe, Willing, Absolutely)
  • β€’Real-time statistics and visualization