Repository navigation
Releases: karl-cta/statup
Release list
0.8.0
Readers can follow the page by email, and every screen follows the same layout.
What's new
- Email subscriptions. On Get notified, a visitor types their address, picks incidents, maintenance or announcements, and confirms through the link emailed to them; a signed-in member subscribes with the address of their account. Each subscriber gets an email when an incident is opened or a maintenance announced, at each update, when it ends and for its report, in their language and naming only the services they may see, with an unsubscribe link in every email. Administrators see the subscribers on the Alerts page, can remove one, and decide whether visitors may subscribe. Needs a mail server.
- One layout for every screen. A page head holds at most Arrange and New; every list sits on a card that gives its title, its count and its one action; row actions are words, Delete in red. Settings drops its help sentences, and the page access setting reads Page access, Members only or Public, everywhere.
Fixes
- Two people giving a folder or a group the same name at the same moment: the second is told the name is taken instead of seeing an error page.
- After a folder or a service is deleted, the notice no longer takes a name from the page address.
Upgrade
Back up your data first (see Backups), then, next to your docker-compose.yml:
docker compose pull && docker compose up -dThe database is upgraded on start. Visitors cannot subscribe until a mail server is set and an administrator opens subscriptions to them. Every change is listed in the changelog.
0.7.2
- Certificates issued through the emSign intermediates, whose private keys were made public in October, are now refused when Statup checks a site, sends an alert or reaches the mail server (RUSTSEC-2026-0381, RUSTSEC-2026-0382). The other libraries move to their latest compatible versions.
- The Docker image takes Alpine's latest security fixes (zlib, musl), in parts of the system that Statup itself does not use.
Upgrade with docker compose pull then docker compose up -d. Your data stays as it is. On NixOS, see NixOS.
0.7.1
- Statup runs on NixOS: a flake in the repository builds the package and provides a
services.statupmodule, with every setting undersettings, secrets in anenvironmentFile, the data in/var/lib/statupand the firewall closed unlessopenFirewallis set. Contributed by @bdeightn, built and booted on a NixOS machine by the checks of each change, and described on a new NixOS page of the documentation. - The Docker image runs on Alpine 3.24, supported until June 2028: Alpine 3.21 stops receiving security fixes on November 1, 2026.
Upgrade with docker compose pull then docker compose up -d. Your data stays as it is. On NixOS, see NixOS.
0.7.0
Groups of users and folders of services: each team sees the services that concern it.
What's new
- Groups and visibility. Administrators gather users into groups in Settings, Team. Each service is Public, for Members only, or Restricted to chosen groups and users, with a line saying how many will see it. Incidents, maintenance and announcements follow their services, and someone who may not see a service finds no trace of it anywhere, the feed included.
- Folders of services. File services in folders such as Network or Lyon office. The dashboard shows each folder as a title, the Services page as a card, and a folder sets the visibility its services inherit, without ever showing a service to more people than before. Requested in #5, thanks @Latschenharry.
- Documentation, in English and French, linked from the foot of every page for members. It replaces the self-hosting guide.
- Shorter wording on the Team and Services pages, and a few clearer confirmations.
Fixes
- The Journal's Edit link is underlined again on hover.
- A service name with invisible characters is refused, as member names already were.
ammonia4.2.4, after the security advisory of October 16.
Upgrade
Back up your data first (see Backups), then, next to your docker-compose.yml:
docker compose pull && docker compose up -dThe database is upgraded on start, and every service stays visible to everyone until you choose otherwise. Every change is listed in the changelog.
0.6.0
A Journal for administrators: the logs of your instance in one page, who changed what, who signed in, and what went wrong.
What's new
- Journal, the logs of Statup. In Settings, a page lists what happened day by day: services, settings, team and alert channels changed, sign-ins, outages with the address checked and the reason, alert messages that did not leave, and the app's errors. Essential, the default, keeps the large changes and the real problems; Detailed keeps everything from the moment you choose it. Lines are kept 90 days by default, can be filtered and exported as a spreadsheet, and the server output shows the same lines in clear words.
- Arrange the dashboard from the dashboard, with a button beside "New event".
- Simpler settings: one "Save" for the general settings, a warning before leaving with unsaved changes, and the same words at first launch and in Settings.
- Clearer names: "Alerts" and "channels" for Teams, Slack or email, "Progress" for an event, "New service" everywhere.
Fixes
- An update posted from an event's own page now confirms it is published.
- The logo picked at first launch shows in the preview before it is saved.
Upgrade
Back up your data first (see the self-hosting guide), then, next to your docker-compose.yml:
docker compose pull && docker compose up -dThe database is upgraded on start. LOG_LEVEL now only sets the server output; the Journal keeps its lines whatever the level. Every change is listed in the changelog.
0.5.0
Incidents now say when the next news comes, and what happened once they are over. A restarting server no longer floods your channels, and each service waits as long as you choose before it shows an outage.
What's new
- Next update time. When declaring an incident or posting an update, write a delay ("30 min", "1 h") or a time ("14:30"). The incident's page and the status banner say when the next update is due, then how late it is once the time has passed.
- A bell for editors. The masthead counts unread notices: an update that is 5 minutes late (also by email, once, with a mail server set), a service the checks find down, a destination that refuses its messages.
- One message for a wave of outages. Services that fall in the same minute, such as those of a restarting server, are told in one message per destination, and their return in one more. Thanks to @mafsi for the report (#13).
- A delay per service. "Declare an outage after [3] min without an answer", from 1 to 60 minutes, so a critical server alerts after a minute and a printer after fifteen (#13).
- A report after the incident. Once an incident is resolved, an editor writes what happened, why, and what changes so it does not happen again. It heads the incident's page, the history marks the incident, the feed carries it, and the destinations that receive incidents get it once.
Fixes and security
- "Back to …" in an event's details now shows only to those who may use it.
- The library that cleans the text of updates moves to its latest version, which fixes two flaws reported on 13 October in options Statup never turns on.
- The library that encrypts outgoing connections (notifications, checks) moves to its latest patch, which fixes four flaws reported on 14 October.
For webhook users
Grouped outages add a services list, and service keeps naming a service alone. A new happening, reviewed, carries the report of a resolved incident. See the body sent to any other tool.
Upgrade
Back up your data first (see the self-hosting guide), then, next to your docker-compose.yml:
docker compose pull && docker compose up -dThe database is upgraded on start. Every change is listed in the changelog.
0.4.0
An old update no longer looks current. Each open incident now says when someone last wrote, and a member who forgets their password gets back in on their own.
What's new
- Time since the last update. On an open incident, "last update 2h ago" sits under how long it has been open, on its page and in its side panel. The status banner gives the age of the latest update instead of its time.
- Forgot your password? With a mail server set, the sign-in page emails a link that works once, for one hour, and signs the member in once they choose a new password. Without one, the page says to ask an administrator. The answer never tells whether an address has an account.
- Your order of services. Change order, on the Services page, gives each row an up and a down arrow; the order applies wherever services are listed. Existing services start in alphabetical order, and a new one goes last.
- Problems first. In Change order, "Put services with a problem first" lists degraded, down and under-maintenance services ahead of the others, on the dashboard and the Services page, until they are fine again. Off by default. Thanks to @Latschenharry for asking (#11).
Password reset by email
The link needs your mail server (SMTP_HOST and the others, see Email) and the address of your page (PUBLIC_URL, or the one shown at the foot of the Notifications page). See Forgotten password in the self-hosting guide.
What's next
The roadmap now lists, in order, what comes before 1.0.
Upgrade
Back up your data first (see the self-hosting guide), then, next to your docker-compose.yml:
docker compose pull && docker compose up -dThe database is upgraded on start. Every change is listed in the changelog.
0.3.1
- A long service name in the Services block wraps onto a second line instead of being cut short, and the state moves below it when the column is narrow (#10).
- Fixed: in Safari, the "Show" title of a block's settings menu no longer sits on the menu's top border.
- The browser tab icon sits on a white rounded tile, so it stays readable on a dark tab bar.
Upgrade with docker compose pull then docker compose up -d. Your data stays as it is.
0.3.0
Statup now tells people where they already are. Open an incident and your team reads it in Teams, Slack or their inbox, without anyone opening the status page.
What's new
- Notifications. Send each incident, maintenance and announcement to Microsoft Teams, Slack, Google Chat, Discord, Mattermost, a phone through ntfy, email, or any tool through a webhook. Under Settings, Notifications, choose what each destination receives and in which language, and send a test before saving.
- Built to keep going. A destination that does not answer is tried again for about forty minutes, its messages in order. The Notifications page shows the last message each one received, or why it failed. A destination can also receive the outages the checks detect, and their end.
- German and Spanish. Statup now speaks four languages. The language button lists them, a member's choice is kept for the next sign-in, and the time shows on 24 hours outside English.
DEFAULT_LOCALEacceptsdeandes. Thanks to @Latschenharry for asking. - Ninety days of history. The Services page shows each service's last ninety days, with how many had an incident; the dashboard's Services block shows them too when it has a row of its own.
- Quicker to manage. Settings opens on a strip of shortcuts to the team, the notifications, the icons, the dashboard and the version. A pencil at the end of each row in Services opens a service's settings.
- Better on a phone. The event list keeps the search in view and folds the other filters behind one button.
Email goes through your own mail server, set with SMTP_HOST, SMTP_SECURITY, SMTP_PORT, SMTP_USERNAME, SMTP_PASSWORD and SMTP_FROM (see Email in the self-hosting guide). Email destinations are offered once SMTP_HOST is set; the other destinations need nothing more.
Upgrade
Back up your data first (see the self-hosting guide), then, next to your docker-compose.yml:
docker compose pull && docker compose up -dThe database is upgraded on start. Every change is listed in the changelog.
0.2.1
- Fixed: in Safari with the dark theme, the page no longer darkens for a moment on each new page, and the toolbar keeps its colour.
- Pages now change at once instead of fading into each other; the first launch keeps its step transitions.
- In the dark theme, the masthead takes the colour of the page, as it does in the light theme.
- Fixed: in Safari, opening the account menu no longer scrolls the page back to its top.
- In the footer, the mark and the separator line up with the text beside them.
- The footer links to the page that explains how to get notified, so visitors find it even when the Recent activity block is hidden.
- Fixed: with several services disrupted, the banner gives the latest update of each incident on its own row, on one line, instead of a single update at the bottom that named no incident.
Upgrade with docker compose pull then docker compose up -d. Your data stays as it is.