Commit Graph

143 Commits

Author SHA1 Message Date
Daniel Volz 2b16e2c7dc ci: only build docker images on main/tags, not on PRs 2025-12-30 11:18:01 +01:00
Daniel Volz ba3ebd27f4 feat: add comprehensive test suite and CI pipeline
- Add 402 unit tests with 61.7% code coverage
- Add Vitest configuration with coverage reporting
- Extract testable utility functions from services
- Create test.yml workflow (runs on PR and push to main)
- Update docker-build.yml to require tests before building
- Add scheduler-utils.ts and server-config.ts for testable code

Test files added:
- auth.test.ts, medications.test.ts, planner.test.ts
- settings.test.ts, doses.test.ts, share.test.ts
- database.test.ts, server.test.ts, services.test.ts
- env.test.ts, translations.test.ts, integration.test.ts
- e2e-routes.test.ts, stock-calculation.test.ts
2025-12-30 11:14:52 +01:00
Daniel Volz fe9310d3d4 feat: update version to 1.0.2 and rename strip terminology to blister in medication and planner routes 2025-12-30 00:07:28 +01:00
Daniel Volz f2b20a8ffc chore: remove secondary remote push prompts from release script 2025-12-29 23:57:04 +01:00
Daniel Volz 093aa419af chore: release v1.0.2 v1.0.2 2025-12-29 23:55:00 +01:00
Daniel Volz 8132da3c3d feat: update package versions to 1.0.1, improve dose tracking timestamp logic, and enhance release script for signed tags 2025-12-29 23:54:29 +01:00
Daniel Volz 2b59233af2 chore: release v1.0.1 v1.0.1 2025-12-29 22:34:52 +01:00
Daniel Volz f341a2aad2 feat: update package versions to 1.0.0 and enhance release script for secondary remote support 2025-12-29 22:33:23 +01:00
Daniel Volz 263033adfd feat: implement dose tracking cleanup on medication start date change 2025-12-29 22:28:18 +01:00
Daniel Volz 4e2920ddfc feat: update workflow triggers to include paths for push and pull request events 2025-12-29 21:12:46 +01:00
Daniel Volz f7ffefb719 feat: update MedAssist demo GIF for improved visual representation 2025-12-29 21:10:48 +01:00
Daniel Volz c7f81a301f feat: add release script for version management and tagging 2025-12-29 21:07:46 +01:00
Daniel Volz f32c8c2e20 Refactor code structure for improved readability and maintainability v1.0.0 2025-12-29 20:54:47 +01:00
Daniel Volz cf37400d34 feat: reset planner and range on user change for improved state management 2025-12-29 20:29:46 +01:00
Daniel Volz 85c411ba88 feat: add 'and' operator import for enhanced query capabilities 2025-12-29 20:03:38 +01:00
Daniel Volz 48ee9af536 feat: update dose retrieval to remove 30-day limit and add sharedBy field in share routes 2025-12-29 20:00:25 +01:00
Daniel Volz c378d373d8 feat: enhance dose tracking with takenBy parsing and visual indicators 2025-12-29 19:31:34 +01:00
Daniel Volz 666306b416 Refactor medication model to use blisters and pills instead of strips and tabs
- Updated medication schema to replace stripsPerPack and tabsPerStrip with blistersPerPack and pillsPerBlister.
- Adjusted medication routes to handle new blister and pill structure, including calculations for total pills.
- Modified frontend components to reflect changes in medication data structure and ensure compatibility with new backend logic.
- Updated reminder scheduler and share routes to utilize the new medication model.
- Enhanced Docker configuration for better permissions handling during development.
2025-12-29 19:18:14 +01:00
Daniel Volz dc0e364830 docs: simplify disclaimer in README.md for clarity 2025-12-28 23:36:51 +01:00
Daniel Volz 57da1bb6eb feat: add automated release workflow 2025-12-28 22:50:57 +01:00
Daniel Volz 6cfdeca45b docs: add acknowledgements section to README.md 2025-12-28 22:40:22 +01:00
Daniel Volz 7cd3382330 Merge pull request #1 from DanielVolz/dependabot/npm_and_yarn/backend/nodemailer-7.0.11
build(deps): bump nodemailer from 6.10.1 to 7.0.11 in /backend
2025-12-28 22:37:05 +01:00
Daniel Volz 7cc32c88d8 fix: update Docker images to use latest versions and add GitHub Actions workflow for building and pushing 2025-12-28 22:32:04 +01:00
dependabot[bot] 2bf5ec557f build(deps): bump nodemailer from 6.10.1 to 7.0.11 in /backend
Bumps [nodemailer](https://github.com/nodemailer/nodemailer) from 6.10.1 to 7.0.11.
- [Release notes](https://github.com/nodemailer/nodemailer/releases)
- [Changelog](https://github.com/nodemailer/nodemailer/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nodemailer/nodemailer/compare/v6.10.1...v7.0.11)

---
updated-dependencies:
- dependency-name: nodemailer
  dependency-version: 7.0.11
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-28 21:30:36 +00:00
Daniel Volz a2036ce9f5 Remove package.json file from the repository 2025-12-28 22:19:28 +01:00
Daniel Volz 000677da61 Refactor code structure for improved readability and maintainability 2025-12-28 21:46:54 +01:00
Daniel Volz b65c7e7b49 fix: update dose tracking to support both new and legacy formats for taken doses 2025-12-28 20:28:51 +01:00
Daniel Volz 3b77d484c4 fix: enhance defensive coding for takenBy property in medication details 2025-12-28 20:02:14 +01:00
Daniel Volz 0ad98c26fc fix: ensure safe access to takenBy property to prevent errors 2025-12-28 19:55:33 +01:00
Daniel Volz 69ca8fd3ba feat: implement per-person dose tracking and update migration process
- Enhanced the database migration process to ensure compatibility with existing production databases, including detailed steps for adding/modifying columns.
- Updated the client-side logic to support tracking doses taken by multiple users, including changes to the data structure and UI components.
- Added new styles for per-person dose tracking to improve user experience and visual clarity.
2025-12-28 19:47:14 +01:00
Daniel Volz c7ac7fbf75 feat: remove icons from stock calculation mode settings for cleaner UI 2025-12-28 18:46:38 +01:00
Daniel Volz 0a85b1725a feat: add form state management and reset functionality in medication editor 2025-12-28 18:41:22 +01:00
Daniel Volz 618190d20d feat(i18n): add pill emoji to medication reminder titles for better visibility 2025-12-28 18:27:32 +01:00
Daniel Volz 4a6aab338f feat: migrate taken_by to taken_by_json for multi-person support
- Added `taken_by_json` column to `medications` table to store an array of names.
- Updated migration scripts to convert existing `taken_by` data into JSON format.
- Modified backend routes to handle the new `taken_by_json` structure, including parsing and filtering logic.
- Updated frontend to support multi-value input for "Taken By" using tags.
- Adjusted validation and state management for the new array format in forms.
- Enhanced UI for displaying multiple names and added autocomplete suggestions for input.
- Updated translations for input placeholders to reflect new functionality.
- Added CSS styles for tag input components.
2025-12-28 18:22:32 +01:00
Daniel Volz abffd66e9c feat: add expiration date to share tokens and enhance error handling for expired links 2025-12-28 17:47:49 +01:00
Daniel Volz 0e52a03f7a feat: add stock calculation mode to user settings with automatic and manual options 2025-12-28 15:03:24 +01:00
Daniel Volz 78ee668c8b feat: enhance medication reminder system with improved notifications and user settings updates
- Added new translation keys for empty and low stock notifications in both English and German.
- Implemented user authentication for planner routes and improved user settings loading.
- Separated empty and low stock medications for clearer notifications.
- Enhanced email notifications with detailed alerts for empty and low stock medications.
- Updated user settings in the database when reminders are sent for both intake and stock notifications.
- Improved form validation in the frontend with character limits and error messages.
- Added CSS styles for form validation feedback and character count display.
2025-12-28 14:42:51 +01:00
Daniel Volz 30156ebd60 feat(ui): increase notes character limit to 2000 and add auto-resize functionality for textareas 2025-12-28 13:51:57 +01:00
Daniel Volz 47ae762e72 feat(ui): improve table layout with left-aligned text and status chips 2025-12-28 13:26:14 +01:00
Daniel Volz fad92a0b24 feat(ui): enhance email status bar layout with improved styling and responsiveness 2025-12-28 13:14:47 +01:00
Daniel Volz b539738d1e feat(ui): adjust button styles for better accessibility and consistency 2025-12-28 13:08:54 +01:00
Daniel Volz e386ce1fcb feat(ui): enhance tabs styling with improved hover effects and primary state 2025-12-28 12:56:32 +01:00
Daniel Volz 8fcf96997b feat(ui): refine user menu button styles and add dropdown item danger state 2025-12-28 12:53:37 +01:00
Daniel Volz fcd8d0da14 feat(ui): implement modal background scroll prevention and enhance button styles 2025-12-28 12:47:54 +01:00
Daniel Volz d60aeff7bd feat(ui): enhance medication detail modal layout and improve scrolling behavior 2025-12-28 12:07:36 +01:00
Daniel Volz 415dd87117 feat(ui): improve modal footer layout and enhance mobile form styling 2025-12-28 11:56:55 +01:00
Daniel Volz fb1732bd4a feat(ui): update medication icons alignment and styling for improved mobile display 2025-12-28 11:23:57 +01:00
Daniel Volz 02caa0619e feat(ui): enhance medication display layout and improve responsiveness in App component 2025-12-28 11:03:33 +01:00
Daniel Volz 0ecb892a15 feat: add Escape key handling to close modals and dialogs in App and UserProfile components 2025-12-28 03:07:08 +01:00
Daniel Volz f3da765f7c feat(db): add new columns to medications and users tables for enhanced data tracking
feat(oidc): refactor setAuthCookies to use centralized cookie options for consistency
feat(nginx): update configuration to pass cookies through proxy for improved session handling
2025-12-28 02:32:45 +01:00