-
released this
2026-09-29 10:56:23 +02:00 | 103 commits to main since this releaseRenewCMS is no longer a one-person tool. The admin can now invite other people, each with their own account and the exact same access, and everyone can set a display name.
New
Invite other users
- A new Users page in the back-office lists everyone who can sign in, plus pending and expired invites, with a status badge for each.
- Invite user sends an email with a personal link. The link works once and expires after 3 days.
- Invited people choose their own username and password on a new Accept invite screen, and land on Home already logged in.
- Everyone shares one workspace: same articles, same images, same access.
- Registration stays closed to everyone who wasn't invited.
- A new invitation email template supports light and dark mode.
Display name and profile
- A new Profile page is opened from the account menu at the bottom of the sidebar.
- Set an optional display name (up to 60 characters). It replaces your username in the sidebar, the account menu, the Home greeting, the Users list and the emails RenewCMS sends. Clear it to go back to your username.
- Send yourself a password reset link from the Profile page.
- The account chip now opens a menu with Profile and Log out, and keeps the System, Light and Dark theme choice.
Improvements and fixes
- Accepting an invite is atomic: two simultaneous requests with the same link can only create one account.
- The Accept invite screen shows a retry option instead of a permanent spinner when the invite can't be loaded.
- Invite email validation is now the same in the browser and on the server.
- The mobile account sheet reports its open state correctly and returns focus to the account chip when it closes.
- A failed password reset email is now logged on the server. The response is unchanged.
API
PATCH /v1/user/mesets the display name.GET /v1/auth/meandPOST /v1/auth/verifynow returndisplay_name.GET /v1/user/lists users and invites.POST /v1/user/invitesends an invite and is rate limited.GET /v1/auth/inviteandPOST /v1/auth/invite/acceptpower the Accept invite screen.
Under the hood
- Deleting a user now goes through the persistence model.
Upgrading
- Download the binary for your platform, replace the old one and restart. Your
.envand SQLite file stay as they are. - The database migrates itself on startup. It adds a
display_namecolumn tousersand a newinvitestable. Existing data is untouched. Back up your SQLite file first as a precaution. - Invitation emails need working SMTP settings, like the verification and reset emails already do. No new environment variables.
Known limitations
- Users and invites can't be removed, revoked or resent yet, and there are no roles: everybody is an equal admin.
- Invited addresses that already have an account are rejected. An expired invite can be replaced by sending a new one.
Downloads