OSM HOT Transport Layer as Default, Geolocation, and Toast Notifications

August 31, 2025 v1.9.2 #feature #ui #frontend #map #geolocation #notifications #osm #hot #toast #responsive

Hello, athletes!

We're excited to announce 1.9.2, bringing significant enhancements to your mapping experience with OSM HOT transport layer, geolocation capabilities, and a modern toast notification system. These features work together to provide a more intuitive and user-friendly route planning experience.

🗺️ OSM HOT Transport Layer Integration

Better route context: We've integrated the OSM HOT (Humanitarian OpenStreetMap) transport layer as the default map layer to provide better context for route planning.

  • Automatic Activation: OSM HOT transport layer is now enabled by default on map load for all new sessions.
  • Transportation Infrastructure: Layer displays roads, railways, highways, and other transportation infrastructure.
  • Urban Planning Support: Provides excellent context for route planning in urban and suburban areas.
  • No User Action Required: Works seamlessly in the background to enhance your mapping experience.

📍 Geolocation Feature

Find your location: Added a GPS button to quickly find and center on your current location with professional-grade accuracy.

  • GPS Location Button: Prominently placed in the hybrid controls section with a blue GPS icon.
  • High Accuracy Positioning: Uses high-accuracy geolocation with proper error handling and fallbacks.
  • Smart Map Centering: Automatically centers the map on your location with optimal zoom level (15).
  • Temporary Location Marker: Shows a temporary marker with popup at your location that auto-removes after 30 seconds.
  • Comprehensive Error Handling: Handles permission denied, position unavailable, and timeout scenarios gracefully.

🍞 Toast Notification System

Modern notifications: Replaced outdated browser alerts with beautiful, modern toast notifications for a professional user experience.

  • Four Notification Types: Success (green), error (red), warning (orange), and info (blue) notifications.
  • Smooth Animations: Elegant slide-in/slide-out animations from the right side of the screen.
  • Auto-Dismiss: Notifications automatically disappear after 4 seconds with manual close option available.
  • Dark Theme Support: Full compatibility with dark theme including backdrop blur effects.
  • Alert Override: Automatically overrides window.alert() for all route-related messages.

🎨 UI/UX Enhancements

Visual improvements: Enhanced user interface elements for better usability and modern aesthetics.

  • Location Button Design: Blue GPS icon with hover effects and proper visual feedback.
  • Toast Container: Strategically positioned in the top-right corner for optimal visibility.
  • Notification Design: Toast notifications with icons, close buttons, and proper spacing.
  • Responsive Design: Fully responsive design that works perfectly on mobile devices.
  • Visual Hierarchy: Improved visual hierarchy and user feedback throughout the interface.

🔧 Technical Implementation

Robust foundation: Built with modern web technologies and comprehensive error handling for reliability.

  • Geolocation API Integration: Proper integration with browser geolocation API with comprehensive error handling.
  • Toast Queue Management: Intelligent queue management for multiple notifications.
  • Event-Driven Updates: Event-driven architecture for real-time UI updates and synchronization.
  • Browser Compatibility: Graceful degradation for browsers that don't support modern features.
  • Performance Optimization: Optimized animations and rendering for smooth user experience.

🚨 Error Handling & User Feedback

Reliable operation: Comprehensive error handling ensures the features work reliably in all scenarios.

  • Geolocation Errors: Handles permission denied, position unavailable, timeout, and other geolocation errors.
  • Network Issues: Graceful handling of network connectivity issues and API failures.
  • User Guidance: Clear, helpful messages guide users through any issues or permission requests.
  • Fallback Mechanisms: Automatic fallbacks ensure core functionality remains available.

📱 Mobile Responsiveness

Universal experience: All new features are fully optimized for mobile devices and touch interactions.

  • Touch-Friendly Controls: GPS button and notification interactions optimized for touch screens.
  • Mobile Layout: Toast notifications properly positioned and sized for mobile screens.
  • Responsive Animations: Animations and transitions work smoothly on all device sizes.
  • Gesture Support: Supports mobile gestures and interactions where appropriate.

🎯 Smart Integration

Seamless workflow: Features integrate intelligently with existing functionality for enhanced user experience.

  • Route Planning Integration: Geolocation works seamlessly with route planning and hybrid routing modes.
  • Notification Context: Toast notifications provide contextual feedback for all route operations.
  • Map Layer Synergy: OSM HOT layer enhances the effectiveness of geolocation and route planning.
  • Workflow Enhancement: All features work together to create a cohesive, professional experience.

📊 Impact on Users

  • Enhanced Navigation: OSM HOT layer provides better context for understanding transportation infrastructure.
  • Location Convenience: One-click access to your current location for easier route planning.
  • Modern Experience: Professional toast notifications replace outdated browser alerts.
  • Better Feedback: Clear, beautiful notifications improve communication with users.
  • Mobile Excellence: Full mobile optimization ensures great experience across all devices.

🛠️ Technical Details

  • OSM HOT Integration: Seamless integration with Humanitarian OpenStreetMap transport layer.
  • Geolocation API: Modern geolocation API with high accuracy and error handling.
  • Toast Framework: Custom toast notification system with queue management and animations.
  • CSS Animations: Hardware-accelerated animations for smooth performance.
  • Event System: Comprehensive event system for UI state management.

🙏 Thank You for Being With Us!

These enhancements significantly improve your route planning experience by providing better map context, easy location finding, and modern user feedback. The OSM HOT transport layer gives you valuable infrastructure information, geolocation helps you quickly find your position, and toast notifications provide a much more professional way to communicate with you.

We're committed to continuously improving your experience with modern, user-friendly features that make route planning more enjoyable and efficient. Keep exploring and creating amazing routes!

Closes #osm-hot-default-layer, #geolocation-feature, #toast-notifications

Comprehensive Analysis and Implementation Plan for Automatic Route Planning

August 31, 2025 v1.8.2 #documentation #planning #analysis #routing #api #backend #frontend #roadmap

Hello, athletes!

We're excited to share update 1.8.2, which focuses on comprehensive research and planning for automatic route planning functionality. This release includes detailed analysis, technical documentation, and implementation roadmap for bringing automated routing capabilities to our platform.

📋 Comprehensive Automatic Routing Analysis

Research phase: We've conducted an in-depth analysis of automatic routing possibilities to prepare for future implementation of smart route generation features.

  • Technical Feasibility Study: Analyzed the technical requirements and infrastructure needed for automatic routing implementation.
  • Performance Impact Assessment: Evaluated potential performance implications and optimization strategies for routing calculations.
  • Data Requirements Analysis: Documented the data sources, quality standards, and processing requirements for accurate routing.

🔗 OSRM API Integration Demo

Working examples: Created comprehensive OSRM API integration demonstrations with practical implementation examples.

  • Route Calculation Demos: Working examples of route calculation using OSRM API with various parameters and optimization options.
  • Error Handling Examples: Demonstrated robust error handling and fallback mechanisms for API failures.
  • Performance Optimization: Showed techniques for optimizing API calls and caching strategies for better user experience.
  • Real-world Scenarios: Provided examples covering different routing scenarios (cycling, running, walking) with appropriate profiles.

🗺️ Routing Providers Documentation

Provider comparison: Comprehensive documentation of available routing service providers and their capabilities.

  • OSRM (Open Source Routing Machine): Detailed analysis of self-hosted routing with custom profiles and data.
  • GraphHopper: Commercial routing service with advanced features like traffic data and turn-by-turn instructions.
  • OpenRouteService: Open-source routing with multi-modal support and isochrone calculations.
  • Feature Comparison Matrix: Detailed comparison of pricing, features, performance, and integration complexity.
  • Recommendation Framework: Decision criteria for selecting the most appropriate routing provider based on use cases.

🏗️ Technical Implementation Plan

