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
43469ef08d
feat: recent activity card on Home and Retention card on Settings
2026-10-07 16:01:28 +02:00
fsylvain
e37a46a027
feat: activity log producers
2026-10-06 22:25:23 +02:00
fsylvain
50b1649965
feat: activity log backend foundation
2026-10-06 20:35:03 +02:00
fsylvain
dc5d12348c
feat: PostgreSQL driver support
2026-10-06 13:35:10 +02:00
fsylvain
eb9bfabed5
feat: optional S3-compatible storage for uploaded images, instead of the local upload directory
2026-10-06 12:13:24 +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
d275ba3c14
feat: complete dockerization (optional)
2026-10-05 04:52:49 +02:00
fsylvain
844842fdae
feat: integration v2 and API key PART 1/3
2026-10-04 21:56:14 +02:00
fsylvain
7e9bd9ba30
feat: articles format option with markdown new default
2026-10-04 19:04:12 +02:00
fsylvain
54e8fd5fed
feat: restart to apply update, privileged helper, rollback
2026-10-01 21:36:40 +02:00
fsylvain
70460e4170
feat: update button (download, verify, stage)
2026-10-01 18:13:45 +02:00
fsylvain
834493a4f5
feat: signed releases, release feed, notification (read-only)
2026-10-01 15:01:53 +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
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
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
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
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
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
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
09bd5afa4a
refac: rethought the complete workflow and deployement flow ; docs etc.
2026-09-23 17:36:36 +02:00
Floriansylvain
b50efae8a8
refac: mappers, file names
2025-12-22 00:06:17 +01:00
Floriansylvain
61a84201d8
refac: remove frontend & clearer DDD
2025-12-21 21:31:30 +01:00
Florian Sylvain
d7ee0a488c
refac: cleaner DI function names
2025-11-17 20:24:51 +01:00
Florian Sylvain
83a1dec8ae
refac: renamed 'GoCMS' -> 'RenewCMS'
2025-11-17 19:46:53 +01:00
Florian Sylvain
b470bfcc67
refac: renamed 'post' -> 'article'
2025-11-17 19:27:48 +01:00
Florian Sylvain
cb9a431488
fix: reverted the bourbier done to DI, reflection is bad
2025-03-29 01:52:22 +01:00
Florian Sylvain
2292a8ef34
fix: DI wrong approach wasn't working
2025-03-29 01:45:48 +01:00
Florian Sylvain
a77a5ad314
refac: fixed, better, smarter, correct dependency injection
2025-03-29 00:51:01 +01:00
Florian Sylvain
c25fb1b0a3
feat: images
2024-06-13 13:34:10 +02:00
Florian Sylvain
7d2795a9e0
feat: post deletion
2024-05-19 17:12:48 +02:00
Florian Sylvain
92c6d06d00
feat: post edition save
2024-05-18 12:24:54 +02:00
Florian Sylvain
29fce9a241
brand: GohCMS -> GoCMS, project-wide
2024-05-15 19:34:38 +02:00
Florian Sylvain
a35e7c4283
feat: complete email verification flow
2024-05-15 19:16:55 +02:00
Florian Sylvain
c929acd4ab
feat: email verification flow (not 100% complete)
2024-05-15 12:04:30 +02:00
Florian Sylvain
8015639db5
feat: WIP auth mailing implementation
2024-05-13 19:22:56 +02:00
Florian Sylvain
33cd947958
clean: refactor DI and container initialization
2024-04-26 06:58:43 +02:00
Florian Sylvain
e113c79a6d
fix: all remaining "article" replaced by "post"
...
All instances of the term "article" were replaced with "post" in variable names, type names, function names, etc. This was primarily to ensure consistent naming and reduce confusion going forward. The term "post" was chosen as it's a more commonly used term for the involved operations in the context of content management and blogging platforms. All tests were also updated to reflect these changes.
2023-09-06 03:38:52 +02:00
Florian Sylvain
554fdc1989
clean: Article to Post in domain and related use cases
...
Renamed the 'Article' domain to 'Post' in order to better reflect the purpose and utility of the object. The change involved renaming all related use cases, classes, and other references from 'Article' to 'Post' and updating all functions and data types to work with Posts instead of Articles.
2023-09-06 01:56:27 +02:00