210 Commits
Author SHA1 Message Date
rmcampos a96a113f49 chore: fix ngrok setup to run locally
Frontend CD / build (push) Failing after 2m31s
2026-08-07 15:55:04 +02:00
rmcampos 923617bdff chore: bump all client deps to latest in minor target 2026-08-07 15:29:29 +02:00
rmcampos 5ef96002cc chore: bump all client deps to latest in patch target 2026-08-07 14:54:03 +02:00
rmcampos d08f611174 feat: add link to changelog from sidebar version 2026-08-07 14:52:23 +02:00
rmcampos 4993b1e806 feat: add notes archival option before deleting (#20)
Frontend CD / build (push) Successful in 4m59s
Backend CD / build (push) Successful in 22m37s
# What

- Add archiving notes option
- Notes should be archived before deleting.

# Why

- Makes the flow more clear and follow the same pattern as other app.Reviewed-on: #20
2026-07-28 13:52:19 +00:00
rmcampos 7b45e2ccbd feat: add completed tasks and delete confirm (#19)
Backend CD / build (push) Successful in 4m32s
Frontend CD / build (push) Successful in 4m41s
# What

- Add confirm modal before deleting tasks and notes
- Add section with completed tasks

# Why

- That's because why.Reviewed-on: #19
2026-07-23 20:33:23 +00:00
rmcampos 1ebf89668d chore: small styling improvements
Frontend CD / build (push) Successful in 5m50s
2026-07-23 19:52:47 +02:00
rmcampos c9916a8475 fix: wrong styling in account page buttons 2026-07-23 18:48:21 +02:00
rmcampos 6803ae6ebc chore: bump minor deps to latest version
Frontend CD / build (push) Successful in 8m56s
2026-07-22 22:47:33 +02:00
renovate-botandrmcampos 231e091f5d chore(deps): update caddy docker tag to v2.11.4 (#9)
Frontend CD / build (push) Successful in 3m29s
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| caddy | final | minor | `2.10.2-alpine` → `2.11.4-alpine` |

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - At any time (no schedule defined)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yNTIuMSIsInVwZGF0ZWRJblZlciI6IjQzLjI1Mi4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

---------

Co-authored-by: Ricardo Campos <ricardompcampos@gmail.com>
Reviewed-on: #9
Co-authored-by: Renovate Bot <renovate-bot@lightroasted.vps-kinghost.net>
2026-07-22 20:33:24 +00:00
rmcampos 749ddbcdad fix: ghcr references and old files (#18)
Frontend CD / build (push) Successful in 4m45s
# What

- Closes #17

# Why

- Keep the repo updated with needed files onlyReviewed-on: #18
2026-07-22 20:22:05 +00:00
rmcampos dd15837d4d feat: add closing and saving button to modal. Closes #15 (#16)
Frontend CD / build (push) Successful in 5m7s
# What

- Closes #15

# Why

- Make users life easier.Reviewed-on: #16
2026-07-22 14:53:51 +00:00
rmcampos 0250b558cf Group three changes in a single PR (#13)
Main CI-Frontend / Build & Push (push) Successful in 46s
Main CI-Backend / Build & Push (push) Successful in 54s
## What

- fix: background image position moving around in the landing, login and register pages.
- chore: bump minor dependencies versions to latest version.
- feat: replace "Due in 1 day" and "Due in 0 days" to Time Ago format: "Due tomorrow" and "Due today".

## Why

- Keeping the app improving and updated.
- Date picker in mobile works better using the default/native.

## Mood
<img width="200" src="https://media0.giphy.com/media/TIiDh0ONXotAQpkw3f/giphy.gif?cid=5a38a5a2cea0tfjgne8sdpz1vz617kfqk02hnjrrjx34v08x&amp;ep=v1_gifs_search&amp;rid=giphy.gif&amp;ct=g" style="border:0;height:300px;width:300px"/>

Reviewed-on: #13
2026-07-20 16:40:53 +00:00
rmcampos acb08f7e14 feat: make notes keep open when suddenly closed (#7)
Main CI-Frontend / Build & Push (push) Successful in 39s
## What

- New feature allowing open notes to be restore, if the tab is closed

## Why

- Making users' life easier

## Mood
<img width="200" src="https://media3.giphy.com/media/S5uASkxZ5eGcwf2vHM/giphy.gif?cid=36b14facu3gasrwzy8axqb43wcuo1tsdjvjcslyk9t9jzvab&ep=v1_gifs_search&rid=giphy.gif&ct=g"/>

Reviewed-on: #7
2026-07-01 15:17:41 +00:00
rmcampos 1ff3ba964c feat: add draft notes (#6)
Main CI-Frontend / Build & Push (push) Successful in 28s
## What

- Add draft feature for notes and tasks.
- Update deploy workflows to use a single job.

## Why

- Draft is needed when the session expires and the user is editing.
- A single job is needed to avoid exposing a tfplan file

## Mood
<img width="200" src="https://media4.giphy.com/media/BwP0jedpcSOyOyIK2h/giphy.gif?cid=36b14facttlvjhc0remdjlv65reqb1qh98wy78m23ua0avsj&ep=v1_gifs_search&rid=giphy.gif&ct=g"/>

Reviewed-on: #6
2026-07-01 00:05:46 +00:00
rmcampos 169f07801a Security/critical fixes (#4)
Main CI-Frontend / Build & Push (push) Successful in 39s
Main CI-Backend / Build & Push (push) Successful in 45s
## What

- Addressing security issues: critical and not so critical (more fixed will be pushed soon)

## Why

- The app needs to be secure and safe.

## Mood
<img width="200" src="https://media2.giphy.com/media/CSpfd57m9WGHnxMWXm/100.webp?cid=36b14facw100seggylsefdj0ap2oopoux3bn3jn6qu59xggq&ep=v1_gifs_search&rid=100.webp&ct=g"/>

Reviewed-on: #4
2026-06-29 19:23:41 +00:00
rmcampos a55a80e916 chore: bump frontend dependencies (#3)
Main CI-Frontend / Build & Push (push) Successful in 32s
## What

- Bump frontend dependencies;
- Backend dependencies are not ready yet. Only Spring has a new version, but it is failing to run on GraalVM;

## Why

- Codebase hygiene;

## Mood

<img width="200" src="https://media0.giphy.com/media/Pn5crrMQi6WyI5tyI0/giphy.gif?cid=36b14fackrjl2p912ox9mnnn7m0rawm1okm5d8hnaorntlgn&ep=v1_gifs_trending&rid=giphy.gif&ct=g"/>

Reviewed-on: #3
2026-06-25 00:16:35 +00:00
rmcamposandGitHub 93efe09407 chore: bump client dependencies (#64)
* chore: bump client dependencies

* docs: update changelog file

* docs: update changelog

* feat: craete separate changelog files
2026-06-08 18:57:05 -03:00
rmcamposandGitHub 931e361836 feat: update about page to reflect current features (#63) 2026-06-08 15:35:43 -03:00
rmcamposandGitHub bceb9a2e49 chore: bump backend and frontend dependencies (#61)
* chore: bump frontend dependencies

* chore: bump backend dependencies
2026-06-01 11:41:53 -03:00
rmcamposandGitHub 5fec30fea0 feat: add SDD and DDD filer for AI based development and Spec 001 implementation (#60)
* feat: add initial files and spec 1

* feat: add spec for rich text feature

* chore: restore file from broken AI session

* feat: add project constraints to ai

* chore: update spec feature prompt

* feat: add multiple tags support - wip

* test: fix test cases

* chore: move tag list to below the inputs

* chore: add ngrok files and updates

* fix: session issues and query using HQL

* test: fix test cases
2026-05-26 11:58:04 -03:00
CopilotGitHubcopilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>RMCamposrmcampos
f34c359720 Refresh auth session with server-authoritative current user data (#59)
* Initial plan

* feat: refresh and reload current user profile

Agent-Logs-Url: https://github.com/RMCampos/tasknote/sessions/3f01367a-baee-4bbe-8f66-f04da58d485f

Co-authored-by: RMCampos <2219519+RMCampos@users.noreply.github.com>

* test: fix time zone test issue

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: RMCampos <2219519+RMCampos@users.noreply.github.com>
Co-authored-by: Ricardo Campos <ricardompcampos@gmail.com>
2026-05-18 22:26:31 -03:00
rmcamposGitHubcopilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>RMCampos
a6bdd104d5 feat: add last activity date time (#57)
* feat: add last activity date time

* chore: update missing files

* chore: improve last seen message to inclute timezone

* chore: remove the formatting from backend

* chore: fix client issues

* fix: add utd to formatting in the client

* fix lint issue

* chore: fix lastLogin always showing the current login

* fix: address sidebar and sign-in review comments

Agent-Logs-Url: https://github.com/RMCampos/tasknote/sessions/04a13c25-87ea-44cc-ac53-cfefd16e0262

Co-authored-by: RMCampos <2219519+RMCampos@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: RMCampos <2219519+RMCampos@users.noreply.github.com>
2026-05-18 17:15:01 -03:00
rmcamposandGitHub 84f6a00572 feat: prevent user form login before conforming his email (#56)
* feat: prevent user form login before conforming his email

* chore: update files and improve things

* feat: fix errors issue and improve logs
2026-05-17 17:53:59 -03:00
rmcamposandGitHub 3942d02225 Feat/drop refresh token logic (#51)
* feat: update auth provider to not refresh token every 2 minutes

* chore: ignore tfplan files
2026-05-13 18:11:35 -03:00
rmcamposandGitHub c2ba691b5e chore: bump dependencies (#49)
* feat: bump client deps

* feat: replace eslint-plugin-import by eslint-plugin-import-x
2026-05-11 19:03:43 -03:00
CopilotGitHubcopilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>RMCampos
4b87a35a7d Add Cypress E2E tests for Home, Task, and Notes management (#46)
* Initial plan

* feat: add Cypress E2E tests for home, tasks, and notes management

Agent-Logs-Url: https://github.com/RMCampos/tasknote/sessions/b58034df-7cc2-4f3b-aebb-6ff9b948d992

Co-authored-by: RMCampos <2219519+RMCampos@users.noreply.github.com>

* fix: add data-testid to task dropdown and update Mark as Done tests

Agent-Logs-Url: https://github.com/RMCampos/tasknote/sessions/05bf3f86-5dda-4c1a-9f2b-dc1f0e38c9f3

Co-authored-by: RMCampos <2219519+RMCampos@users.noreply.github.com>

* fix: remove pre-click reload intercepts that caused share test race condition

Agent-Logs-Url: https://github.com/RMCampos/tasknote/sessions/a78336f4-bd41-4819-a848-79aa6a4f8ed7

Co-authored-by: RMCampos <2219519+RMCampos@users.noreply.github.com>

* fix: remove post-action reload intercepts that caused getDoneTasks race condition

Agent-Logs-Url: https://github.com/RMCampos/tasknote/sessions/28155c26-3eaf-46d7-a749-74eff1bc217b

Co-authored-by: RMCampos <2219519+RMCampos@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: RMCampos <2219519+RMCampos@users.noreply.github.com>
2026-05-07 14:26:19 -03:00
CopilotGitHubcopilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>RMCamposrmcampos
662d8ba4d2 fix: prevent premature route resolution before initial auth check completes (#45)
* Initial plan

* fix: add loading state to AuthContext to prevent premature route resolution

Agent-Logs-Url: https://github.com/RMCampos/tasknote/sessions/8b02c4fd-b37e-4d34-8910-6d075bde6b4b

Co-authored-by: RMCampos <2219519+RMCampos@users.noreply.github.com>

* restore: revert package-lock.json to original state

Co-authored-by: RMCampos <2219519+RMCampos@users.noreply.github.com>

* fix: add catch before finally in initial auth check useEffect

Agent-Logs-Url: https://github.com/RMCampos/tasknote/sessions/8b02c4fd-b37e-4d34-8910-6d075bde6b4b

Co-authored-by: RMCampos <2219519+RMCampos@users.noreply.github.com>

* test: address test warning missing act

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: RMCampos <2219519+RMCampos@users.noreply.github.com>
Co-authored-by: Ricardo Campos <ricardompcampos@gmail.com>
2026-05-07 11:54:21 -03:00
CopilotGitHubcopilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>RMCampos
6dee21d58f fix(csp): allow blocked inline style via SHA-256 hash in style-src (#43)
* Initial plan

* fix: add CSP hash for blocked inline style in style-src directive

Agent-Logs-Url: https://github.com/RMCampos/tasknote/sessions/a51fd5ff-eb93-4ef0-96e0-3d10df540a59

Co-authored-by: RMCampos <2219519+RMCampos@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: RMCampos <2219519+RMCampos@users.noreply.github.com>
2026-05-06 18:37:02 -03:00
rmcamposandGitHub 028bb6412a chore: bump dependencies back and front (#41)
* chore: bump dependencies in the client

* chore: bump server deps
2026-05-06 18:20:24 -03:00
CopilotGitHubcopilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>RMCamposrmcampos
1aa8ded9b3 feat: Integrate Cypress for E2E authentication testing (#39)
* Initial plan

* feat: add Cypress E2E testing for auth flows

Agent-Logs-Url: https://github.com/RMCampos/tasknote/sessions/f3b4e747-3e09-4b6c-8b4c-336cf45b59c4

Co-authored-by: RMCampos <2219519+RMCampos@users.noreply.github.com>

* fix: use regex intercepts and unique emails in Cypress auth tests

Agent-Logs-Url: https://github.com/RMCampos/tasknote/sessions/2a1225d9-9412-459e-bc97-93303454a461

Co-authored-by: RMCampos <2219519+RMCampos@users.noreply.github.com>

* fix: use PUT method for sign-up intercepts in Cypress auth tests

Agent-Logs-Url: https://github.com/RMCampos/tasknote/sessions/bda14dfc-a30d-4c01-aa74-e8c2690072e3

Co-authored-by: RMCampos <2219519+RMCampos@users.noreply.github.com>

* chore: update tools.md file to include sql command

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: RMCampos <2219519+RMCampos@users.noreply.github.com>
Co-authored-by: Ricardo Campos <ricardompcampos@gmail.com>
2026-05-06 17:21:17 -03:00
rmcamposandGitHub bccd30c1a9 fix: address frontend test warnings and errors (#37)
* fix: warnings and issues when running unit tests

* chore: bump i18next deps
2026-05-06 09:14:51 -03:00
rmcamposandGitHub ecb645415b feat: update vite to v8. (#35)
Issue #26
2026-05-05 18:47:40 -03:00
rmcamposandGitHub 0b99613710 chore: upgrade typescript to v6 (#34)
* chore: udpate typescript to v6

* fix: build issue
2026-04-29 16:42:43 -03:00
rmcamposandGitHub db7f8355dd chore(client): update dependencies to latest minor versions (#33)
* chore(client): update dependencies to latest minor versions

* chore: increate timeout to deploy plan changes on staging
2026-04-29 15:08:04 -03:00
rmcamposandGitHub 73d9c14723 chore(deps): update client dependencies to latest minor versions (#32) 2026-04-27 13:58:17 -03:00
rmcamposandGitHub c19ef73a5a feat: improve security and prevent xss attacks (#30)
* feat: improve security and prevent xss attacks

* chore: fix frontend test file name location

* fix: frontend test case

* ci: add deployment connection
2026-04-16 16:49:51 -03:00
rmcamposandGitHub 0a30ab0401 chore: add files and config to run on VPS and test locally (#29)
* chore: add files and config to run on VPS and test locally

* chore: add missing nginx files left behind

* chore: rename workflow files
2026-04-16 13:54:16 -03:00
rmcampos 2c1c892006 chore: update client dependencies 2026-04-06 12:29:16 -03:00
rmcampos 741cc9693f feat: bump dependencies in back and front 2026-03-17 15:30:54 -03:00
rmcampos 5ae989a1cc feat: update new error message and translations 2026-03-16 12:48:30 -03:00
CopilotGitHubcopilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>RMCamposrmcampos
b1531f890e Add public note sharing feature (#22)
* Initial plan

* Add note sharing feature: share/unshare endpoints, public note view, share token

Co-authored-by: RMCampos <2219519+RMCampos@users.noreply.github.com>

* Remove redundant nullable=true annotation from NoteEntity shareToken column

Co-authored-by: RMCampos <2219519+RMCampos@users.noreply.github.com>

* Fix checkstyle line-length violations in test files

Co-authored-by: RMCampos <2219519+RMCampos@users.noreply.github.com>

* Fix frontend build and test failures: add shared/shareToken fields to NoteAdd payloads and test

Co-authored-by: RMCampos <2219519+RMCampos@users.noreply.github.com>

* chore: reorganize scripts and migration name

* docs: update readme with new feature

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: RMCampos <2219519+RMCampos@users.noreply.github.com>
Co-authored-by: Ricardo Campos <ricardompcampos@gmail.com>
2026-02-28 13:08:23 -03:00
CopilotGitHubcopilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>RMCamposrmcampos
553eb3c59d Add Source and Copy buttons to note markdown modal (#21)
* Initial plan

* Add Source and Copy buttons to ModalMarkdown for note source code view

Co-authored-by: RMCampos <2219519+RMCampos@users.noreply.github.com>

* feat: add healthcheck do native image

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: RMCampos <2219519+RMCampos@users.noreply.github.com>
Co-authored-by: Ricardo Campos <ricardompcampos@gmail.com>
2026-02-27 19:13:53 -03:00
rmcampos a469a8878b chore: bump frontend dependencies version 2026-02-27 13:52:52 -03:00
rmcampos 83de01f9cb chore: commit package lock client file 2026-02-12 18:25:24 -03:00
rmcampos 64104b781b chore: bump client dependencies 2026-02-12 18:12:28 -03:00
rmcampos e5290aa6c4 chore: add missing files and improve Dockerfile 2026-02-11 11:03:02 -03:00
rmcampos 98ad43602a feat: improve markdown rendering and add home filter context 2026-02-11 10:57:43 -03:00
rmcamposGitHubclaude[bot] <41898282+claude[bot]@users.noreply.github.com>Ricardo Campos
e3f3259179 feat: Add tag suggestion dropdown for Notes and Tasks (#12)
* feat: add tag suggestion dropdown for NoteAdd and TaskAdd views

Implement a tag suggestion dropdown in both NoteAdd and TaskAdd components.
When the tag input is focused, available tags are fetched from the API
(GET /rest/home/tasks/tags) and displayed in a filterable dropdown list.
Users can select an existing tag or type a custom one.

Co-authored-by: Ricardo Campos <RMCampos@users.noreply.github.com>

* chore: fix lint issue

---------

Co-authored-by: claude[bot] <41898282+claude[bot]@users.noreply.github.com>
Co-authored-by: Ricardo Campos <RMCampos@users.noreply.github.com>
2026-02-10 17:35:26 -03:00
rmcampos d734845f75 fix: test CI command 2026-02-10 17:01:03 -03:00