Commit Graph
77 Commits
Author SHA1 Message Date
fsylvain 162fea4afb feat: settings page, sidebar and drawer destination "Settings" (icon settings, after Integration), route /settings (verified), showing only the running build's Version 2026-09-30 00:19:29 +02:00
fsylvain da36c78bc0 refac: hardening pass with multiple overhauls 2026-09-29 10:55:23 +02:00
fsylvain 55525c06d6 feat: invitation accept screen and api 2026-09-29 09:21:53 +02:00
fsylvain acdef18b37 feat(API): user invitations and emails 2026-09-29 07:15:17 +02:00
fsylvain 7aae704d0a feat(API): optional display name on users 2026-09-29 06:52:58 +02:00
fsylvain f6d0d01092 feat: articles list screen 2026-09-27 17:12:23 +02:00
fsylvain 30a4df47b1 feat: new emails design 2026-09-26 05:41:34 +02:00
fsylvain 4e41d60142 feat: register T1 (pending, verify) 2026-09-26 04:56:48 +02:00
fsylvain 2a64991916 refac: GET /v1/auth/registration 2026-09-25 15:54:42 +02:00
fsylvain 0e050c36ff fix: rate limiting X-Real-IP from the real peer 2026-09-25 06:49:55 +02:00
fsylvain 3282b0580c fix: remove the unused user use cases, fix the specs that no longer match the code, include api/middleware and api/pkg/claims in mutation testing, log failures that password reset requests currently ignore, and reject user_id claims that don't fit a user id 2026-09-25 05:58:37 +02:00
fsylvain cbb403011a fix: login and password reset requests are rate-limited per client (not in the README; there is currently no brute-force protection on the public auth routes) 2026-09-25 05:33:02 +02:00
fsylvain f3ec3d2fa2 fix: resetting the password or cancelling a registration ends existing sessions: a token issued before the change is refused 2026-09-25 05:03:34 +02:00
fsylvain aa865af2e9 refac: reamaining auth surface rewrite, T0 2026-09-24 05:11:49 +02:00
fsylvain 6d510d2805 refac: register only open while no verified acc exists, enforced by a use case rather than handler & sends verification email whose link uses the conf pub URL whose code expires after 2h 2026-09-24 03:36:37 +02:00
fsylvain 6e9e108033 refac: several unverified users can exist at once: an empty reset or verification code is stored as no value so it doesn't break the unique constraint, and deleting a user removes the row so the same username and email can register again 2026-09-24 01:59:24 +02:00
fsylvain 0b4e614ec9 refac: runtime settings are read once at startup and passed in through the composition root; no handler, router or repository reads environment variables 2026-09-24 01:30:00 +02:00
fsylvain 5992c8598b refac: allowed image types and the size limit are a domain rule checked by the use case, not by the persistence layer 2026-09-24 00:03:29 +02:00
fsylvain 8a8a24434a refac: deleting an article also deletes its images, and deleting a missing article returns 404 2026-09-23 23:42:18 +02:00
fsylvain 6a2ca07b66 refac: repository updates, image attachment and deletes report the domain not-found error for an unknown id, the same for articles, users and images, and the test fakes stop returning GORM errors 2026-09-23 22:09:06 +02:00
fsylvain 4278d96882 refac: article title rules are the same in the API request and the domain; an invalid title returns 400 instead of 500 2026-09-23 20:04:09 +02:00
fsylvain ff8cd5f0ec refac: password and code hashing & checking go through a domain hasher interface used by the use cases instead of bcrypt in the user repository and the auth handler 2026-09-23 19:29:20 +02:00
fsylvain 8460a078e3 refac: missing user or article is reported with a domain not-found error instead of a raw GORM error, and the API answers 404 for it 2026-09-23 18:55:05 +02:00
fsylvain 09bd5afa4a refac: rethought the complete workflow and deployement flow ; docs etc. 2026-09-23 17:36:36 +02:00
Floriansylvain 4a6209a8db feat: api serve frontend, build workflow, router readyness 2025-12-24 01:05:58 +01:00
Floriansylvain ce787d26ff fix: remove low file code from domain 2025-12-22 02:41:09 +01:00
Floriansylvain 76245c47c9 fix: added some business rules to article creation 2025-12-22 01:18:50 +01:00
Floriansylvain 5282770caa refac: better error handling & moved IsOnline logic to cleaner place 2025-12-22 00:59:36 +01:00
Floriansylvain b50efae8a8 refac: mappers, file names 2025-12-22 00:06:17 +01:00
Floriansylvain e0a6706d4e fix: removed domain article coupling with infra 2025-12-21 21:53:29 +01:00
Floriansylvain 61a84201d8 refac: remove frontend & clearer DDD 2025-12-21 21:31:30 +01:00
Florian Sylvain 1328758984 clean: removed everything to set up 2.0 2023-08-02 01:31:35 +02:00
Florian Sylvain 11df35953a Refactor Article GET routes 2023-02-07 21:35:09 +01:00
Florian Sylvain a4ee8f90ff Article pagination frontend implementation 2023-01-19 02:30:01 +01:00
Florian Sylvain 1ffc999e1a Solved several pagination problems 2023-01-19 00:19:52 +01:00
Florian Sylvain 3376d88f56 Splat handler in their own files, added pagination 2023-01-18 23:33:34 +01:00
Florian Sylvain c681b5389c Added codes in API responses 2023-01-18 21:00:32 +01:00
Florian Sylvain 245ddbc137 Database related operation files reorganization 2023-01-18 20:55:51 +01:00
Florian Sylvain 200efe0e90 First part of httpOnly JWT cookie implementation 2023-01-12 00:04:26 +01:00
Florian Sylvain 71e305766c Article GET route now returns Array 2023-01-09 17:37:22 +01:00
Florian Sylvain 408686a644 Fixed old filters and improved error details 2023-01-09 11:59:17 +01:00
Florian Sylvain 8be0059525 Improved Article model 2023-01-09 09:53:33 +01:00
Florian Sylvain 311454d05d Fixed some typos / improved api messages 2022-12-31 04:53:09 +01:00
Florian Sylvain 3d43042245 Added online field to Articles 2022-12-30 03:06:25 +01:00
Florian Sylvain 948243525e Added page_id field to Articles 2022-12-30 02:02:38 +01:00
Florian Sylvain 451fd8452b Complete file tree and packages managment rework 2022-12-27 21:00:19 +01:00
Florian Sylvain 39afc0c066 Fixed Article's "Content" field type 2022-12-27 19:54:46 +01:00
Florian Sylvain 6593f38eb5 Added some errors accuracy on del article handler 2022-12-27 18:46:35 +01:00
Florian Sylvain bb324d3df4 Added edition workflow 2022-12-27 18:45:21 +01:00
Florian Sylvain e6e15392d1 Removed useless code for DeleteArticleHandler 2022-12-27 18:05:53 +01:00