Florian Sylvain
|
b34a173d83
|
feat: Authors feature backend (and upgraded deprecated mods)
|
2026-10-14 17:45:00 +02:00 |
|
Florian Sylvain
|
a11338094e
|
feat: Sites feature backend
|
2026-10-14 03:56:50 +02:00 |
|
Florian Sylvain
|
73f4b539fe
|
feat: articles pagination
|
2026-10-11 19:14:37 +02:00 |
|
fsylvain
|
ce9c876db6
|
refac: removed ugly multi-line method chaining
|
2026-10-10 20:49:05 +02:00 |
|
fsylvain
|
d768668014
|
feat: image variants cache panel
|
2026-10-08 21:13:32 +02:00 |
|
fsylvain
|
951fef18ba
|
feat: image variants per image
|
2026-10-08 19:57:51 +02:00 |
|
fsylvain
|
f1d56ef50e
|
feat: image variants engine
|
2026-10-08 02:33:32 +02:00 |
|
fsylvain
|
f914eae3c5
|
feat: setup logs retention by max file size
|
2026-10-07 22:02:13 +02:00 |
|
fsylvain
|
50b1649965
|
feat: activity log backend foundation
|
2026-10-06 20:35:03 +02:00 |
|
fsylvain
|
d752a61e52
|
feat: optional MySQL/MariaDB database driver for deployments that cannot use local SQLite
|
2026-10-06 04:08:33 +02:00 |
|
fsylvain
|
81e299f09a
|
refac: decouple persistence and image storage behind driver registries
|
2026-10-06 02:13:35 +02:00 |
|
fsylvain
|
1a55a39425
|
feat: media duplicate purge, part 2 of 3: the automatic purge scheduler (Go only)
|
2026-10-05 19:44:15 +02:00 |
|
fsylvain
|
e82d0ce254
|
feat: media duplicate purge, part 1 of 3: persisted purge settings and the purge API
|
2026-10-05 18:24:03 +02:00 |
|
fsylvain
|
844842fdae
|
feat: integration v2 and API key PART 1/3
|
2026-10-04 21:56:14 +02:00 |
|
fsylvain
|
0d99544579
|
feat(API): media library
|
2026-09-30 18:35:28 +02:00 |
|
fsylvain
|
153fd8719a
|
feat: invite management API: DELETE /v1/user/invite/:id (204, cancels a pending invite) and POST /v1/user/invite/:id/renew (200, new code, expires_at = now+3d, created_at = now, resends the invitation email, old link dead)
|
2026-09-30 01:36:43 +02:00 |
|
fsylvain
|
461e93e3b5
|
feat: add Role (owner|admin) to the user domain, persistence model and mapper
|
2026-09-30 00:58:58 +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
|
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
|
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
|
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
|
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 |
|
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 |
|