Releases: javedh-dev/tracktor
v1.4.x
What's Changed
- Update Finnish translations for 1.3.x by @pHamala in #196
- Allow zero cost in maintenance logs by @rderewianko in #198
- Fix vehicle list not refreshing after delete by @rderewianko in #199
- Skip pollution notifications when feature is disabled by @rderewianko in #200
- Add UK MPG fuel consumption unit by @jake-walker in #197
- Fix vehicle creation failing with null id by @rderewianko in #203
- FIx some bugs by @daunera in #201
- Release 1.4.x by @javedh-dev in #204
New Contributors
- @rderewianko made their first contribution in #198
Full Changelog: 1.3.1...1.4.0
Release v.1.3.x
Overview
v1.3.x focuses on the settings experience, notification delivery controls, clearer overview charts, and a broad cleanup of shared helpers and notification flows. It also improves demo seed data so mileage and cost trends look more realistic over time.
What's Changed
- capitalize VIN and license plate automatically by @D3rJust1n in #169
- Add Finnish (fi) localization by @pHamala in #181
- feat: Remove duplicated English localization messages by @daunera in #176
- Sort fuel and maintenance log by @DesignerThan95 in #184
- refactor: Refactor hardcoded text to use i18n by @daunera in #185
- Added notification to different providers by @javedh-dev in #191
- fix: Update email provider validation by @daunera in #193
- Cleanup by @javedh-dev in #192
- Release v1.3.0 by @javedh-dev in #194
Major Features
Settings UX Improvements
- Expanded all settings accordions by default for quicker access
- Made settings forms more responsive with two- and three-column layouts where space allows
- Added a compact switch-based style for feature flags
- Updated notification provider forms to default new providers to enabled
- Simplified channel subscription controls in the provider dialog
- Extracted reusable settings sections, field helpers, and display blocks
- Reused shared tab shell and form composition patterns in settings
Notification Delivery Controls
- Added a toggle to enable or disable scheduled notification delivery
- Kept the delivery schedule tied to the notification settings state
- Disabled schedule inputs automatically when scheduling is turned off
- Added webhook and Gotify providers alongside email
- Improved provider toggling, cron scheduling, and notification send templates
- Allowed editing providers without exposing keys/tokens
Overview Charts
- Added an average reference line to mileage and cost graphs
- Displayed the average as a top-right label with unit-aware formatting
- Formatted tooltip values with the correct units for mileage and currency
- Added a unit-aware average formatter for chart tooltips and labels
- Improved the chart presentation with clearer dashed average lines
Demo Seed Data
- Updated seeded mileage values to progress more naturally over time
- Added small mileage deviations and realistic fuel cost variation
- Made the overall seed data better reflect real-world usage patterns
- Refined seeded notifications and maintenance history for more natural trends
Configuration Changes
- Added
notificationProcessingEnabledto control scheduled notification delivery - Kept
notificationProcessingScheduleas the cron expression for delivery timing - Added default config values for LPG and CNG fuel units
- Preserved mileage unit format settings for distance-per-fuel and fuel-per-distance
- Expanded settings schema and defaults for feature flags and notification delivery
- Updated chart formatting helpers to support unit-aware mileage and currency display
- Added shared config handling and merge helpers for notification provider settings
- Seeded the new config entries automatically for demo setups
Environment/Runtime Changes
- Demo seeding now generates more realistic mileage and cost trends
- Notification scheduler respects the new enabled/disabled config state
- Overview charts now format tooltip and average values using app units
- The app now keeps chart and settings formatting aligned with the active locale/config
UI/UX Improvements
- Compact provider channel subscriptions in the add/edit provider dialog
- Better chart labeling and readability in the overview section
- More consistent settings layout across personalization, units, and feature flags
- Better mobile behavior and tighter spacing across settings and dialogs
- Improved loading skeletons and shared record card layouts across the UI
Architecture & Shared Helpers
- Consolidated route error helpers and standardized backend service responses
- Added typed payload helpers for domain and service layers
- Reduced shared store and form
anyusage - Extracted reusable table, skeleton, and formatter helpers
- Reused shared resource state and feature card layouts across the UI
- Improved notification provider config merge and service date helpers
- Added helper reuse across vehicle, fuel, maintenance, insurance, and reminders
Localization & Messaging
- Continued moving hardcoded UI text into i18n message functions
- Added or refined translated messages for settings, notifications, and charts
- Improved localized labels across dashboard, forms, and notifications
Developer Experience
- Added MCP support for the repo's Svelte workflow
- Upgraded dependencies and fixed follow-up lint/check issues
- Cleaned up formatting, typing, and shared abstractions across the codebase
Bug Fixes & Improvements
- Fixed reactive binding issues in settings forms so inputs update correctly
- Fixed notification delivery scheduling state so it no longer re-enables unexpectedly after save
- Improved unit display for mileage and cost values in chart tooltips and labels
- Fixed settings accordions to stay expanded by default
- Fixed provider add/edit flow to keep new providers enabled by default
- Fixed fuel and maintenance sorting when records share dates
- Fixed NaN-prone calculations and lint issues carried over from refactors
Migration Notes
- No breaking changes were introduced
- Existing settings and data remain compatible
Environment Variables
- No new environment variables were required for this release
- Existing runtime behavior continues to use the current app configuration and demo flags
Known Issues
- None reported at release time
New Contributors
- @D3rJust1n made their first contribution in #169
- @pHamala made their first contribution in #181
- @DesignerThan95 made their first contribution in #184
Full Changelog: 1.2.1...1.3.0
Release v1.2.x
v1.2.0 brings significant enhancements to settings management, improved localization support with new languages, enhanced form flexibility, and better deployment capabilities. This release focuses on user customization, accessibility improvements, and making Tracktor more adaptable to diverse deployment scenarios and user preferences.
Major Features
Enhanced Settings Management
- Settings: Comprehensive settings interface with organized configuration options
- Fuel Unit Configuration: Configurable fuel units for different fuel types (CNG, LPG)
- Mileage Unit Formats: Support for both distance-per-fuel (km/L, mpg) and fuel-per-distance (L/100km) display formats
- Auto-complete Inputs: Improved form experience with auto-complete support for common fields
- Timezone Management: Canonical IANA timezone list for consistent cross-platform time handling
Expanded Internationalization Support
- New Languages:
- Italian (it) localization added with complete translations
- Hungarian (hu) localization support
- Arabic (ar) localization with RTL (Right-to-Left) support
- RTL Language Support: Enhanced UI components to properly handle right-to-left languages
- Improved i18n Infrastructure:
- Added
languageTagsandsourceLanguageTagto settings for better localization support - Enhanced submit button with localized login button text
- Updated message handling across all forms and components
- Added
Flexible Data Input
- Optional Fields: Made odometer and fuel volume optional in fuel logs for greater flexibility
- Extended Vehicle Years: Updated vehicle year constraint to support vehicles from 1900 onwards
- Validation Improvements: Auto-switch to tabs containing validation errors for better user feedback
Deployment & Infrastructure
- Reverse Proxy Support: Added base URL configuration for deployment behind reverse proxies
- Enhanced Documentation: New comprehensive guide for reverse proxy deployment scenarios
UI/UX Improvements
Enhanced Components
- Pagination: Added pagination ellipsis in AppTable component for improved navigation of large datasets
- Dialog Positioning: Improved positioning and styling for dialog components and vehicle details modal
- Import Layout: Refactored import button layout with enhanced loading state handling in FuelLogImportForm
- Form Feedback: Better error messaging and auto-navigation to fields with validation errors
Styling & Accessibility
- RTL Language Support: Proper text alignment and layout for right-to-left languages
- Consistent Formatting: Improved submit button formatting across all forms
- Mobile Responsiveness: Enhanced mobile experience for settings and configuration screens
Bug Fixes & Improvements
Critical Fixes
- Fixed localization support with proper language tag configuration
- Corrected Italian translation typos in recurrence messages
- Fixed formatting and linting issues across the codebase
Code Quality
- Upgraded all dependencies to latest stable versions (performed twice during release cycle)
- Removed unnecessary dependencies for improved bundle size
- Fixed various formatting and linting errors for better code maintainability
- Enhanced TypeScript type safety across components
Technical Changes
Database Migrations
- 20260120190621: Made odometer and volume fields optional in fuel_logs table
- 20260120190820: Added configuration entries for:
- Mileage unit format (distance-per-fuel vs fuel-per-distance)
- LPG fuel unit configuration (litre)
- CNG fuel unit configuration (kilogram)
Configuration System
- Enhanced settings schema to support fuel type-specific unit configurations
- Added mileage display format preferences
- Improved configuration category organization
Localization Files
- Added complete Italian translation file (messages/it.json)
- Added complete Hungarian translation file (messages/hu.json)
- Updated Arabic translation file with RTL support enhancements
- Fixed translation inconsistencies across all language files
Migration Notes
- No breaking changes from v1.1.0
- Optional fields in fuel logs maintain backward compatibility
- New configuration entries are automatically seeded during migration
- Existing data remains fully compatible with new optional field structure
Contributors
Special thanks to:
- @albanobattistella for Italian localization
- @daunera for settings modal implementation and fuel unit configurations
- All community members who reported issues and provided feedback
Known Issues
- None reported at release time
For detailed commit history, see the compare view.
Release - v1.1.0
Overview
v1.1.0 introduces comprehensive internationalization (i18n) support across the entire application, enhanced customization capabilities, improved vehicle management, and significant UI/UX refinements. This release also includes important bug fixes and code quality improvements.
Major Features
Internationalization (i18n) & Localization Support
- Complete i18n infrastructure implementation for multilingual support
- Localized messages across all UI components, forms, and notifications
- Support for English, German, Spanish, French, and Hindi
- Dynamic message functions for:
- Fuel types and fuel log management
- Recurrence and reminder labels
- Insurance and pollution certificate expiry alerts
- Maintenance and pollution tracking
- Custom field labels and descriptions
- Delete confirmation dialogs and form validations
- Consistent localization across dashboard, settings, vehicle details, and all log management sections
Data Import & Recurrence Management
- CSV file import support for bulk fuel log imports
- Recurrence support for insurances, PUCC (Technical Examination), and reminders
- Automated next due date calculation for insurances and pollution certificates
- Enhanced tracking for recurring maintenance and compliance activities
Advanced Customization & Configuration System
- Custom styling support with configurable CSS classes for UI elements
- Feature flag system for granular enable/disable functionality across features
- Configuration category management for organizing settings
- Enhanced settings interface with tabbed structure for better organization
- Support for custom fields in vehicles for extended data capture
Vehicle Management Enhancements
- Image upload and management improvements with default image support
- Option to remove existing vehicle images during edits
- Proper image preservation and state management in forms
- Enhanced vehicle details presentation with localized information
UI/UX Improvements
- Mobile-optimized tab navigation with improved responsiveness
- Improved file upload experience with refactored FileDropZone component
- Better file preview functionality on mobile devices
- Enhanced color consistency across VehicleCard, AppSheet, Header, and Notifications components
- Reintroduced attachment field in FuelLogForm for better usability
- Precomposed Apple touch icon for improved PWA experience
Bug Fixes & Improvements
Critical Fixes
- Fixed authentication disabled issue preventing user login
- Fixed critical bug preventing fuel log creation
- Corrected file drop zone ID bug affecting file uploads
UI/UX Fixes
- Fixed mobile file preview rendering issues
- Improved form error handling and validation messaging
- Enhanced error recovery in form submission handlers
Code Quality & Performance
- Refactored addAction handlers to remove unnecessary parameters and reduce complexity
- Refactored components to leverage localized message functions, improving maintainability
- Removed unused FeatureGateExample component and unnecessary dashboard page
- Updated all dependencies to latest stable versions
- Improved app directory initialization on startup
- Cleaned up environment variable configuration
DevOps & Infrastructure
- Upgraded Docker Build-Push Action to v6 for improved CI/CD reliability
- Enhanced Docker configuration and CORS handling
Technical Changes
Component & Architecture Refactoring
- Updated FuelLogForm, FuelLogList, and FuelLogTab to use message localization
- Refactored MaintenanceLogList, PollutionCertificateForm, and related components for localization
- Enhanced AreaChart, CostChart, and MileageChart with localized titles
- Improved Notifications component with localized notification text
- Better separation of concerns with message functions handling all text content
Data Management
- Refactored technical examination schema (previously separate, now integrated into recurrence support)
- Improved database initialization process
- Enhanced logging for better debugging and monitoring
Migration Notes
- No breaking changes from v1.0.0
- Existing data structures remain compatible
- New localization system is transparent to users - application automatically uses system language preferences
π Major Release - 1.x.x
Release Notes β v1.0.0 (2025-12-17)
Major Changes
- Migrated from separate backend/frontend to a full-stack SvelteKit app.
- Switched package management from npm to pnpm.
- Refactored middleware using the Chain of Responsibility pattern.
- Removed extra controller layer and cleaned up middlewares.
- Updated all shadcn UI components.
- Removed SSR and improved UI.
- Replaced common package APIResponse and updated imports.
- Added user/password authentication (single user mode).
- Added migration script and demo user seeding for auth.
- Dropped legacy auth table and removed crypto dependency from frontend forms.
Features & Improvements
- Added support for attachments for all logs and entries.
- Added alerts for expiry of PUCC and insurance.
- Added functionality to export/import data in JSON format.
- Added file upload limitation.
- Added HTTP mode and defaulted logging requests as true.
- Added preview for attached files and image upload improvements.
- Added --host to preview command.
- Created new Dockerfile and improved Docker support (fixed CORS).
- Refactored environment variable handling (separate client/server).
- Removed dotenvx dependency and updated build configuration.
- Upgraded Node.js to 24 and pnpm to 10 in CI workflow.
- Updated GitHub Actions and improved CI/CD.
Bug Fixes
- Fixed data seeding and data table rendering issues.
- Fixed warnings, linting issues, and broken components.
- Fixed error in mileage calculation.
- Fixed editing in attachment and form submitting issues.
- Fixed broken env for demo mode and improved logging.
- Fixed auth check and made auth single user.
- Fixed loggings and added DB patch step in initialization.
Other
- Removed tests and updated environment variables.
- General cleanup and code quality improvements.
For a full list of changes, see the compare view.
0.5.x
What's Changed
- Added Option to disable authentication by @javedh-dev in #110
- Add support for Progressive Webapp by @javedh-dev in #111
- Making VIN and LPN as non mandatory field and also adding required indicator on Form UI by @javedh-dev in #112
- Implement dynamic odometer tracking and mileage calculation by @javedh-dev in #113
- Added support for vehicle fuel type by @javedh-dev in #114
- 0.5.x by @javedh-dev in #115
- Show toast and log error on login failure by @javedh-dev in #116
- Show toast and log error on login failure by @javedh-dev in #117
Full Changelog: 0.4.4...0.5.0
v0.4.x
Highlights: π VIN display fix, vehicle images in cards, stronger backend logging & validation, tests added, and a breaking auth route rename.
What's new
- πΌοΈ Frontend: Vehicle images are now supported and displayed in the vehicle card β richer UI.
- π§Ύ Backend: Added structured logging using Winston for clearer, searchable logs.
- β Common: Multi-environment configuration added (dev/staging/prod) for safer deployments.
Improvements
- π Frontend: Fixed VIN number display so VINs render correctly in the UI.
- π Frontend: Added a fetch wrapper to standardize API calls (consistent error handling, headers, etc.).
- π¬ Frontend: Migrated to class-based stores for more consistent data fetching and state usage.
- π§° Backend: Added data validation via a common wrapper at the route level (improves request validation & reduces duplicate code).
βοΈ Backend: Added secondary sort for fuel logs filled on the same day (stable, predictable ordering).
Testing
- π§ͺ Frontend: Added frontend helper tests.
- π¬ Backend: Added backend API tests.
Breaking changes / Migration notes
β οΈ Backend: Auth route renamed from /api/pin to /api/auth β update any clients, integrations, or documentation to use /api/auth. This is a breaking change for consumers calling the old endpoint.
Developer / Ops notes
- π§ Logging: Winston configuration is in place β ensure log aggregation/forwarding is updated if you rely on a specific log format or transport.
- β»οΈ Validation: Route-level validation wrapper centralizes schema checks β review any custom per-route validation that may now be redundant.
- π Environments: Multi-environment config requires environment-specific variables; verify CI/CD and deployment configs contain the new keys.
Recommended actions
- Update all clients/integrations to use /api/auth instead of /api/pin.
- Verify logging/monitoring dashboards post-deploy (Winston format).
- Run full regression focusing on vehicle cards (VIN and images) and fuel log ordering.
- Confirm environment variables for each environment are present before deploying.
v0.3.x
What's Changed
- Update FUNDING.yml by @javedh-dev in #78
- fix: allow 0$ maintenance cost (closes #82) by @BeneUX in #84
- feat(fuel-log): add and retrieve fuel logs by license plate by @carloslp in #71
- Release 0.3.0 by @javedh-dev in #88
New Contributors
Full Changelog: 0.2.2...0.3.0
Added Partial Fuel Support
What's Changed
- add volume and distance units to fuel log form by @jake-walker in #70
- Add partial fuelling support by @jake-walker in #58
New Contributors
- @jake-walker made their first contribution in #70
Thanks @gubler for adding support for docker images for different arch types
Full Changelog: 0.2.1...0.2.2
Bug Fixes and Code Refactoring
What's Changed
Full Changelog: 0.1.3...0.2.0