Architecture design: Defined comprehensive technical approach for implementing automatic routing features.

  • New Properties and Methods: Specified new data structures and API endpoints for routing functionality.
  • Database Schema Extensions: Planned database changes to support route metadata and routing preferences.
  • API Architecture: Designed RESTful API endpoints for routing services and route optimization.
  • Caching Strategy: Implemented intelligent caching for routing data to improve performance and reduce API costs.

🔄 Hybrid Routing Approach Design

Integration strategy: Designed a hybrid system that combines manual and automatic routing for optimal user experience.

  • Manual Override Capabilities: Users can modify automatically generated routes while preserving the original suggestion.
  • Smart Suggestions: Automatic route suggestions based on user preferences, historical data, and activity type.
  • Fallback Mechanisms: Seamless fallback to manual routing when automatic routing is unavailable or inappropriate.
  • Progressive Enhancement: Automatic routing as an enhancement to existing manual planning capabilities.

📅 4-Phase Development Roadmap

Structured implementation: Created a detailed 4-phase development roadmap with specific milestones and deliverables.

  • Phase 1 - Foundation: Infrastructure setup, API integration, and basic routing functionality (2-3 weeks).
  • Phase 2 - Core Features: Advanced routing algorithms, user preferences, and optimization features (4-5 weeks).
  • Phase 3 - UI/UX: Enhanced user interface, visual feedback, and interaction improvements (3-4 weeks).
  • Phase 4 - Advanced Features: Multi-modal routing, real-time adjustments, and performance optimizations (4-6 weeks).
  • Milestone Tracking: Defined specific success criteria and testing requirements for each phase.

🎨 UI Improvements and Visual Feedback

User experience design: Planned comprehensive UI enhancements for automatic routing features.

  • Route Preview: Visual preview of automatically generated routes with elevation profiles and key metrics.
  • Loading States: Smooth loading animations and progress indicators during route calculation.
  • Error Handling UI: User-friendly error messages and recovery options for routing failures.
  • Customization Controls: Intuitive controls for adjusting routing preferences and constraints.
  • Visual Comparison: Side-by-side comparison of manual vs automatic routes with highlighting of differences.

⚖️ Pros/Cons Analysis and Mitigation

Risk assessment: Comprehensive analysis of advantages and challenges with mitigation strategies.

  • Advantages: Time savings, optimized routes, accessibility for new users, data-driven recommendations.
  • Challenges: API dependencies, data accuracy concerns, performance overhead, user trust issues.
  • Mitigation Strategies: Multiple provider fallbacks, local caching, user feedback loops, transparent algorithms.
  • Cost Analysis: Detailed cost-benefit analysis including API costs, development time, and user value.

🔄 Backward Compatibility Guidelines

Migration strategy: Comprehensive guidelines for maintaining backward compatibility during implementation.

  • Feature Flags: Implementation of feature flags to enable/disable automatic routing without breaking existing functionality.
  • API Versioning: Proper API versioning to support both legacy and new routing methods.
  • Data Migration: Safe migration of existing route data to support new routing features.
  • Graceful Degradation: Ensuring the application works seamlessly when automatic routing features are disabled.

📊 Impact on Development

  • Enhanced Planning Capabilities: Foundation for more advanced route planning features in future releases.
  • Improved User Experience: Research-backed approach to implementing user-friendly automatic routing.
  • Technical Foundation: Solid technical groundwork for scalable routing implementation.
  • Documentation Excellence: Comprehensive documentation for future development and maintenance.

🛠️ Technical Details

  • API Integration Framework: Modular design for easy integration of multiple routing providers.
  • Performance Monitoring: Built-in performance tracking and optimization recommendations.
  • Testing Strategy: Comprehensive testing approach including unit tests, integration tests, and user acceptance testing.
  • Security Considerations: Secure API key management and data privacy protection for routing services.

🙏 Part of Research and Planning Phase

This release is part of our comprehensive research and planning phase for automatic routing implementation. The detailed analysis and documentation provided here will serve as the foundation for future development work.

We're committed to bringing you the best possible automatic routing experience, and this research phase ensures we make informed decisions that will benefit all users. Stay tuned for the actual implementation in upcoming releases!

Part of automatic routing research and planning phase

Hybrid Routing Mode Implementation - Manual and Automatic Route Planning

August 31, 2025 v1.9 #feature #routing #hybrid #frontend #backend #api #ui #responsive

Hello, athletes!

We're thrilled to announce 1.9, a major update that introduces hybrid routing mode, combining the best of manual and automatic route planning. This innovative feature gives you unprecedented flexibility in how you create and customize your training routes.

🔄 New Routing Mode System

Dual approach: We've implemented a comprehensive routing system that offers both Manual and Hybrid modes to suit different planning preferences.

  • Manual Mode: Traditional point-and-click route creation with full user control over every segment.
  • Hybrid Mode: Intelligent combination of manual waypoints with automatic route calculation between points.
  • Seamless Switching: Easy switching between modes with preserved route data and visual continuity.

🎛️ Comprehensive UI Controls

Enhanced interface: Added sophisticated UI controls for routing mode selection and transport preferences.

  • Routing Controls Group: Dedicated section with mode selection buttons and transport profile dropdown.
  • Transport Profile Selection: Choose between driving, cycling, and walking profiles optimized for each activity type.
  • Mode Indicator Overlay: Clear visual indication of current routing mode with contextual information.
  • Calculate Route Button: Dynamic button with state management showing calculation progress and results.

🔗 OSRM API Integration

Smart routing: Implemented robust OSRM API integration for automatic route calculation with comprehensive error handling.

  • Automatic Route Segments: Intelligent calculation of optimal routes between manually placed waypoints.
  • Multi-Profile Support: Different routing algorithms optimized for driving, cycling, and walking activities.
  • Fallback Support: Graceful degradation to manual mode when API services are unavailable.
  • Performance Optimization: Efficient API usage with intelligent caching and request batching.

🎨 Visual Route Distinction

Clear differentiation: Implemented distinctive visual styles to clearly separate manual and automatic route segments.

  • Manual Routes: Solid orange lines representing user-drawn route segments with full control.
  • Automatic Routes: Dashed green lines showing AI-calculated optimal paths between waypoints.
  • Interactive Legend: Comprehensive routing legend explaining different route types and their meanings.
  • Visual Feedback: Real-time visual feedback during route creation and modification.

⚡ Performance and Caching

Optimized experience: Built-in performance optimizations for smooth routing calculations and data management.

  • Intelligent Caching: Smart caching system for routing results to minimize API calls and improve response times.
  • Background Processing: Non-blocking route calculations that don't interfere with user interactions.
  • Progressive Loading: Incremental route display as calculations complete for better user experience.
  • Resource Management: Efficient memory usage and cleanup for optimal performance across devices.

🚨 Error Handling and User Feedback

Robust reliability: Comprehensive error handling ensures a smooth experience even when things go wrong.

  • API Failure Recovery: Automatic retry mechanisms and user-friendly error messages for API issues.
  • Network Resilience: Offline capabilities with cached route data when connectivity is lost.
  • Loading States: Clear loading indicators and progress feedback during route calculations.
  • User Guidance: Contextual help and suggestions for resolving routing issues.

💾 Enhanced Route Saving

Rich metadata: Extended route saving capabilities to preserve all routing information and preferences.

  • Routing Metadata: Complete preservation of routing mode, transport profile, and calculation parameters.
  • Auto Segments Storage: Dedicated storage for automatic route segments with calculation details.
  • Backward Compatibility: Seamless loading of existing routes with automatic migration to new format.
  • Data Integrity: Robust validation and error recovery for saved route data.

📱 Mobile-Responsive Design

