Commit Graph

4101 Commits

Author SHA1 Message Date
João Vitória Silva
f43c65c9a2 Update gallery screenshots and documentation
Replaced login, reset password modal, and sign-up screenshots in the gallery. Updated gallery.md to specify that images should be 1000x1000 pixels. Also updated the login asset in the frontend.
v0.16.0-RC2
2025-12-08 15:41:50 +00:00
João Vitória Silva
a0a137e59a Update and expand documentation screenshots and gallery
Added new screenshots for health, settings, and authentication pages, updated several existing images, and removed obsolete ones. The gallery documentation was updated to reflect the new and reorganized screenshots, providing a more comprehensive and up-to-date visual overview of the application's UI. Minor formatting cleanups were also made in the developer and getting started guides.
2025-12-08 15:11:06 +00:00
João Vitória Silva
f39eacfde5 Move sleep scoring doc to features section
Added new 'Features' section in docs. Renamed 'sleep-scoring.md' from 'getting-started' to 'features' and updated mkdocs.yml navigation to reflect this change.
2025-12-08 14:45:31 +00:00
João Vitória Silva
b0c5b5f90d Dependency bump 2025-12-07 15:32:23 +00:00
João Vitória Silva
d65363f07e Add resting heart rate and skin temp deviation to sleep modal
Added fields for resting heart rate and average skin temperature deviation to the HealthSleepAddEditModalComponent, including support in form data, submission logic, and i18n translations for both English and Portuguese. Updated documentation to mention DB_HOST as a required environment variable. #426
2025-12-07 15:28:10 +00:00
João Vitória Silva
7d62434da2 Add sleep scoring system and refactor health sleep fields
Introduces a comprehensive sleep scoring module with detailed calculation logic and integration into health sleep creation and editing endpoints. Refactors HealthSleep model and schema to use integer types for heart rate, SpO2, respiration, and sleep stress fields. Updates related tests and documentation to reflect the new scoring system and data type changes.
2025-12-07 15:21:25 +00:00
João Vitória Silva
9bdbefca90 Refactor sleep metrics to use integer types
Changed heart rate, SpO2, respiration, and stress level fields from Decimal to Integer in backend models and schemas for consistency. Updated frontend modal to support unmeasurable sleep and removed nap time, aligning form fields and API payloads with backend changes. Adjusted data processing and validation logic to match new types and constraints.
2025-12-05 22:27:41 +00:00
João Vitória Silva
2683f38cea Add HealthSleepAddEditModalComponent and refactor sleep zone
Introduces HealthSleepAddEditModalComponent for adding and editing sleep records. Refactors HealthSleepZone.vue to use the new modal, improves code formatting and readability across health and activity components, and updates event handling for sleep data management.
2025-12-05 16:17:45 +00:00
João Vitória Silva
a4d52a8e03 health_sleep API add tests and route for create and delete
Added comprehensive unit tests for health_sleep CRUD, models, and router. Added route for creating and deleting sleep entries
2025-12-05 14:19:29 +00:00
João Vitória Silva
73f2bc3588 Refactor health_sleep API
Refactored backend health_sleep CRUD, models, router and schema for improved type safety, docstrings, and response structure. Added HealthSleepListResponse for paginated and total-count responses. Updated router endpoints to return total counts and records, and improved error handling. Added new route and CRUD function for deleting sleep and added frontend support for it. Simplified array update on update and delete actions for steps, weight and sleep on HealthView.vue alongisde i18n translations for new strings
2025-12-05 13:58:20 +00:00
João Vitória Silva
f748a395d9 Refactor health_targets API and add tests
Refactored backend health_targets CRUD, models, router and schema for improved type safety, docstrings, and response structure. Added comprehensive unit tests for health_targets CRUD, models, and router. Added missing emit in HealthSleepZone.vue
2025-12-05 13:12:30 +00:00
João Vitória Silva
086efd85bb Refactor health_steps API and add tests
Refactored backend health_steps CRUD, models, router, schema, and utils for improved type safety, docstrings, and response structure. Added HealthStepsListResponse for paginated and total-count responses. Updated router endpoints to return total counts and records, and improved error handling. Added comprehensive unit tests for health_steps CRUD, models, and router. Updated frontend service and view to match new API response format.
2025-12-05 12:58:05 +00:00
João Vitória Silva
99396433f5 Refactor health_weight API and add tests
Refactored backend health_weight CRUD, models, router, schema, and utils for improved type safety, docstrings, and response structure. Added HealthWeightListResponse for paginated and total-count responses. Updated router endpoints to return total counts and records, and improved error handling. Added comprehensive unit tests for health_weight CRUD, models, and router. Updated frontend service and view to match new API response format.
2025-12-05 12:01:36 +00:00
João Vitória Silva
72b3263a43 Update identity provider related UI text for consistency
Standardized capitalization and phrasing for identity provider related labels, modal titles, and button texts across settings components. This improves UI consistency and clarity for users managing identity providers and user authentication.
2025-12-04 14:48:38 +00:00
João Vitória Silva
19e319f713 Update goal modal and list titles for consistency
Changed capitalization in goal modal and list component i18n files to use sentence case for titles and labels, improving consistency across UI text.
2025-12-04 14:41:20 +00:00
João Vitória Silva
b7e6d2419b Update identity provider modal i18n for consistency
Standardized capitalization and phrasing in identityProvidersAddEditModalComponent.json to improve consistency and readability of UI labels and help texts.
2025-12-04 14:39:18 +00:00
João Vitória Silva
61a05f4e0e Refactor health sleep tab labels for consistency
Replaced specific avg/max/min labels with generic ones in HealthSleepListTabsComponent and updated i18n keys accordingly. This simplifies label management and improves consistency across heart rate, SpO2, and respiratory rate sections.
2025-12-04 14:29:00 +00:00
João Vitória Silva
e87aadf2c4 Reorder and add i18n paths in Crowdin config
Updated crowdin.yml to reorder translation path entries and add new paths for healthSleepZone, healthStepsZone, and settingsIdentityProvidersZone. This improves organization and ensures new translation files are included in Crowdin sync.
2025-12-04 12:23:54 +00:00
João Vitória Silva
5fbd9052d3 Refactor bulk import to use thread pool executor
Replaces FastAPI BackgroundTasks with a ThreadPoolExecutor for bulk activity import, queuing all files for processing in a single thread pool task. Adds process_all_files_sync to handle sequential file processing and database session management, improving scalability and resource usage. #399
2025-12-04 11:51:13 +00:00
João Vitória Silva
caba01be97 Merge pull request #428 from johanngrobe/docs
add bare-metal docs
2025-12-04 10:54:02 +00:00
Johann Grobe
256c176133 adjustments to bare-metal docs 2025-12-03 23:25:28 +01:00
João Vitória Silva
8295a66719 Update TRADEMARK.md v0.16.0-RC1 2025-12-03 22:24:47 +00:00
João Vitória Silva
b526b0386d Update dependencies and remove unused peer fields
Added max_heart_rate to authStore.js #390
Upgraded several backend Python packages (anyio, garminconnect, joserfc, psycopg, psycopg-binary, psycopg-pool, trove-classifiers) and frontend npm packages (@asamuzakjp/dom-selector, @csstools/css-syntax-patches-for-csstree, @eslint/eslintrc). Also removed unused 'peer' fields from multiple entries in package-lock.json for cleaner dependency management.
2025-12-03 22:05:00 +00:00
João Vitória Silva
3f63345d36 Merge branch 'pr/390' into 0.16.0 2025-12-03 21:55:53 +00:00
João Vitória Silva
a6a53e513a Update config paths and docs for environment variables
Changed DATA_DIR to use BACKEND_DIR for consistency in config.py and removed unused import in fit/utils.py. Added documentation for FRONTEND_DIR, BACKEND_DIR, DATA_DIR, and LOGS_DIR environment variables in advanced-started.md to clarify their usage.
2025-12-03 16:18:13 +00:00
João Vitória Silva
0bc50fefff Add FIT file_id parsing and tracker info extraction
Introduces parsing of the FIT file_id frame to extract manufacturer, product, serial number, and creation time. Updates activity object creation to include tracker manufacturer and model, and propagates file_id data through parsing and splitting functions for improved device metadata handling.
2025-12-03 14:30:52 +00:00
João Vitória Silva
05f6602fae Fix swimming pace calculation for missing data
Updates the pace calculation logic to handle cases where split_summary and lengths are missing for lap swimming activities, defaulting to the standard pace calculation.
2025-12-02 17:54:19 +00:00
João Vitória Silva
1b7c7da4de Add support for swimming lengths in FIT file parsing
Introduces parsing and handling of 'length' frames from FIT files, storing their data in a new 'lengths' array. Updates relevant functions to include and utilize 'lengths', particularly for more accurate swimming pace calculations based on active lengths.
2025-12-02 17:23:21 +00:00
João Vitória Silva
7b9b393c7f Merge branch 'pr/427' into 0.16.0 2025-12-02 16:48:34 +00:00
Johann Grobe
c88bbaab6c add bare-metal docs 2025-11-30 13:47:08 +01:00
João Vitória Silva
833202bd2a Refactor identity provider modals and icon handling
Simplifies and condenses the markup in IdentityProviderListComponent.vue and IdentityProvidersAddEditModalComponent.vue for better readability and maintainability. Updates icon handling to support both predefined names and custom URLs, and clarifies icon help text in i18n to reflect this behavior.
2025-11-28 21:19:21 +00:00
João Vitória Silva
5172684c14 Add Resting Heart Rate (RHR) zone to health dashboard
Introduces new components for displaying and managing Resting Heart Rate (RHR) data, including a line chart and list view. Updates the sidebar navigation to include an RHR section, adjusts the HealthView layout to support the new zone, and adds relevant i18n strings. Refactors steps and sleep zone components for consistency and improves prop naming and usage.
v0.16.0-Alpha5
2025-11-28 15:43:54 +00:00
João Vitória Silva
823549a902 Improve sleep and weight data handling and chart display
Refactored backend Garmin sleep processing to robustly handle enum validation and avoid errors from unknown values. Updated frontend sleep list to conditionally render the timeline chart only if sleep stages exist. Reverted change to HealthWeightLineChartComponent.vue
2025-11-28 14:42:01 +00:00
João Vitória Silva
5159d5f246 Enhance health weight chart with more metrics
Expanded the HealthWeightLineChartComponent to display additional metrics (BMI, body fat, body water, bone mass, muscle mass) alongside weight, each with its own dataset and axis. Improved tooltip formatting and axis labeling. Also refactored and cleaned up UsersListComponent markup for readability, and improved type annotations in UsersListComponent. Backend health_utils.py now includes stricter validation for Garmin data fields to prevent errors from invalid or missing values.
2025-11-28 14:14:18 +00:00
João Vitória Silva
b97b295bab Add detailed fields to weight add/edit modal
Expanded the HealthWeightAddEditModalComponent to include additional fields for BMI, body fat, body water, bone mass, and muscle mass, accessible via a collapsible section. Updated the i18n translations and ensured these new fields are handled in both add and edit flows, as well as reflected in the HealthView when weights are updated.
2025-11-28 11:34:30 +00:00
João Vitória Silva
1f30a31350 Refactor weight list components and add details view
Refactored HealthWeightZone and related components to use 'userHealthWeight' prop instead of 'data', improving naming consistency. Enhanced HealthWeightListComponent with a collapsible details section showing BMI, body fat, body water, bone mass, and muscle mass. Updated i18n strings to support new details fields. Also improved code formatting and removed unnecessary console logs.
2025-11-28 10:40:12 +00:00
João Vitória Silva
331cc9762c Enhance health dashboard and sleep details UI
Added new cards for sleep, resting heart rate, and skin temperature deviation to the health dashboard. Expanded HealthSleepListTabsComponent with detailed tabs for heart rate, SpO2, respiratory rate, and additional sleep metrics, including improved handling of missing data. Updated i18n files for new labels and units, and adjusted HealthSideBarComponent navigation order. Minor backend and script fixes for field naming and test data.
2025-11-27 18:17:16 +00:00
Lev Aronsky
cf30b410ab Ignore time_active for swimming activities without splits
When no `split_summary` is provided, treat `lap_swimming` activities active throughout the whole activity (thus, use the same calculation for pace as for other activity types).
2025-11-27 15:44:13 +02:00
João Vitória Silva
19e282ed26 Enhance sleep zone UI with improved labels and chart
Refactored HealthSleepListTabsComponent to add summary and breakdown sections with clearer labels and structure. Updated HealthSleepTimelineChartComponent to use internationalized y-axis labels and improved legend, ensuring better localization and clarity. Added new i18n keys for sleep stages and related labels in both component and general items translation files. Minor UI improvements for consistency and readability.
2025-11-27 12:16:37 +00:00
João Vitória Silva
399c954563 Add sleep target modal and improve sleep zone UI
Introduces a reusable ModalComponentHoursMinutesInput for setting sleep targets, integrates it into HealthSleepZone, and adds logic to update the user's sleep target. Enhances HealthSleepListTabsComponent with improved labels and i18n support, adds new utility functions for time conversion and health status mapping, and updates i18n files with relevant translations.
2025-11-27 10:27:54 +00:00
João Vitória Silva
836060d176 Inline health_sleep migration into main v0.16.0 migration
Moved the creation and removal of the health_sleep table from a separate migration file into the main v0_16_0_migration.py. Deleted the now-redundant v0_16_0_migration_health_sleep.py migration file to consolidate schema changes.
2025-11-26 22:40:00 +00:00
João Vitória Silva
8f36be66c8 Add sleep stress fields to HealthSleep model and schema
Introduces avg_sleep_stress and sleep_stress_score fields to the HealthSleep database model, schema, and migration. Updates health_utils to process and store these new sleep stress metrics from Garmin data.
2025-11-26 22:36:23 +00:00
João Vitória Silva
4cf4733e5e Add detailed sleep metrics and UI tabs for health sleep
Extended backend models, schema, and migration to support new sleep metrics such as HRV status, resting heart rate, skin temperature deviation, and sleep score breakdowns. Updated Garmin health utils to process and store these new fields. On the frontend, refactored HealthSleepListComponent to use a new HealthSleepListTabsComponent for tabbed sleep details, updated prop names for clarity, and added new i18n resources for the updated UI.
2025-11-26 22:22:23 +00:00
João Vitória Silva
087ca1f6a8 Add health sleep tracking feature to backend and frontend
Introduces health sleep tracking with new backend API endpoints, database schema updates, and CRUD logic. Adds frontend components for displaying, listing, and visualizing sleep data, including bar and timeline charts. Updates i18n resources and refactors health steps and weight components for consistency. Adds chartjs-adapter-date-fns and date-fns dependencies for improved chart date handling.
2025-11-26 11:50:28 +00:00
João Vitória Silva
3a9a77007d Add health sleep tracking support and models
Introduces backend support for health sleep data, including new models, CRUD operations, and schema in the health_sleep module. Adds Alembic migration for sleep data, updates Garmin health utilities, and integrates sleep data retrieval in aux_gc_getbcstats.py. Frontend sidebar and i18n files updated to reflect new health sleep features.
2025-11-25 16:36:31 +00:00
João Vitória Silva
e3f021094d Bump dependencies v0.16.0-Alpha4 2025-11-25 15:24:41 +00:00
João Vitória Silva
718d08656c Add steps target modal and update steps target logic
Introduced a new modal for setting the steps target in HealthStepsZone.vue, including UI changes to add a 'Steps target' button. Updated HealthView.vue to handle the new setStepsTarget event and update logic. Added related i18n strings for steps target actions and modal labels. Also set a default value for weight target in HealthWeightZone.vue.
2025-11-25 12:54:43 +00:00
João Vitória Silva
15f1278942 Add weight target editing to health section
Introduces the ability for users to set and update their weight target. Adds a new modal for weight target input, updates the backend API with a PUT endpoint for health targets, and connects the frontend to this endpoint. Also includes related i18n updates and minor UI improvements for integration modals.
2025-11-25 12:45:42 +00:00
João Vitória Silva
dba386990f Add target lines and labels to health charts
Enhanced Health dashboard, steps, and weight components to display user target values with visual indicators and updated i18n labels. Steps and weight charts now show dashed target lines if targets are set, and card footers display units and icons for progress direction.
2025-11-25 12:22:32 +00:00
João Vitória Silva
2cc06345e6 Unify health data models and migrations for steps and weight
Consolidates Alembic migrations for health_steps and health_weight into a single migration, removing redundant migration files. Refactors models and schemas to use a unified 'source' field (replacing garminconnect_body_composition_id) for both health_steps and health_weight, and updates related backend and frontend code to use this new field. Adds 'steps' to health_targets and updates enum usage for source fields. Frontend components now check 'source' for Garmin integration display.
2025-11-25 11:45:37 +00:00