Commit Graph

101 Commits

Author SHA1 Message Date
João Vitória Silva
5d2c783460 Add user IdP linking and MFA setup modals
Implements endpoints and frontend modals for users to link/unlink external identity providers (IdPs) to their accounts, including backend logic for secure OAuth linking and session management. Adds ModalComponentMFASetup for multi-factor authentication setup, refactors modal input components for accessibility and consistency, and updates documentation and trademark policy. Adjusts scope constants and permissions for identity provider management.
2025-10-17 16:19:57 +01:00
João Vitória Silva
c5a681a2f9 Drop MariaDB support and update dependencies
Removed MariaDB support from documentation and backend code, standardizing on PostgreSQL as the only supported database. Updated backend dependencies in poetry.lock and pyproject.toml, removing mysqlclient and updating several packages. Documentation and example files were updated to reflect the database change.
2025-10-10 12:28:02 +01:00
João Vitória Silva
ca6799f7e9 Merge branch 'backend-session-module-revamp' into 0.16.0 2025-10-06 21:23:15 +01:00
João Vitória Silva
f9e3101156 Refactor session token handling and router dependencies
Replaces get_user_id_from_access_token/refresh_token with get_sub_from_access_token/refresh_token and introduces get_sid_from_access_token/refresh_token for session ID extraction. Updates all router dependencies to use new methods, refactors session CRUD to use session ID instead of hashed refresh token, and improves token creation and validation logic for more robust session management. Also updates session_utils and token_manager to support new session ID claim and token structure.
2025-10-06 13:29:29 +01:00
João Vitória Silva
90cdae9072 Improve gear nickname parsing and update Strava import docs
Enhanced gear nickname parsing by stripping whitespace after decoding in gear CRUD functions. Updated documentation for Strava bulk import to clarify import steps, note removal of '+' and whitespace, and correct development timelines for shoes and activity metadata imports.
2025-10-04 21:11:01 +01:00
João Vitória Silva
7ebd829cf0 Add MFA authentication flow documentation
Documents the multi-factor authentication (MFA) login flow, including request/response formats for web and mobile clients, error handling, and important notes about session management. This addition clarifies the two-step authentication process for users with MFA enabled.
2025-10-02 16:16:32 +01:00
João Vitória Silva
5bc2ea61f7 Merge branch 'pr/285' into 0.15.0 2025-10-02 09:27:51 +01:00
João Vitória Silva
3c081169f4 New Sports: Padel and Football #353
Add new Padel and Football sport types
2025-09-24 12:09:44 +01:00
João Vitória Silva
38635cbb10 Add ice skating as an activity type #352
Add ice skating as an activity type #352 and fix some mappings
2025-09-24 11:25:34 +01:00
João Vitória Silva
1cc785210c Add E-Mountain Bike activity type support
Introduces activity type 36 for E-Mountain Bike ride in backend activity and user goals utilities. Updates mapping and calculation logic to include E-Mountain Bike rides as bike activities. Also updates documentation and i18n files to reflect the new activity type. Dependency bump
2025-09-10 09:37:49 +01:00
João Vitória Silva
8d9c5bca73 Merge branch 'master' into pre-release 2025-09-10 09:26:19 +01:00
João Vitória Silva
4e39c74165 Add E-Bike ride activity type (ID 35)
Introduces E-Bike ride as a new activity type (ID 35) across backend, frontend, and documentation. Updates mappings, i18n labels, modal options, cycling type checks, icon assignment, and search filtering to support E-Bike rides.
2025-09-10 09:26:13 +01:00
Marc @PDev1 server
17c8f1ffe8 Updating docs for bike import. 2025-09-09 20:37:21 +00:00
Marc @PDev1 server
6229fa3617 Updating branch to v0.14.0 2025-09-09 20:15:18 +00:00
João Vitória Silva
c1f5fd7b63 Update gallery photos with v0.14.0 changes 2025-09-06 18:22:41 +01:00
João Vitória Silva
ed128585e3 Merge branch 'copilot/fix-274' into pre-release 2025-09-04 14:19:27 +01:00
João Vitória Silva
97eb4bc829 Update SMTP config and docs for email notifications
Changed example SMTP settings in .env.example to use ProtonMail and generic email address. Added detailed SMTP environment variable documentation to advanced-started.md. Updated index.md to mention Apprise and password reset via email.
2025-09-04 12:28:30 +01:00
João Vitória Silva
59517b5c55 Add MFA TOTP support to documentation
Updated docs to mention new MFA TOTP support. Also updated screenshot_01.png to reflect recent changes.
2025-09-02 17:02:26 +01:00
João Vitória Silva
6497982097 Add goals tracking to feature list
Updated the documentation to include 'Define and track goals' as a supported feature in Endurain.
2025-09-02 11:34:15 +01:00
João Vitória Silva
2beab9fafc Refactor reverse geocoding config and update dependencies
Renamed geocoding-related config variables for clarity and consistency, defaulted REVERSE_GEO_PROVIDER to 'nominatim', and updated related usages in activity utils. Removed unused GEOCODES_MAPS_API from .env.example. Updated documentation and example compose file to reflect changes. Upgraded Python dependencies in poetry.lock.
2025-09-02 10:05:36 +01:00
João Vitória Silva
cc06dbb857 Set geocode as default REVERSE_GEO_PROVIDER
Changed the default value of REVERSE_GEO_PROVIDER from 'nominatim' to 'geocode' in the configuration and updated the documentation to reflect this new default.
2025-08-19 10:27:10 +01:00
João Vitória Silva
ea8b4d05c7 Fix casing for 'Yes' in environment variables table
Corrected the casing of 'yes' to 'Yes' in the GEOCODES_MAPS_RATE_LIMIT row for consistency with other entries in the table.
2025-08-18 22:37:08 +01:00
João Vitória Silva
c422005fa9 Add Nominatim as reverse geocoding provider
Introduces support for Nominatim as a reverse geocoding provider alongside geocode and photon. Updates configuration and documentation to include NOMINATIM_API_HOST and NOMINATIM_API_USE_HTTPS environment variables, sets Nominatim as the default provider, and refactors related logic in utils.py.
2025-08-18 22:28:30 +01:00
João Vitória Silva
bbccf98bc4 Add 'Track run' activity type and update dependencies
Introduces 'Track run' as a new activity type in the backend, updating mappings and distance calculations accordingly. Removes debug print statements from FIT utils. Updates backend dependencies in poetry.lock and pyproject.toml, and bumps API version to v0.13.4. Adds new ignore rules for import error files in .gitignore. Minor updates to frontend components and i18n files.
2025-08-18 16:31:35 +01:00
João Vitória Silva
4447bced5a Update gear type mappings and docs for consistency
Standardized gear type names in GEAR_ID_TO_NAME and GEAR_NAME_TO_ID, correcting typos and adding common variations. Updated the developer guide to reflect these changes and ensure consistency between code and documentation.
2025-08-01 14:49:51 +01:00
Marc @PDev1 server
a232008028 Updating developer guide with the backend locations of activity, gear type, and gear component definitions. 2025-07-31 16:15:02 +00:00
Marc Perkins
6ac10e2a6f Fixing typo in docs.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-07-30 21:05:43 +03:00
João Vitória Silva
96276ce751 Update directory structure in getting started guide
Replaced references to 'config' directory with 'data' in backend and app paths to reflect updated directory structure in the documentation.
2025-07-30 09:16:28 +01:00
Marc @PDev1 server
6cbb65dc8a Adding specifics of what should be in the bikes.csv file. 2025-07-29 18:02:34 +00:00
Marc @PDev1 server
161e5698b0 Updating documentation to align with new folder structure and include bike import instructions. 2025-07-29 17:57:19 +00:00
fyksen
fd3c7da616 getting-started reflects compose file, and repo
Added a note about adding repoes for old-ish distroes (that doesn't support docker compose V.2 (`docker compose`, instead of `docker-compose`))

Updated path to reflect the directory structure of the docker-compose example file.
2025-07-29 12:41:08 +02:00
João Vitória Silva
22dbfc4e52 Merge branch 'pr/269' into pre-release 2025-07-25 10:43:04 +01:00
João Vitória Silva
d22904986c Add support for stand up paddling and surf activities
Introduces new activity types for stand up paddling (32) and surf (33) across backend and frontend, including mapping, UI options, i18n labels, and search filters. Adds gear type 8 (water sports board) with corresponding backend validation, model updates, documentation, and frontend display logic, including new avatar image and translations.
2025-07-25 10:03:46 +01:00
João Vitória Silva
a1361a6ce6 Update docs for gear component tracking and notifications
Moved gear component tracking and notification system from planned to supported features. Updated Spanish translation credits to include @tinchodin.
2025-07-23 10:14:03 +01:00
João Vitória Silva
52cc5cc9f7 Fix gear component usage calculation and update docs
Corrected the logic for updating gear component distance and time to properly account for purchase and retired dates. Also fixed formatting and clarified provider names in the advanced getting started documentation.
2025-07-21 22:02:47 +01:00
João Vitória Silva
ec2fbbc44e Add Photon reverse geocoding provider support
Introduces support for the Photon reverse geocoding provider alongside Geocode, with new environment variables for provider selection and configuration. Updates backend logic to handle both providers, adjusts frontend location formatting, and documents new configuration options.
2025-07-21 16:28:58 +01:00
João Vitória Silva
4956feae8d Add indoor walk activity type and tracker fields
Introduces activity type 31 (Indoor walk) across backend and frontend, updates activity type mappings, and adds tracker_manufacturer, tracker_model, and import_info fields to the Activity model and schema. Updates Alembic migrations, improves activity media import/export logic, and standardizes Pydantic model config usage. Also updates documentation and docker-compose examples to use the new data directory.
2025-07-21 13:42:09 +01:00
João Vitória Silva
49159739e4 Suggestion for clearer folder naming in v0.13 #252 2025-07-18 10:15:34 +01:00
João Vitória Silva
837764a0ca Add windsurf default gear & support .tcx/.gz files docs mention
[backend] add column windsurf_gear_id to users_default_gear
[backend] update comment on gear_type column on gear table
[docs] update docs to include .tcx and .gz
[frontend] updated translations to include .gz files on HomeView
[frontend] added windsurf default gear selection on profile settings
[README] update to include .tcx
2025-07-16 11:54:37 +01:00
João Vitória Silva
2fc81ebf1e Add initial windsurf support 2025-07-15 21:40:03 +01:00
João Vitória Silva
6ff80c52ae Merge branch 'pr/239' into 0.13.0 2025-07-14 17:26:08 +01:00
João Vitória Silva
f8cc5186ac Merge branch 'pr/244' into 0.13.0 2025-07-14 17:23:02 +01:00
Marc @PDev1 server
04272f887c Adding note to create folder. 2025-07-09 07:05:47 +00:00
Marc @PDev1 server
96d1e9b209 Adding basic instructions for a bulk import, and fixing some formatting. 2025-07-09 07:01:37 +00:00
João Vitória Silva
69639b4730 Implement throttling against geocode.maps.co API
Implement throttling against geocode.maps.co API #201
2025-07-07 15:25:18 +01:00
João Vitória Silva
e1f3bb3432 Started notifications logic
[backend] started notifications logic
[docs] added gear components valid types to docs
[frontend] started notifications logic
2025-07-01 16:11:36 +01:00
rmalesevich
a7f95feebd Align doc to the docker-compose example and fix link to .env file 2025-07-01 09:34:14 -05:00
João Vitória Silva
811a6d19ec Merge branch 'master' into feature-gear-components 2025-06-30 16:42:01 +01:00
João Vitória Silva
814f3c7768 Add support for mixed surface cycling
[backend] added support for activity type mixed_surface_cycling
[frontend] added support for activity type mixed_surface_cycling
[frontend] centralized activity type validation for cycling and running on activityUtils
2025-06-30 10:49:03 +01:00
João Vitória Silva
2dec50cd4a Extend import support & fix health_data unique constraint
[backend] added support for activities, health_data, user image and user activity files to import feature
[backend] fixed issue on health_data where date on health_data table was set has unique, not allowing two or more users have an entry for the same day
[docs] fixed volumes on docker examples and docs based on change made on v0.12.4
[docs] added volume server_images on getting started
2025-06-27 15:23:21 +01:00