Universal accessibility: Comprehensive responsive design ensures great experience across all devices.

  • Tablet Optimization: Optimized layout for tablet devices with touch-friendly controls.
  • Mobile Interface: Streamlined mobile interface with gesture support and adaptive sizing.
  • Touch Interactions: Enhanced touch controls for precise waypoint placement and route editing.
  • Adaptive UI: Dynamic UI adjustments based on screen size and orientation.

🔧 Frontend Enhancements

Modern interface: Significant frontend improvements for enhanced user experience and visual appeal.

  • Enhanced Button Styling: Refined button classification system with primary, danger, secondary, action, and tool styles.
  • Visual Feedback System: Comprehensive feedback for different route types and user actions.
  • Event-Driven Architecture: Robust event system for seamless UI-RoutePlanner communication.
  • Accessibility Improvements: Enhanced keyboard navigation and screen reader support.

🔧 Backend Integration

Data foundation: Extended backend capabilities to support the new routing features.

  • Extended Route Structure: Enhanced data models to accommodate routing mode and profile information.
  • Metadata Persistence: Reliable storage and retrieval of routing metadata and preferences.
  • API Preparation: Backend preparation for future advanced routing features and analytics.
  • Data Migration: Safe migration of existing route data to support new routing capabilities.

🎯 Technical Implementation Highlights

Advanced architecture: Cutting-edge technical implementation combining multiple technologies and approaches.

  • Hybrid Approach: Sophisticated combination of manual user input and automatic AI calculations.
  • Event System: Comprehensive event-driven architecture for real-time UI updates and synchronization.
  • State Management: Advanced state management for routing modes, calculations, and user preferences.
  • Error Recovery: Multi-layer error handling with automatic recovery and user guidance.

📊 Impact on Users

  • Enhanced Flexibility: Choose between full manual control or AI-assisted route planning based on your preferences.
  • Time Savings: Automatic route calculation significantly reduces planning time for long or complex routes.
  • Improved Accuracy: AI-powered routing ensures optimal paths based on real-world conditions.
  • Learning Tool: Use automatic routes as templates and customize them manually for perfect results.
  • Universal Access: Works seamlessly across desktop, tablet, and mobile devices.

🛠️ Technical Details

  • OSRM Integration: Full integration with Open Source Routing Machine for reliable route calculations.
  • Caching Layer: Intelligent caching system with TTL and invalidation strategies.
  • Responsive Framework: Mobile-first responsive design with progressive enhancement.
  • Error Boundaries: Comprehensive error boundaries and fallback mechanisms.
  • Performance Monitoring: Built-in performance tracking and optimization recommendations.

🙏 Thank You for Being With Us!

We're excited about this hybrid routing implementation as it represents a significant step forward in route planning technology. The combination of manual creativity and AI-powered optimization gives you the best of both worlds.

Whether you're a seasoned route planner who wants AI assistance for complex sections or a beginner looking for smart suggestions, hybrid routing mode adapts to your needs. Keep exploring new routes and pushing your limits!

Closes #hybrid-routing-mode-implementation

Export Hybrid Routes with Automatic Segments Included

August 31, 2025 v1.9.1 #fix #bugfix #export #routing #hybrid #frontend #gpx #kml #tcx

Hello, athletes!

We're releasing 1.9.1, a critical bug fix that resolves an important issue with hybrid route exports. This update ensures that all export functions properly include automatic route segments, providing complete and accurate route data for your training devices.

🐛 Critical Export Bug Fix

Export completeness: Fixed a critical issue where export functions were only exporting manual route points, completely ignoring automatic route segments in hybrid mode.

  • Complete Route Export: All export formats (GPX, KML, TCX) now include both manual waypoints and automatic route geometry.
  • Hybrid Mode Awareness: Export functions now recognize and properly handle hybrid routing mode data.
  • Data Integrity: Ensures exported routes maintain their full complexity and accuracy for device compatibility.

🔧 New Route Data Methods

Enhanced data handling: Added new methods to properly combine manual and automatic route data for complete exports.

  • getFullRoute() Method: New method that intelligently combines manual points with automatic segments into a complete route.
  • Route Composition Logic: Smart merging of user-defined waypoints with AI-calculated route segments.
  • Fallback Mechanisms: Proper fallback to manual coordinates when automatic segments are unavailable or invalid.

📤 Updated Export Functions

Universal improvements: All export formats have been updated to use the new complete route data system.

  • GPX Export Enhancement: Now exports complete hybrid routes with proper track segments and waypoints.
  • KML Export Enhancement: Includes automatic segments in KML files for accurate mapping applications.
  • TCX Export Enhancement: Complete route data for Garmin devices with proper trackpoint sequences.
  • Format Consistency: All export formats now provide the same level of route completeness and accuracy.

🎯 Default Mode Change

Improved user experience: Hybrid routing mode is now the default when opening the route planner, providing immediate access to modern routing capabilities.

  • Default Hybrid Mode: New routes automatically start in hybrid mode for better user experience.
  • Easy Mode Switching: Users can still switch to manual mode if they prefer traditional route creation.
  • Better Onboarding: New users immediately benefit from AI-assisted route planning capabilities.

🎨 Visual Export Indicators

Clear feedback: Added visual indicators to help users understand what they're exporting and ensure data completeness.

  • Hybrid Route Indicator: Export buttons now show a 🔄 icon when the route contains automatic segments.
  • Export Button States: Dynamic button states that reflect the current route composition.
  • Route Type Badges: Visual badges on export buttons indicating manual, hybrid, or automatic route types.

💬 Enhanced Success Messages

Detailed feedback: Success messages now provide comprehensive information about exported route composition.

  • Route Composition Details: Messages show the number of manual points, automatic segments, and total distance.
  • Transport Profile Info: Display of the transport profile used (driving, cycling, walking) in export confirmations.
  • File Information: Complete file details including name, size, and export format specifications.

💾 Route Saving Improvements

Complete data preservation: Enhanced route saving to include all route data for future editing and accurate exports.

  • Full Route Data Storage: Routes now save complete route information including automatic segments.
  • Future Editing Support: Saved routes can be reopened and edited while preserving automatic segments.
  • Data Migration: Existing saved routes are automatically updated to include full route data.

🔄 Event System for Real-Time Updates

Live synchronization: Implemented event system for real-time UI updates when route data changes.

  • Route Change Events: Automatic UI updates when route composition changes (manual points added/removed).
  • Export State Synchronization: Export buttons update in real-time to reflect current route status.
  • Loading State Management: Proper loading states during route calculations and export operations.

📁 Smart File Naming

Informative filenames: Export file names now include route type information for better organization.

  • Route Type Indicators: File names include "hybrid", "manual", or "auto" prefixes for easy identification.
  • Transport Profile Info: File names show the transport profile used (e.g., "cycling", "walking").
  • Timestamp Integration: Maintains timestamp-based naming with additional route metadata.

🔄 Hybrid Route Export Flow

Streamlined process: The complete hybrid route export workflow now works seamlessly:

  1. Route Creation: User creates manual points in hybrid mode
  2. Route Calculation: Clicks 'Calculate Route' to generate automatic segments
  3. Visual Feedback: Export buttons show hybrid indicator (🔄 icon)
  4. Complete Export: Exported files contain both manual points AND automatic route geometry
  5. Success Confirmation: Messages show segment count, transport profile, and export details

📊 Impact on Users

  • Complete Route Exports: No more missing route segments in exported files for training devices.
  • Better Device Compatibility: Accurate route data ensures proper device synchronization and navigation.
  • Improved Workflow: Seamless hybrid routing experience with immediate access to modern features.
  • Data Reliability: Confidence that exported routes match what you see on screen.

🛠️ Technical Details

  • Route Data Architecture: Enhanced route data structure to support complete route information.
  • Export Pipeline: Unified export system that handles all route types consistently.
  • State Management: Robust state management for route composition and export operations.
  • Error Handling: Comprehensive error handling with user-friendly fallbacks.

