Commit Graph

173 Commits

Author SHA1 Message Date
dependabot[bot] e754729e08 build(deps): bump react-router and react-router-dom in /frontend (#17)
Bumps [react-router](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router) to 7.12.0 and updates ancestor dependency [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom). These dependencies need to be updated together.


Updates `react-router` from 7.11.0 to 7.12.0
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router@7.12.0/packages/react-router)

Updates `react-router-dom` from 7.11.0 to 7.12.0
- [Release notes](https://github.com/remix-run/react-router/releases)
- [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md)
- [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@7.12.0/packages/react-router-dom)

---
updated-dependencies:
- dependency-name: react-router
  dependency-version: 7.12.0
  dependency-type: indirect
- dependency-name: react-router-dom
  dependency-version: 7.12.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-09 07:58:44 +01:00
Daniel Volz f41f6df558 fix: add .js extension to schema-sql imports for ESM compatibility (#15) v1.0.3 2026-01-02 15:41:58 +01:00
Daniel Volz 1a1931fd92 Merge pull request #13 from DanielVolz/docs/branch-protection-instructions
docs: Add branch protection warning and PR workflow to instructions
2026-01-01 20:14:40 +01:00
Daniel Volz 935d561d1a Merge branch 'main' into docs/branch-protection-instructions 2026-01-01 20:11:05 +01:00
Daniel Volz e5dc9d8a04 Merge pull request #14 from DanielVolz/fix/remove-test-path-filter
ci: remove paths filter to fix branch protection
2026-01-01 20:10:51 +01:00
Daniel Volz 271db4557d ci: remove paths filter from test workflow to fix branch protection 2026-01-01 20:08:53 +01:00
Daniel Volz eb42d67214 docs: Add branch protection warning and PR workflow to instructions 2026-01-01 19:53:56 +01:00
Daniel Volz 23759f1935 Merge pull request #11 from DanielVolz/copilot/remove-duplicate-code
Eliminate duplicate code: centralize database schema and date formatting utilities
2026-01-01 19:52:55 +01:00
copilot-swe-agent[bot] 1cb8dbdb95 Refactor frontend date formatting to eliminate duplication
Co-authored-by: DanielVolz <3275994+DanielVolz@users.noreply.github.com>
2026-01-01 12:46:11 +00:00
copilot-swe-agent[bot] 653e9e7fa8 Remove database schema duplication by creating shared schema-sql.ts module
Co-authored-by: DanielVolz <3275994+DanielVolz@users.noreply.github.com>
2026-01-01 12:42:53 +00:00
copilot-swe-agent[bot] b6d7470fb1 Initial plan 2026-01-01 12:36:49 +00:00
Daniel Volz 3aeaf8f3b9 Merge pull request #10 from DanielVolz/feat/issue-templates
docs: add GitHub issue templates
2025-12-30 14:12:52 +01:00
Daniel Volz f45e904f2f docs: add GitHub issue templates
- Bug report template with deployment type, browser info, logs
- Feature request template with affected area, priority
- Config with link to discussions and README
- Optimize test.yml to skip tests for non-code changes
2025-12-30 14:07:51 +01:00
Daniel Volz 31c5437859 Merge pull request #4 from DanielVolz/dependabot/npm_and_yarn/backend/multi-3b7ba0192e
build(deps): bump esbuild, @vitest/coverage-v8 and vitest in /backend
2025-12-30 13:55:55 +01:00
dependabot[bot] 316d976349 build(deps): bump esbuild, @vitest/coverage-v8 and vitest in /backend
Bumps [esbuild](https://github.com/evanw/esbuild) to 0.27.2 and updates ancestor dependencies [esbuild](https://github.com/evanw/esbuild), [@vitest/coverage-v8](https://github.com/vitest-dev/vitest/tree/HEAD/packages/coverage-v8) and [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest). These dependencies need to be updated together.


Updates `esbuild` from 0.21.5 to 0.27.2
- [Release notes](https://github.com/evanw/esbuild/releases)
- [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG-2024.md)
- [Commits](https://github.com/evanw/esbuild/compare/v0.21.5...v0.27.2)

Updates `@vitest/coverage-v8` from 2.1.9 to 4.0.16
- [Release notes](https://github.com/vitest-dev/vitest/releases)
- [Commits](https://github.com/vitest-dev/vitest/commits/v4.0.16/packages/coverage-v8)

Updates `vitest` from 2.1.9 to 4.0.16
- [Release notes](https://github.com/vitest-dev/vitest/releases)
- [Commits](https://github.com/vitest-dev/vitest/commits/v4.0.16/packages/vitest)

---
updated-dependencies:
- dependency-name: esbuild
  dependency-version: 0.27.2
  dependency-type: indirect
- dependency-name: "@vitest/coverage-v8"
  dependency-version: 4.0.16
  dependency-type: direct:development
- dependency-name: vitest
  dependency-version: 4.0.16
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-12-30 13:54:23 +01:00
Daniel Volz 12d5aeb0fb Merge pull request #9 from DanielVolz/fix/codeql-manual-trigger
ci: add explicit permissions to all workflow jobs
2025-12-30 13:43:15 +01:00
Daniel Volz 2d17fde8f1 ci: add explicit permissions to all workflow jobs 2025-12-30 13:40:17 +01:00
Daniel Volz fa15650f52 Merge pull request #8 from DanielVolz/fix/codeql-manual-trigger
ci: add manual trigger to CodeQL workflow
2025-12-30 13:16:02 +01:00
Daniel Volz dd716daa11 ci: add manual trigger to CodeQL workflow 2025-12-30 13:13:49 +01:00
Daniel Volz a80cc43b06 Merge pull request #7 from DanielVolz/fix/codeql-alerts
ci: add explicit permissions to workflows
2025-12-30 13:08:30 +01:00
Daniel Volz d405ff4b2b ci: add explicit permissions to workflows
Fixes CodeQL 'Workflow does not contain permissions' warnings.
Sets minimal 'contents: read' at top level.
2025-12-30 13:03:24 +01:00
Daniel Volz 9c70eead9b Merge pull request #6 from DanielVolz/feat/add-test-suite
Feat/add test suite
2025-12-30 12:54:29 +01:00
Daniel Volz 273d84e26c ci: switch to CodeQL Advanced Setup
- Add custom codeql.yml workflow
- Configure to use codeql-config.yml
- Exclude js/missing-rate-limiting rule (false positive)
  Rate limiting is implemented via @fastify/rate-limit plugin
2025-12-30 12:49:24 +01:00
Daniel Volz 6b54ecef4f chore: add CodeQL config to suppress rate-limit false positives
Rate limiting IS implemented via @fastify/rate-limit plugin:
- Global: 100 req/min (index.ts)
- Auth routes: 5-10 req/min via config.rateLimit option

CodeQL doesn't recognize Fastify's plugin-based rate limiting pattern.
2025-12-30 12:46:05 +01:00
Daniel Volz b8d5647980 security: add rate limiting to remaining auth routes 2025-12-30 12:42:42 +01:00
Daniel Volz cb1810586d security: fix CodeQL vulnerabilities (SSRF, XSS, rate limiting)
- Add URL validation to prevent SSRF attacks on notification endpoints
  - Block private IPs (10.x, 172.16-31.x, 192.168.x, 169.254.x)
  - Block localhost and internal hostnames
  - Only allow HTTP/HTTPS protocols
- Add HTML escaping for medication names in email templates (XSS)
- Add stricter rate limiting for auth routes (5 req/15min for login/register)
- Add SSRF protection tests (405 tests total)
2025-12-30 11:52:00 +01:00
Daniel Volz b5e12c7a95 docs: add testing and CI/CD documentation 2025-12-30 11:40:59 +01:00
Daniel Volz 3364f23196 Merge pull request #5 from DanielVolz/feat/add-test-suite
ci: Add test suite and CI pipeline
2025-12-30 11:36:09 +01:00
Daniel Volz e5038e9843 ci: prevent duplicate test runs - tests only on PRs, inline tests for builds 2025-12-30 11:30:12 +01:00
Daniel Volz d80b5243b3 Merge pull request #3 from DanielVolz/feat/add-test-suite
feat: add comprehensive test suite and CI pipeline
2025-12-30 11:19:36 +01:00
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