Most configuration is done in the texts.yaml file. After changing here you recomile the project with docker build and everything should work.
mer eller mindre fyll i texts.yaml med korrekt information och sen kompilera hela altet med docker compose build, så borde allt funka. changes är från 2025-06-08, finns några fler saker som skulle kunna implementeras.
Kolla gärna på example.env filen, där har vi en hel del configs som kan göras för just detta projekt
Vi stödjer bland annat ip whitelist. Vi stödjer dagliga meddelanden Vi stödjer registrering med specifik address, och man kan även lägga till frågor (Exempelvis vad heter eran rektor).
Public user registration for a self-hosted Overleaf instance.
We are planning to offer a public Overleaf instance to our users (students and teachers), but the Community Edition does not support autonomous user registration: only the site administrator can create users via the admin panel.
This limitation is unacceptable for our use case, so we implemented it ourselves.
A simple form (available on /register path) is offered to the user asking for its email;
the application then logs into the Overleaf instance with the administrator account
and sends a request to create a user.
The user can now create an account by clicking the confirmation link on its mailbox.
There is a Docker image available on
ghcr.io/studentiunimi/overleaf-registration,
automatically built by GitHub Actions.
You can check the example docker-compose.yml file and tweak it with your configuration.
The Docker container needs all the following environment variables to function properly:
| Environment variable | Description |
|---|---|
CAPTCHA_SERVER_KEY |
reCAPTCHA v2 server key |
CAPTCHA_CLIENT_KEY |
reCAPTCHA v2 client key |
OL_INSTANCE |
Overleaf self-hosted instance (without trailing /) |
OL_ADMIN_EMAIL |
Overleaf administrator account email |
OL_ADMIN_PASSWORD |
Overleaf administrator account password |
This project now supports automatic refresh of the Overleaf admin system message. The scheduler performs these steps every day:
- Log in as admin
- Clear all existing system messages
- Post
DAILY_SYSTEM_MESSAGE - Log out
Add these to .env (see example.env):
| Environment variable | Description |
|---|---|
DAILY_MESSAGE_ENABLED |
Set to true or false to enable/disable the daily job |
DAILY_SYSTEM_MESSAGE |
Message text posted daily after clearing existing messages |
The existing overleaf-registration container runs both:
gunicornfor the/registerweb app- A cron job that executes
daily_message_job.pyevery day at06:00(Europe/Stockholm)
Run a one-shot test before relying on the schedule:
docker compose run --rm overleaf-registration python /daily_message_job.pyThen check Overleaf Admin -> System Messages to verify that only the configured message is present.