🙏 Thank You for Your Patience!

We apologize for any inconvenience caused by this export issue. This fix ensures that your hybrid routes are exported completely and accurately to all your training devices. The enhanced export system now properly handles the complexity of modern routing features.

Thank you for your understanding as we continue to improve and refine the hybrid routing experience!

Closes #hybrid-route-export-bug

Route Planner Controls Redesign with Grouped Interface

August 31, 2025 v1.8.1 #feature #ui #redesign #frontend #css #javascript #responsive #accessibility

Hello, athletes!

We're excited to announce update 1.8.1, which introduces a comprehensive redesign of the route planner controls with a modern grouped interface layout that enhances usability and visual organization.

🎯 Route Planner Controls Reorganization

What's new: We've completely restructured the route planner interface by organizing controls into logical, visually distinct groups for improved user experience and workflow efficiency.

  • Name Group: Consolidated route naming functionality with route name input field alongside Save, Clear, and Undo buttons for streamlined route management.
  • Route Actions: Dedicated section for route manipulation with Close route and Measure distance buttons clearly separated from other functions.
  • Analysis Tools: Grouped elevation profile, POI (Points of Interest), and Analysis buttons together for all analytical functionality.
  • Export Group: Organized export options with GPX, KML, and TCX export buttons in a dedicated export section for easy access.
  • Info Group: Combined route statistics and speed calculator in an information-focused section for quick data reference.

🔘 Enhanced Button Classification System

Visual improvements: We've implemented a comprehensive button classification system with distinct styling for different types of actions.

  • Primary Buttons (Save): Orange gradient styling with enhanced hover effects and prominent visual presence.
  • Danger Buttons (Clear): Red gradient styling to clearly indicate destructive actions with appropriate visual warnings.
  • Secondary Buttons (Undo): Standard border styling for supporting actions that complement primary functions.
  • Action Buttons: Compact styling for route operations like Close route and Measure distance.
  • Tool Buttons: Smaller styling for analysis tools to maintain focus on primary route planning functions.
  • Export Buttons: Blue accent styling for export functions to distinguish data export operations.

🏷️ UI Enhancement Features

User experience improvements: Added several visual enhancements to make the interface more intuitive and professional.

  • Section Labels: Added orange badge labels for each control group to improve navigation and visual hierarchy.
  • Hover Effects: Implemented subtle animations and shadows on hover for better interactivity feedback.
  • Visual Grouping: Used background colors and borders to clearly separate different functional areas.
  • Improved Spacing: Optimized spacing and padding for better visual balance and readability.

📱 Responsive Design Implementation

Mobile optimization: We've added comprehensive responsive design to ensure the route planner works perfectly on all devices.

  • Tablet Layout (768px): Stacked groups with full-width inputs for tablet viewing, maintaining usability on medium screens.
  • Mobile Layout (480px): Single column layout with full-width buttons optimized for touch interaction.
  • Adaptive Sizing: Dynamic button sizing and spacing that adjusts based on screen size and orientation.
  • Touch-Friendly: Increased button sizes and improved spacing for better mobile touch targets.

🎨 Theme and Accessibility Enhancements

Design consistency: Enhanced support for all theme variants with improved accessibility features.

  • Dark Theme Support: Complete dark theme compatibility for all new UI elements and button styles.
  • Enhanced Contrast: Improved color contrast ratios for better readability across all themes.
  • Accessibility Improvements: Better focus indicators, keyboard navigation, and screen reader support.
  • Consistent Styling: Maintained design language consistency with existing platform elements.

📊 Impact on Users

  • Improved Workflow: Logical grouping makes route planning more intuitive and efficient.
  • Better Organization: Clear visual separation of different functions reduces cognitive load.
  • Enhanced Mobile Experience: Responsive design ensures great usability on all devices.
  • Professional Appearance: Modern styling with consistent theming creates a more polished experience.

🛠️ Technical Details

  • CSS Grid/Flexbox: Modern layout techniques for flexible and responsive design.
  • CSS Variables: Theme-based color system for consistent styling across light/dark modes.
  • JavaScript Enhancements: Improved event handling and state management for new UI elements.
  • Backward Compatibility: All existing functionality preserved with enhanced presentation.

🙏 Thank You for Being With Us!

We hope this redesigned route planner interface makes your route planning experience more enjoyable and efficient. The new grouped layout should help you focus on what matters most - creating great routes!

Closes #route-planner-ui-redesign

TCX Export Functionality for Garmin Devices

August 31, 2025 v1.8 #feature #export #garmin #tcx #frontend #javascript #improvement

Hello, athletes!

We're excited to present a major update 1.8 that introduces complete TCX (Training Center XML) export support for Garmin devices, expanding your training data export capabilities.

📤 Complete TCX Export Implementation

What's new: We've added comprehensive TCX export functionality specifically designed for Garmin devices, allowing you to seamlessly transfer your planned routes and activities to your Garmin watch or other compatible devices.

  • Full TCX Schema Support: Implemented the generateTcx() method with proper Garmin TCX schema compliance, ensuring maximum compatibility with Garmin devices and software.
  • Route Planner Integration: Added a dedicated TCX export button to the route planner interface for quick and easy export of your planned routes.
  • Saved Routes Manager: Extended the saved routes manager with TCX export options, giving you flexibility in how you export your stored routes.
  • Accurate Distance Calculation: Integrated Haversine formula for precise distance calculations between waypoints, ensuring accurate route data.

⏱️ Enhanced Data Processing

Technical improvements: We've enhanced the export system with advanced data processing capabilities for better Garmin compatibility.

  • Proper Timestamp Handling: Added comprehensive timestamp management for trackpoints, including start time, elapsed time, and proper time sequencing.
  • Data Validation & Error Handling: Improved validation for coordinates, route data, and export parameters with enhanced error handling across all export formats.
  • Smart Filename Generation: Enhanced filename generation with timestamps and route identifiers for better organization of exported files.

🎨 UI/UX Enhancements

Visual improvements: We've ensured the new TCX export functionality integrates seamlessly with your existing workflow.

  • Dark Theme Support: Added complete dark theme compatibility for the TCX export button and related UI elements.
  • Consistent Styling: Maintained design consistency with existing export options while providing clear visual feedback for TCX exports.
  • Intuitive Placement: Strategically placed TCX export options alongside existing GPX and FIT export buttons for easy access.

📊 Impact on Users

  • Expanded Device Compatibility: Now you can export routes directly to Garmin devices, expanding your training options beyond just viewing on the platform.
  • Professional Data Transfer: Maintain all route data integrity when transferring to Garmin Connect or compatible training software.
  • Enhanced Training Planning: Seamlessly move from route planning to actual training execution on your Garmin device.

🛠️ Technical Details

  • Garmin TCX Schema Compliance: Full implementation of the official Garmin TCX 2.0 schema for maximum device compatibility.
  • Performance Optimized: Efficient data processing and export generation to handle complex routes without performance degradation.
  • Cross-Format Consistency: Unified export validation and error handling across TCX, GPX, and FIT formats.

🙏 Thank You for Being With Us!

We hope this new TCX export functionality enhances your training workflow and makes it easier to transfer your planned routes to Garmin devices. Keep pushing your limits!

Closes #tcx-export-implementation

Pro Theme Integration and UI Improvements

August 27, 2025 v1.7.1 #feature #ui #theme #frontend #css #javascript #improvement #bugfix

Hello, athletes!

We are excited to announce a significant update, 1.7.1, which transforms the look and feel of your app and enhances the user experience through the integration of a new professional theme and a series of UI refinements.

🌟 Pro Theme Integration: A New Premium Look

