Password Reset (Self-Hosted)
This feature is available in Donetick v0.1.76 and later.
When self-hosting Donetick without email configured, users cannot receive password reset emails. The log_raw_url option solves this by printing the password reset link directly to the server console instead.
How It Works
When a user requests a password reset and email delivery fails, Donetick will log the reset URL to the server logs if log_raw_url is enabled. You can then retrieve the link from the logs and share it with the user manually.
The log output looks like this:
=== PASSWORD RESET LINK ===
User: [email protected]
URL: https://your-instance.com/password/update?c=...
==================================================
Configuration
Add log_raw_url: true under the email section in your config file:
email:
host:
port:
key:
email:
user:
appHost: https://your-instance.com
log_raw_url: true # log password reset URL to console (useful when email is not configured)
Or via environment variable:
DT_EMAIL_LOG_RAW_URL=true
log_raw_url is intended for self-hosted instances without email configured. The reset link grants direct access to change a user's password — treat it as sensitive. Avoid enabling this in production environments where email is working.
Steps to Reset a User's Password
- Ensure
log_raw_url: trueis set in your config andemail.appHostpoints to your instance URL. - Have the user go to the login page and click Forgot Password, then enter their email.
- Open your server logs and look for the
=== PASSWORD RESET LINK ===block. - Copy the URL and send it to the user via a secure channel.
- The user opens the link and sets a new password.
appHost
The appHost value is used to construct the reset link. Make sure it matches your publicly accessible instance URL:
email:
appHost: https://your-instance.com
If appHost is not set, the generated URL will be incomplete and unusable.