What's changed: We've introduced an entirely new professional theme, offering a stylish dark background with modern greenish accents (#10b981). This theme is now available alongside the light and dark themes, and you can easily switch between them. Your theme choice will be saved in localStorage for convenience.

  • New CSS Variables: New CSS variables have been defined for html.pro across all affected pages, controlling background, text, border, shadow, and accent colors, creating a unified and modern look.
  • Component Styling Update: Styles for key elements such as buttons, links, and error/success messages have been updated in webapp/static/css/home.css and inline styles. Primary buttons are now a greenish hue (#10b981), and gradients have been disabled for a more minimalistic design.

🔄 Theme Toggle Update

Enhanced functionality and visualization: We've completely redesigned the theme toggle for a more intuitive and aesthetic interaction.

  • Dynamic SVG Icons: The text icon ◐ has been replaced with colorful SVG icons (sun for light, moon for dark, star for professional theme), significantly improving visual representation and size control.
  • Improved JavaScript Logic: The JavaScript logic has been updated for seamless cyclical switching between light, dark, and professional themes, with reliable saving of the selected theme in localStorage.

✨ UI Fixes and Optimizations

In addition to introducing the new theme, we've fixed several annoying bugs and made a number of optimizations to improve the overall user experience.

  • Font Size Fixed: The issue with increased font size on pages achievements.html, basic_dashboard.html, challenge_detail.html, challenges.html, changelog.html, club_detail.html, create_team.html has been resolved, ensuring correct display of base font sizes.
  • Correct Header Color: The issue with the gray header in the Pro theme on faq.html and in home.css has been fixed; the header now fully matches the new color palette.
  • Toggle Functionality Restored: The correct functionality of language and theme toggles on fixer.html has been restored thanks to refactoring of JavaScript logic and proper initialization.
  • Dynamic Elements: Ensured that maps and graphs on activity_detail.html, fixer.html, and home.html pages correctly update their styles when the theme changes.

📊 Impact on Users

  • Modern and Premium Look: Your app now looks more modern and professional thanks to the new Pro Theme.
  • Personalization: Extended theme customization options allow you to choose the most comfortable option for yourself.
  • Increased Stability and Convenience: UI improvements and bug fixes make interacting with the app smoother and more enjoyable.

🛠️ Technical Details

  • Flexible Theme Management: A CSS variable-based system has been implemented for easy style management and quick theme switching.
  • JavaScript Optimization: Refactored theme switching and UI element logic to improve performance and reliability.
  • SVG Icons: The transition to SVG for theme toggle icons provides better scalability and image clarity.

🙏 Thank You for Being With Us!

We hope you enjoy these improvements and can enjoy an updated and more functional interface. Keep training!

New Homepage Stat: Total Training Reports Added

August 24, 2025 v1.6.1 #feature #homepage #statistics #ui #frontend #api

Hello, athletes!

We're making our homepage more dynamic! This small but significant update adds a new statistic that showcases the vibrant activity of the Peakline community.

📊 New Metric: Training Reports

What's New: * The homepage (www.thepeakline.com) now displays a real-time count of the total number of training reports created by our users from around the world. * The counter is animated for a more engaging visual effect, showing the number tick up as the page loads.

Why It Matters: * This metric visually demonstrates our community's activity and the scale of the platform. * It serves as social proof for new users, showing that the service is alive and growing.

🛠️ Technical Details

  • Backend: A new lightweight API endpoint (/api/stats/reports_count) has been created to serve the statistic.
  • Frontend: An asynchronous request has been implemented on the homepage to fetch the data without slowing down the initial page render.
  • Localization: The text description for the new counter has been added to the translation system (i18n) to support all languages.

🚀 User Impact

  • The homepage is now more lively and informative.
  • New and existing users can see real-time platform activity, which builds trust in the service.

Stay tuned for more updates—we'll continue to make the service even better!

Global Internationalization and UI Consistency Fixes

August 24, 2025 v1.5.2 #internationalization #i18n #bugfix #ui #ux #frontend #localization

Hello, athletes!

We are continuing our mission to make Peakline a truly global service. In this update, we have completed a major internationalization effort, eliminated all remaining hardcoded text, and significantly improved UI consistency. Now, nearly the entire service speaks your language!

🌍 Global Internationalization (i18n)

Problem Solved: Some pages still contained untranslated text fragments, which disrupted the user experience for our international community.

What's Changed: * PeakLine Score Page: The translation system integration is now complete! We are excited to welcome German (DE) and French (FR) to our language family, in addition to the existing EN, RU, UK, and SK support. * Dashboard Page: The PeakLine Score and Gear sections are now fully translated. No more Russian strings for English-speaking users. * Home Page: We've fixed hardcoded descriptions in the "Features" section, specifically for "Weather Context" and "Pro-Level Tools."

🎨 Unified Interface and UX

We have standardized key navigation and control elements to make the service even more convenient for you.

  • Toggles on PeakLine Score Page: The familiar theme (light/dark) and language switchers are now available on this page.
  • Consistent Footer: A standard footer with navigation and the Strava logo has been added to the PeakLine Score page, matching other sections of the site.
  • Consistent Design: All pages now share a unified header, footer, and navigation elements, making the service more cohesive and intuitive.

🐛 Bug Fixes and Stability

What's Fixed: * "T is undefined" Error: Resolved a critical bug in the translation system that could cause the PeakLine Score page to fail on load. * All Hardcoded Strings Eliminated: We conducted a full audit of our templates and removed all hardcoded Russian text. All text is now dynamically loaded from localization files. * Fallback Translations: Added fallback translations for all new elements to prevent empty spots in the UI if a translation for a specific language isn't ready.

📝 New Translations Added

To support these changes, we've added and translated numerous new text strings: * Over 40 keys for the PeakLine Score page across all supported languages. * Keys for the dashboard: titles, descriptions, and buttons for sections. * Keys for the home page: descriptions of features and service principles.

📊 User Impact

  • A Complete Multilingual Experience: All core functionality is now available in 6 languages.
  • Stable Performance: Fixed errors related to the translation system.
  • Predictable Interface: Navigation and appearance are now consistent across all pages.
  • Enhanced Comfort: The ability to switch themes on the PeakLine Score page.

🙏 Acknowledgments

A huge thank you to everyone who reported untranslated text fragments! Your attention to detail helps us create a high-quality and accessible product for athletes all over the world.

Internationalization and Theming for the PeakLine Score Page

August 24, 2025 v1.5.1 #internationalization #i18n #theme #ui #ux #feature #frontend

Hello, athletes!

We are excited to introduce an update that makes one of our key pages—the PeakLine Score page—truly global and user-friendly for everyone. This page now fully supports multiple languages and theme switching, making the analysis of your achievements even more comfortable.

🌐 Full Language Support (Internationalization)

Problem Solved: Previously, the PeakLine Score page was only available in Russian, which was inconvenient for our international users.

What's Changed: * Four Languages: Full support for English, Russian, Ukrainian, and Slovak has been added. * Dynamic Translations: All text elements on the page, including titles, descriptions, and tooltips, have been replaced with translation keys that load based on the selected language. * Integrated Switcher: A standard language switcher, familiar from other pages of the service, has been added to the interface.

🎨 Theme Switching: Light & Dark

New Feature: For comfortable viewing at any time of day, we've added a theme switcher.

What's Changed: * Toggle Button: An icon for instantly switching between light and dark themes has appeared in the top-right corner of the page. * Adaptive Design: All interface elements, including charts and text, correctly adapt to the selected theme, maintaining readability. * Selection Persistence: Your theme choice is saved, so you don't have to set it on every visit.

✨ UI Improvements and Consistency

We also took this opportunity to unify the page's appearance and make it more consistent with the rest of the service.

  • Footer Added: The bottom of the page now features a navigation block with links to important sections and the Strava logo.
  • Consistent Styling: Controls (toggles, buttons) now look the same as on other pages, creating a seamless user experience.

📊 User Impact

  • Accessibility: You can now use the PeakLine Score page in your native language.
  • Comfort: The dark theme reduces eye strain in low-light conditions.
  • Intuitive Design: A consistent design across all pages makes navigating the site easier and more predictable.

🛠️ Technical Details

  • Backend: The /peakline-score endpoint has been updated to correctly integrate with the translation system.
  • Frontend: The peakline_score.html template has been completely refactored to use translation keys instead of hardcoded strings.
  • Components: Shared components for language and theme switching from support.html were integrated for code reuse.
  • Configuration: Configuration files, including maintenance.json, have been updated to support the new localizations.

📋 What's Next

We will continue to internationalize other sections of the site to make PeakLine as accessible as possible for athletes worldwide.

🙏 Acknowledgments

Thank you to our international community for your support and feedback! You inspire us to make the service better and more accessible for everyone.

P.S. Be sure to check out the new look of the PeakLine Score page and share your thoughts!

Security Hardening and Challenge Page Improvements

August 24, 2025 v1.6.0 #security #xss #bugfix #improvement #frontend #api #localization

Hello, athletes!

Your security is our top priority. Today, we are releasing a critical update, version 1.6.0, which significantly enhances the platform's protection against potential attacks and improves the functionality of the Challenges page.

🛡️ Security Hardening: XSS Protection

Problem Solved: Previously, there was a theoretical possibility of injecting malicious code (XSS - Cross-Site Scripting) through fields like a challenge's name or description. This could affect users viewing such content.

What's Changed: * HTML Escaping: We have implemented a new internal escapeHtml() helper function to sanitize all user-input data before it is rendered on the page. This ensures that any code is displayed as plain text instead of being executed. * Protection for All Fields: The new function has been applied to all challenge fields: name (challenge.name), description (challenge.description), and sport type (challenge.sport_type). * Secure URLs: Challenge IDs (challenge.id) are now securely encoded using encodeURIComponent() when constructing links, preventing URL manipulation. * Comprehensive Audit: We conducted a full audit of all points where data from the API is displayed in the UI and applied similar protective measures to ensure end-to-end security.

📈 Challenge Page Improvements

In addition to security, we've fixed a few annoying bugs and improved the user experience.

  • Fixed Day Counter: Resolved a bug where the remaining days counter for an active challenge could show a negative value. It now correctly stops at zero.
  • Number and Date Localization: Numbers and dates on the page are now displayed in a format that corresponds to your selected language (e.g., 1,000.50 for EN and 1 000,50 for RU).
  • Improved Error Handling: Enhanced the error handling logic when fetching data from the server. The page will now correctly report connection issues instead of freezing or displaying empty data.

📊 User Impact

  • Enhanced Security: Your data and sessions are now better protected against XSS attacks. You can browse any content on the platform with confidence.
  • Reliability: The Challenges page is more stable, and the displayed data is more accurate.
  • Convenience: Correct formatting for numbers and dates makes information more readable for users from different countries.

🛠️ Technical Details

  • escapeHtml() utility implemented: A centralized function to prevent XSS across the entire application.
  • HTTP Status Checks: The client-side code now verifies the HTTP status of API responses and validates JSON, improving fault tolerance.
  • Unified Security Approach: Secure data handling principles are now applied to all components interacting with the API.

🙏 Security First

We will continue to conduct regular security audits and implement best practices to protect your data. Thank you for being with us!

Database Refactoring and Service Health Monitoring System

July 05, 2025 v1.4.2 #database #monitoring #security #performance #bugfix #infrastructure

Hello, athletes!

Today we're releasing an important update that significantly improves the stability and reliability of the Peakline service. We've completely reworked the database system and added modern monitoring tools. This release solves critical performance issues and makes the service more resilient to load.

🗄️ Complete Database Work Refactoring

Problem solved: The service was suffering from database connection leaks and "Cannot operate on a closed database" errors, leading to unstable operation.

What changed: * Database Context Manager: Replaced all direct sqlite3.connect() calls with a safe context manager with get_db() as conn: * Automatic Connection Management: All connections now automatically open and close, eliminating memory leaks * Removed Middleware: Deleted outdated middleware that incorrectly managed database connections * Timeouts to Prevent Deadlocks: Added timeout settings to avoid operation hanging * Unified Approach: All system components now use the same database work pattern

Areas of changes: * Main application file * Token management system * Authentication modules * Telegram integration * Database abstraction layer

🏥 Service Health Monitoring System

New monitoring endpoints: * /api/health - basic health check for service status * /api/health/db - detailed database status check (protected by secret key)

Monitoring capabilities: * Database Connection Check: Automatic diagnosis of database availability and status * Service Information: Status, version, uptime * Security: Detailed information available only with correct secret key * Uptime Kuma Integration: Ready instructions for external monitoring setup

🔒 Security Improvements

Monitoring Protection: * Detailed database status information hidden from regular users * Secret key for access to extended diagnostics * Recommendations for secure external monitoring system setup

Security Audit: * Complete audit of all database-related components * Eliminated all potential vulnerabilities in user data handling * Verified correctness of all imports and dependencies

🚀 Performance and Stability

Before update: * Frequent "Cannot operate on a closed database" errors * Database connection leaks * Unstable operation under high load * No service status monitoring

After update: * Stable operation without database errors * Automatic resource management * Real-time monitoring capability * Quick problem identification and resolution

🛠️ Technical Details

Architectural Changes: * Implemented Repository pattern for data work * Context manager ensures RAII (Resource Acquisition Is Initialization) * Unified database error handling across all components

Monitoring: * RESTful API for health checks * JSON responses with detailed information * HTTP status codes for automatic monitoring * Support for various monitoring systems

📊 Impact on Users

Direct improvements: * Service became significantly more stable * Eliminated random data operation errors * Faster page loading due to database optimization * More reliable integration work (Telegram, Strava)

For administrators: * Ability to monitor service status * Quick problem identification * Diagnostic tools * Easy integration with external monitoring systems

🔄 Migration and Compatibility

Backward compatibility: * All existing API endpoints work without changes * User data remains untouched * Settings and configurations are preserved

Automatic update: * Update occurs automatically on service restart * No manual data migration required * All changes applied transparently

📋 What's Next

In future versions we plan to: * Add performance metrics to health check * Expand monitoring system for user activity tracking * Implement automatic alerts for critical issues * Add admin dashboard with service status visualization

🙏 Acknowledgments

Thank you to everyone who reported service stability issues! Your reports helped us identify and fix critical database problems.

P.S. If you notice any service operation issues - we now have reliable tools for quick diagnosis and problem resolution!

Major Security and Stability Overhaul

July 05, 2025 v1.4.0 #Security #Stability #Update

Hello, athletes!

Over the past few days, we have carried out a large-scale effort to strengthen the security and improve the stability of our platform. These changes affect the core of the system and make using Peakline even more reliable and secure for everyone.

✨ What's new and what we've fixed:

1. Completely Reworked Session System

We have implemented a new, modern session management system. Previously, the user's ID was stored in a cookie, which was potentially insecure.

  • Now: The cookie only stores a unique, cryptographically random, and short-lived token. This token is linked to your session on the server, completely eliminating the possibility of session hijacking or ID enumeration.

2. Enhanced Protection for Login and Registration Forms

To combat bots, spam, and brute-force attempts, we have integrated the advanced Cloudflare Turnstile system.

  • What this means for you: In most cases, you won't notice any changes. The check is performed automatically and invisibly. It's a smart CAPTCHA that doesn't require you to solve puzzles but effectively blocks malicious activity.

3. Added Rate Limiting

To protect the platform from abuse and ensure its stable operation for everyone, we've added rate limits to key operations such as login attempts, file uploads, and API calls.

4. Secure File Uploads

Previously, the system only checked the extension of uploaded files (e.g., .gpx). We have now implemented a deep MIME type check that analyzes the file's content. This ensures that only genuine and correct workout files can be uploaded to the server.

5. Fixed Critical Authentication Flaw

We identified and fixed several logical errors in the code that, in rare cases, could lead to incorrect authentication behavior, especially in the Telegram bot.

These updates are our priority in ensuring the security of your data and the stability of the service. Thank you for being with us!

— Your Peakline Team

Homepage UX Enhancements and Language Detection Fix

June 26, 2025 v1.3.2 #ux #improvement #language #animation #bugfix #mobile

Hello, athletes!

Today we're releasing an update that significantly improves the user experience on the homepage and fixes an important language detection issue. This release is based on your feedback!

🌍 Language Detection Fix

Problem solved: Some users from Russia were getting the Ukrainian version of the site by default due to browser behavior quirks.

What changed: * Priority language logic: System now checks popular languages first (Russian, German, French, Slovak) * Removed auto-conversion: Code uk is no longer automatically converted to ua * English as default: If there's no clear match with supported languages, English version is shown * Ukrainian only by choice: Ukrainian language is available only through explicit selection via language switcher

✨ Animations for Better UX

Mobile user problem: Many didn't understand that the homepage could be scrolled down to view additional content.

New animations: * Scroll Progress Bar: Thin orange stripe at the top shows page scroll progress * Bounce arrow animation: Bouncing arrow below hero section with "Scroll Down" text * Floating Scroll Hint: Round orange button on the bottom right for navigation to next section * Wave effect: Animated line "runs" across sections when they appear on screen * Enhanced transitions: Elements smoothly appear from bottom with beautiful timing functions

🎨 Contrast Fixes

Readability problem: In light theme, text on cards was poorly visible on the rainbow gradient background when hovering.

What's fixed: * White text on gradient: All text in cards becomes white on hover * Shadows for readability: Added shadow for better contrast on any background * Theme adaptation: Different shadow intensities for light and dark themes * Perfect readability: Now all elements (headers, icons, descriptions) are clearly visible

📱 Mobile Improvements

Responsive design: * Scroll hint adapts to screen size (50px on mobile, 60px on desktop) * Reduced sizes of animation elements for mobile devices * Optimized spacing and positioning for touch screens

🛠️ Technical Details

Performance: * All animations work through CSS transitions and transforms for maximum performance * Using cubic-bezier for natural transitions * Minimal impact on page loading speed

Compatibility: * Support for all modern browsers * Graceful degradation for older browsers * Full support for touch devices

🎯 Impact on Users

Before update: * Users could get wrong language * Non-obvious content scrolling * Poor readability when hovering on cards

After update: * Correct language detection for all regions * Intuitive page navigation * Excellent readability of all interface elements * Modern, smooth animations

📋 What's Next

In upcoming versions we plan to: * Add more languages based on community requests * Expand animation system to other pages * Create animation settings for users * Add more complex micro-interactions

Thank you for your feedback! It's precisely because of your reports that we could identify and fix these issues.

P.S. If you notice other problems with languages or UX - please let us know! We're always ready to improve Peakline based on your needs.

Smart Notifications and Stability Control System

June 23, 2025 v1.3.1 #new_feature #ux #maintenance #notification #improvement

Hello, athletes!

We're launching a new notification system that will help us better communicate with the community and inform you about important changes in service operation. This system was created in response to your requests for more transparent communication!

🔔 New Notification System

Smart Modal Windows: Now when you visit the site, you may see important notifications about maintenance, updates, or temporary feature limitations.

What this provides: * Transparency: We can promptly inform about system instability or planned work * Multilingual Support: Notifications automatically display in your language (Russian and English supported) * Smart Display Logic: Each notification is shown only once per day to avoid being annoying * Flexibility: System works through configuration file, allowing quick activation/deactivation of notifications

🎯 How It Works

For Users: 1. When entering the homepage or dashboard, a stylish modal window appears with important information 2. Two buttons to choose from: "Continue" (remember for the day) or "Return Later" (don't remember) 3. Ability to close with Escape key or clicking on background 4. Responsive design for all devices

For Administrator: * Simple management through JSON configuration * Enable/disable mode with one line * Text configuration for different languages * Instant application of changes after service restart

🛠️ Technical Details

Integration: System seamlessly integrates with existing site architecture, using established CSS classes and JavaScript patterns.

Performance: Minimal impact on page loading speed - all logic works asynchronously.

Compatibility: Full support for all modern browsers and mobile devices.

🎨 Why This Matters

This system emerged in response to our community growth. As practice showed after the Habr publication, user count can multiply within hours. The new system allows us to:

  • Warn in advance about server loads
  • Inform about experimental features
  • Communicate temporary API limitations
  • Announce major updates

📋 What's Next

In upcoming versions we plan to: * Add notification types (info, warning, critical error) * Integrate with changelog system to show new features * Create administrative interface for managing notifications * Add delayed notification display capability

Thank you for your understanding! This system will help us be even more open and responsive in our communication with you.

P.S. If you notice that notifications are showing too frequently or there are other issues - please let us know!

Security Patch, New Features, and Numerous UX Improvements

June 22, 2025 v1.3.0 #security #new_feature #improvement #bugfix #ux

Hello, athletes!

We continue to improve Peakline every day. This release is one of our most packed yet. We've bolstered security, added long-awaited features, and fixed many minor issues you've reported. Thank you for your engagement!

🛡️ Security & Reliability

  • Security Hardening: Following a discussion on Habr about a potential vulnerability (Stored XSS), we conducted an audit and proactively strengthened our security. All user-generated content displayed on pages now undergoes additional sanitization. The security of your data is our top priority.
  • Reliable API Rate Limits: To ensure service stability for everyone, we have introduced and configured a system of rate limits for all key functions, including track downloads, AI analysis, and activity uploads.

🚀 Improvements & UX

  • Peakline Manifesto on Homepage: We've added a new block to the homepage outlining our key principles: security, privacy, and community trust.
  • Consistent Segment Links: We've unified the logic. Now, clicking on a segment anywhere on the site (dashboard, activity page, starred list) always leads to its detailed page within Peakline.
  • SEO and FAQ Enhancements: We have worked on optimizing the site for search engines. We also started creating an extensive FAQ section to help new users easily find answers and discover our site.
  • Clearer Link Input Fields: Improved placeholder text for fields where links are expected, clarifying that an activity or segment URL is required.
  • Consistent Footer: The site footer is now displayed on all pages, including the gear detail view, for consistent navigation. Links to important informational pages have also been added.

🐛 Bug Fixes

  • Fixed element highlighting on hover on the homepage.
  • Corrected icons on the "About" page and in the "Why Peakline?" section.
  • Fixed the incorrect background on the language switcher button on secondary pages.
  • Numerous minor layout fixes and localization improvements for the Russian language.

Patch: Reliable Weather, UI Improvements, and Community Growth!

June 21, 2025 v1.2.1 #improvement #bugfix #ux #community

Hello, athletes!

Just one day after the major weather release, we are rolling out an important service update. Thank you for your quick feedback — it helped us to quickly find and fix several issues, as well as add a couple of nice improvements for the usability of Peakline.

What's new and what's fixed:

1. "Rock-Solid" Weather

We have completely redesigned the logic for obtaining weather data to make it work reliably for absolutely all workouts, both old and new.

  • What was wrong? For some workouts (especially very old ones or in remote locations), hourly weather data was unavailable, which caused the weather block not to be displayed.
  • What we did? Now, if the system does not find exact hourly data, it automatically makes a second request and receives daily average data (minimum/maximum temperature, wind gusts) for the day of the workout.
  • Result: No more "blank spots"! You will get weather context for every single one of your activities.

2. Improved Navigation: Segments within the Site

Analyzing workouts has become even more convenient. Previously, to view segment details from the list in a workout, you had to go to Strava.

  • New feature: Now the names of all segments in the "Segments" tab on the workout analysis page are clickable links.
  • What it gives you? By clicking on a segment, you will be instantly taken to its detailed page within Peakline, where you can view the profile, statistics, and download the track.

3. Explanations in Settings

We have listened to your questions and made the heart rate zone setup more understandable.

  • What's added? In the "Profile Settings" section, under the "Custom Heart Rate Zones" heading, there is now a tooltip: "For each zone, specify its UPPER boundary. For example, the value for Zone 2 is the maximum heart rate of that zone."
  • Result: This will help avoid confusion and allow you to set up your zones as accurately as possible from the first try.

4. Minor UI Fixes

  • Element overlap: Fixed a small layout bug on the homepage where the "Download GPX" button for the demo segment could overlap the map at certain screen resolutions.
  • Improved error handling: We have added more detailed logging and error handling when interacting with external APIs, which increases the overall stability of the service.

P.S. We are growing!

We want to share some joyful news: after publishing an article about our project on Habr (here is the link if you missed it: habr.com/ru/articles/920402/), our community grew from 5 to 21 users in just 5 hours!

This is incredibly motivating. Thank you for being with us! I'll keep working.

Peakline Can Now Be Installed as an App! Plus a Homepage Refresh

June 21, 2025 v1.2.2 #new_feature #ux #pwa #improvement

Hello, athletes!

We are not slowing down! While you were testing yesterday's fixes, we prepared another update focused on usability and the first impression of Peakline.

What's new:

1. Install Peakline on Your Phone or Computer (PWA)

This is a big and important new feature! Peakline can now be installed as a full-fledged application.

  • What it gives you?
    • On your phone: You can add the Peakline icon directly to your home screen, just like any other app.
    • On your computer: The app will launch in its own window, without extra browser tabs and panels.
  • How to install? Just visit the website. Modern browsers (Chrome, Edge, Safari) will prompt you to install the application via an icon in the address bar or a menu item.
  • Why is it needed? It's faster, more convenient, and gives the feeling of working with a native application. We have also added basic offline support — if the internet is lost, you will see a special page, not the standard browser error.

2. Updated Feature Showcase on the Homepage

We realized that the "Why Peakline?" section on the homepage was outdated and did not reflect all the cool features that have appeared recently. We have completely redesigned it!

  • What's added: We've added cards that talk about "Weather Context" (historical data and forecast) and "Pro-Level Tools" (custom zones and racing with a goal in FIT files).
  • Result: Now new users can immediately see the full power of our service, not just the basic features.

3. Final Touches to the UI

Thank you for your attention to detail! We have fixed a couple more small things that you noticed:

  • Button centering: On the homepage, the buttons in the last block ("Go to Dashboard" and "Connect with Strava") are now perfectly centered.
  • Background on the stats block: Removed the extra background color from the "Our Community in Numbers" block, it now looks more organic.

We continue to work on your suggestions. Next up are even deeper analytical metrics. Thanks for helping make Peakline better!

Weather in Every Workout and Next-Level AI Analysis

June 20, 2025 v1.2.0 #new_feature #improvement #ai #weather #roadmap

Hello, athletes! Summer is in full swing, and we're rolling out an update that adds context to your workouts and makes our AI assistant a true expert. We've carefully studied your suggestions and implemented the most anticipated features.

What's new:

1. Weather in Your Activities: Past and Future!

We are launching a major weather integration that will change your approach to analysis and planning.

  • Historical summary (available now!): For all newly uploaded workouts, the system now automatically pulls weather data (temperature, wind speed, and direction) at the start time. Analyze how a headwind affected your speed or how the heat affected your heart rate. No more guesswork — just facts!

  • Announcement: Forecast for Planning (coming soon!): This is just the beginning! In future updates, we will add a weather forecast for your favorite routes. You will be able to select the date and time of a future ride, and the system will show not only the expected temperature but also visualize the wind direction directly on the track map. Plan your efforts and choose the best time for records!

2. AI Coach Got Smarter: Analysis by Heart Rate Zones

We have dramatically improved our AI analyzer. Before, it only saw general numbers; now, it understands the structure of your workout.

  • New context: We added information about the time spent in each of your heart rate zones to the AI prompt.
  • Quality of conclusions: Instead of general phrases like "you had a high average heart rate," the AI now gives specific recommendations.
    • Example: "Great tempo work! You spent 40% of the time in HR zone 3, which is ideal for developing endurance. However, note that 10% of the time in zone 5 might have been excessive for this goal."

3. Improved Charts: Now with Units

A small but important fix for ease of analysis. We have put the units of measurement back on the Y-axis in the detailed analysis charts.

  • What's fixed: Instead of "150," you will now see "150 W" or "150 bpm."
  • Result: The charts have become more informative and professional. No more guessing what the values mean.

4. Updated Dashboard and Homepage

We have completely refactored the homepage and the dashboard. Although the external changes may not be immediately noticeable, you will definitely feel the result.

  • What it gives you? Pages load faster, the interface is more responsive, especially on mobile devices. We have laid a solid foundation for future innovations!

We continue to work to make Peakline your best training partner. The weather forecast for routes feature is our next priority. As always, we look forward to your feedback!

PRO Level: Custom Zones and Race Against a Goal!

June 16, 2025 v1.1.0 #new_feature #improvement #pro

Hello, athletes! Today we're rolling out a major update that turns Peakline into an even more powerful tool for serious training. We've listened carefully to your feedback and added features that give you full control over your analysis and preparation.

What's new:

1. Custom Training Zones

Now you are the head coach! In the new "Profile Settings" section (accessible from your dashboard), you can manually set the boundaries for all your power and heart rate zones.

  • How it works? Simply enter the threshold values for each zone.
  • What it gives you? The analysis of your workouts on the activity page will now use your personal zones, not the standard percentages of FTP/Max HR. This ensures maximum accuracy and relevance of the data.
  • Smart fallback: If you haven't set your zones, the system will, as before, use standard calculations or data from your Strava subscription.

2. Pro-Level FIT Generator: Race with a Goal

Just downloading a segment track is good. But downloading it to compete against a specific goal is even better! We have completely redesigned the FIT file download.

  • Interactive window: Now, when you click the FIT file download button, a modal window appears.
  • Choose your opponent: You can generate a file to race against:
    • KOM/QOM: Challenge the segment leader.
    • Your PR: Try to beat yourself.
    • Custom goal: Set any target time (e.g., 5m30s or 330) and compete against it.

3. Visual GPX Fixer

We don't just fix "teleports" in your tracks, we now show you how we do it.

  • Visual comparison: After uploading a file on the GPX Fixer page, a map appears where the original, "broken" track is shown in red, and the corrected one in green.
  • Statistics: You can immediately see how many extra points were removed and how many kilometers the distance was shortened.

4. Interactive Map-Chart Linking

Workout analysis has become even more exciting. Now the chart and map on the activity page are fully synchronized.

  • Just hover over any point on the chart (speed, elevation, heart rate).
  • A marker will immediately appear on the map, showing your exact location at that moment. Explore every meter of your track!

We are confident that these innovations will help you train even more effectively and with greater pleasure. As always, we look forward to your feedback and suggestions!

Peakline Grand Launch!

June 15, 2025 v1.0.0 #new_feature #release

Hello everyone! We are excited to announce the launch of Peakline — your new assistant in the world of Strava.

What's available now:

  • Dashboard with full statistics and recent activities.
  • Segment analysis with an interactive map and elevation profile.
  • Download FIT and GPX files for your Garmin devices.
  • GPX Fixer to correct "teleports" in your tracks.
  • Segment Hunter to find new challenges on the map.

We are just beginning our journey and would love to hear your feedback!