{"id":7,"date":"2026-10-22T19:03:53","date_gmt":"2026-10-22T17:03:53","guid":{"rendered":"https:\/\/demo.leitvia.com\/docs\/?page_id=7"},"modified":"2026-10-22T19:03:53","modified_gmt":"2026-10-22T17:03:53","slug":"home","status":"publish","type":"page","link":"https:\/\/demo.leitvia.com\/docs\/","title":{"rendered":"Home"},"content":{"rendered":"\n<div class=\"wp-block-group alignfull has-surface-background-color has-background has-global-padding is-layout-constrained wp-block-group-is-layout-constrained\" style=\"padding-top:var(--wp--preset--spacing--xl);padding-bottom:var(--wp--preset--spacing--xl)\">\n\t\n\t<p class=\"alignwide has-ink-muted-color has-text-color has-meta-font-size wp-block-paragraph\" style=\"letter-spacing:0.08em;text-transform:uppercase\">Lantern 3.2 \u00b7 Documentation<\/p>\n\t\n\t\n\t<h1 class=\"wp-block-heading alignwide has-display-font-size\">Uptime checks and status pages you host yourself<\/h1>\n\t\n\t\n\t<hr class=\"wp-block-separator alignwide has-alpha-channel-opacity is-style-wide\" style=\"margin-top:var(--wp--preset--spacing--l);margin-bottom:var(--wp--preset--spacing--l)\"\/>\n\t\n\t\n\t<div class=\"wp-block-columns alignwide is-layout-flex wp-container-core-columns-is-layout-1014a36f wp-block-columns-is-layout-flex\">\n\t\t\n\t\t<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:66.66%\">\n\t\t\t\n\t\t\t<p class=\"has-lead-font-size wp-block-paragraph\">Lantern watches your websites, APIs and servers from a machine you control and tells you when something breaks. One binary, one configuration file, no account and no data leaving your network.<\/p>\n\t\t\t\n\t\t<\/div>\n\t\t\n\t\t\n\t\t<div class=\"wp-block-column is-layout-flow wp-container-core-column-is-layout-dab80a65 wp-block-column-is-layout-flow\" style=\"flex-basis:33.33%\">\n\t\t\t\n\t\t\t<p class=\"wp-block-paragraph\" style=\"font-weight:600\">Open source, MIT licence<\/p>\n\t\t\t\n\t\t\t\n\t\t\t<p class=\"has-ink-muted-color has-text-color has-meta-font-size wp-block-paragraph\">A fictional product for the Leitvia demo<\/p>\n\t\t\t\n\t\t\t\n\t\t\t<p class=\"has-ink-muted-color has-text-color has-meta-font-size wp-block-paragraph\">Version 3.2.0, 6 October 2026<\/p>\n\t\t\t\n\t\t<\/div>\n\t\t\n\t<\/div>\n\t\n<\/div>\n\n\n\n<div class=\"wp-block-group alignfull has-surface-background-color has-background has-global-padding is-layout-constrained wp-block-group-is-layout-constrained\" style=\"padding-top:var(--wp--preset--spacing--xl);padding-bottom:var(--wp--preset--spacing--xl)\">\n\t\n\t<div class=\"wp-block-group alignwide has-global-padding is-content-justification-left is-layout-constrained wp-container-core-group-is-layout-a3d7f08a wp-block-group-is-layout-constrained\">\n\t\t\n\t\t<h2 class=\"wp-block-heading has-heading-l-font-size\">What Lantern checks and how it tells you<\/h2>\n\t\t\n\t\t\n\t\t<p class=\"has-ink-muted-color has-text-color has-lead-font-size wp-block-paragraph\">Every check runs on your own server at the interval you choose. Results stay in a local database.<\/p>\n\t\t\n\t<\/div>\n\t\n\t\n\t<div class=\"wp-block-group alignwide is-layout-grid wp-container-core-group-is-layout-d14117c2 wp-block-group-is-layout-grid\" style=\"margin-top:var(--wp--preset--spacing--l)\">\n\t\t\n\t\t<div class=\"wp-block-group has-surface-alt-background-color has-background is-layout-flow wp-container-core-group-is-layout-4be23233 wp-block-group-is-layout-flow\" style=\"padding-top:var(--wp--preset--spacing--m);padding-right:var(--wp--preset--spacing--m);padding-bottom:var(--wp--preset--spacing--m);padding-left:var(--wp--preset--spacing--m)\">\n\t\t\t\n\t\t\t<h3 class=\"wp-block-heading\">HTTP and HTTPS<\/h3>\n\t\t\t\n\t\t\t\n\t\t\t<p class=\"has-ink-muted-color has-text-color wp-block-paragraph\">Status codes, response times, redirects and the text a page must contain.<\/p>\n\t\t\t\n\t\t<\/div>\n\t\t\n\t\t\n\t\t<div class=\"wp-block-group has-surface-alt-background-color has-background is-layout-flow wp-container-core-group-is-layout-4be23233 wp-block-group-is-layout-flow\" style=\"padding-top:var(--wp--preset--spacing--m);padding-right:var(--wp--preset--spacing--m);padding-bottom:var(--wp--preset--spacing--m);padding-left:var(--wp--preset--spacing--m)\">\n\t\t\t\n\t\t\t<h3 class=\"wp-block-heading\">Certificates<\/h3>\n\t\t\t\n\t\t\t\n\t\t\t<p class=\"has-ink-muted-color has-text-color wp-block-paragraph\">Warns 21 days before a TLS certificate expires, and again on the last seven days.<\/p>\n\t\t\t\n\t\t<\/div>\n\t\t\n\t\t\n\t\t<div class=\"wp-block-group has-surface-alt-background-color has-background is-layout-flow wp-container-core-group-is-layout-4be23233 wp-block-group-is-layout-flow\" style=\"padding-top:var(--wp--preset--spacing--m);padding-right:var(--wp--preset--spacing--m);padding-bottom:var(--wp--preset--spacing--m);padding-left:var(--wp--preset--spacing--m)\">\n\t\t\t\n\t\t\t<h3 class=\"wp-block-heading\">TCP ports<\/h3>\n\t\t\t\n\t\t\t\n\t\t\t<p class=\"has-ink-muted-color has-text-color wp-block-paragraph\">Databases, mail servers and anything else that listens on a port.<\/p>\n\t\t\t\n\t\t<\/div>\n\t\t\n\t\t\n\t\t<div class=\"wp-block-group has-surface-alt-background-color has-background is-layout-flow wp-container-core-group-is-layout-4be23233 wp-block-group-is-layout-flow\" style=\"padding-top:var(--wp--preset--spacing--m);padding-right:var(--wp--preset--spacing--m);padding-bottom:var(--wp--preset--spacing--m);padding-left:var(--wp--preset--spacing--m)\">\n\t\t\t\n\t\t\t<h3 class=\"wp-block-heading\">E-mail and webhooks<\/h3>\n\t\t\t\n\t\t\t\n\t\t\t<p class=\"has-ink-muted-color has-text-color wp-block-paragraph\">Alerts by SMTP or as JSON to any URL, with quiet hours and repeat limits.<\/p>\n\t\t\t\n\t\t<\/div>\n\t\t\n\t\t\n\t\t<div class=\"wp-block-group has-surface-alt-background-color has-background is-layout-flow wp-container-core-group-is-layout-4be23233 wp-block-group-is-layout-flow\" style=\"padding-top:var(--wp--preset--spacing--m);padding-right:var(--wp--preset--spacing--m);padding-bottom:var(--wp--preset--spacing--m);padding-left:var(--wp--preset--spacing--m)\">\n\t\t\t\n\t\t\t<h3 class=\"wp-block-heading\">Status page<\/h3>\n\t\t\t\n\t\t\t\n\t\t\t<p class=\"has-ink-muted-color has-text-color wp-block-paragraph\">A static, accessible status page that Lantern rewrites after every check.<\/p>\n\t\t\t\n\t\t<\/div>\n\t\t\n\t\t\n\t\t<div class=\"wp-block-group has-surface-alt-background-color has-background is-layout-flow wp-container-core-group-is-layout-4be23233 wp-block-group-is-layout-flow\" style=\"padding-top:var(--wp--preset--spacing--m);padding-right:var(--wp--preset--spacing--m);padding-bottom:var(--wp--preset--spacing--m);padding-left:var(--wp--preset--spacing--m)\">\n\t\t\t\n\t\t\t<h3 class=\"wp-block-heading\">REST API<\/h3>\n\t\t\t\n\t\t\t\n\t\t\t<p class=\"has-ink-muted-color has-text-color wp-block-paragraph\">Read results and pause checks from scripts, with a token per client.<\/p>\n\t\t\t\n\t\t<\/div>\n\t\t\n\t<\/div>\n\t\n<\/div>\n\n\n\n<div class=\"wp-block-group alignfull has-surface-alt-background-color has-background has-global-padding is-content-justification-left is-layout-constrained wp-container-core-group-is-layout-aa0f3b33 wp-block-group-is-layout-constrained\" style=\"padding-top:var(--wp--preset--spacing--xxl);padding-bottom:var(--wp--preset--spacing--xxl)\">\n\t\n\t<blockquote class=\"wp-block-quote has-heading-m-font-size is-layout-flow wp-block-quote-is-layout-flow\" style=\"line-height:1.3\">\n\t\t\n\t\t<p class=\"wp-block-paragraph\">We replaced a hosted monitor with Lantern on a ten euro server. It found an expiring certificate in the first week, and our data never left the building.<\/p>\n\t\t\n\t\t<cite>Jorinde Maas, operations lead at a fictional city utility<\/cite>\n\t<\/blockquote>\n\t\n<\/div>\n\n\n\n<div class=\"wp-block-group alignfull has-surface-background-color has-background has-global-padding is-layout-constrained wp-block-group-is-layout-constrained\" style=\"padding-top:var(--wp--preset--spacing--xl);padding-bottom:var(--wp--preset--spacing--xl)\">\n\t\n\t<h2 class=\"wp-block-heading alignwide has-heading-l-font-size\">From download to first alert in four steps<\/h2>\n\t\n\t\n\t<div class=\"wp-block-group alignwide is-layout-grid wp-container-core-group-is-layout-e2173882 wp-block-group-is-layout-grid\" style=\"margin-top:var(--wp--preset--spacing--l)\">\n\t\t\n\t\t<div class=\"wp-block-group is-layout-grid wp-container-core-group-is-layout-80e58df4 wp-block-group-is-layout-grid\">\n\t\t\t\n\t\t\t<div class=\"wp-block-group is-layout-flow wp-container-core-group-is-layout-1eccee84 wp-block-group-is-layout-flow\" style=\"border-top-color:var(--wp--preset--color--stroke);border-top-width:0.0625rem;padding-top:var(--wp--preset--spacing--m)\">\n\t\t\t\t\n\t\t\t\t<p class=\"has-accent-color has-text-color has-heading-font-family has-heading-m-font-size wp-block-paragraph\">01<\/p>\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t<h3 class=\"wp-block-heading\">Install<\/h3>\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t<p class=\"has-ink-muted-color has-text-color wp-block-paragraph\">Download one binary for Linux, macOS or Windows, or run the container image.<\/p>\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t\t\n\t\t\t<div class=\"wp-block-group is-layout-flow wp-container-core-group-is-layout-1eccee84 wp-block-group-is-layout-flow\" style=\"border-top-color:var(--wp--preset--color--stroke);border-top-width:0.0625rem;padding-top:var(--wp--preset--spacing--m)\">\n\t\t\t\t\n\t\t\t\t<p class=\"has-accent-color has-text-color has-heading-font-family has-heading-m-font-size wp-block-paragraph\">02<\/p>\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t<h3 class=\"wp-block-heading\">Configure<\/h3>\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t<p class=\"has-ink-muted-color has-text-color wp-block-paragraph\">Describe your checks in lantern.yml: what to call, how often and what counts as healthy.<\/p>\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t<\/div>\n\t\t\n\t\t\n\t\t<div class=\"wp-block-group is-layout-grid wp-container-core-group-is-layout-80e58df4 wp-block-group-is-layout-grid\">\n\t\t\t\n\t\t\t<div class=\"wp-block-group is-layout-flow wp-container-core-group-is-layout-1eccee84 wp-block-group-is-layout-flow\" style=\"border-top-color:var(--wp--preset--color--stroke);border-top-width:0.0625rem;padding-top:var(--wp--preset--spacing--m)\">\n\t\t\t\t\n\t\t\t\t<p class=\"has-accent-color has-text-color has-heading-font-family has-heading-m-font-size wp-block-paragraph\">03<\/p>\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t<h3 class=\"wp-block-heading\">Start<\/h3>\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t<p class=\"has-ink-muted-color has-text-color wp-block-paragraph\">Run lantern serve. The first round of checks starts at once, the status page follows.<\/p>\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t\t\n\t\t\t<div class=\"wp-block-group is-layout-flow wp-container-core-group-is-layout-1eccee84 wp-block-group-is-layout-flow\" style=\"border-top-color:var(--wp--preset--color--stroke);border-top-width:0.0625rem;padding-top:var(--wp--preset--spacing--m)\">\n\t\t\t\t\n\t\t\t\t<p class=\"has-accent-color has-text-color has-heading-font-family has-heading-m-font-size wp-block-paragraph\">04<\/p>\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t<h3 class=\"wp-block-heading\">Get notified<\/h3>\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t<p class=\"has-ink-muted-color has-text-color wp-block-paragraph\">Add an e-mail address or webhook, and Lantern tells you when a check fails and when it recovers.<\/p>\n\t\t\t\t\n\t\t\t<\/div>\n\t\t\t\n\t\t<\/div>\n\t\t\n\t<\/div>\n\t\n<\/div>\n\n\n\n<div class=\"wp-block-group alignfull has-surface-alt-background-color has-background has-global-padding is-layout-constrained wp-block-group-is-layout-constrained\" style=\"padding-top:var(--wp--preset--spacing--xl);padding-bottom:var(--wp--preset--spacing--xl)\">\n\t\n\t<div class=\"wp-block-columns alignwide is-layout-flex wp-container-core-columns-is-layout-d06523d6 wp-block-columns-is-layout-flex\">\n\t\t\n\t\t<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:42%\">\n\t\t\t\n\t\t\t<p class=\"is-style-eyebrow has-accent-color has-text-color wp-block-paragraph\">Support<\/p>\n\t\t\t\n\t\t\t\n\t\t\t<h2 class=\"wp-block-heading has-heading-l-font-size\">Stuck? Ask the people who build Lantern.<\/h2>\n\t\t\t\n\t\t\t\n\t\t\t<p class=\"has-ink-muted-color has-text-color wp-block-paragraph\">Questions about setup, bug reports and ideas reach the maintainers directly. We answer within two working days.<\/p>\n\t\t\t\n\t\t<\/div>\n\t\t\n\t\t\n\t\t<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:58%\">\n\t\t\t\n\t\t\t<ul class=\"wp-block-list is-style-divided has-heading-font-family has-heading-s-font-size\">\n\t\t\t\t\n\t\t\t\t<li>Write to <a href=\"mailto:support@example.org\">support@example.org<\/a><\/li>\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t<li>Security reports to <a href=\"mailto:security@example.org\">security@example.org<\/a><\/li>\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t<li>Release notes in the changelog of this documentation<\/li>\n\t\t\t\t\n\t\t\t<\/ul>\n\t\t\t\n\t\t\t\n\t\t\t<p class=\"has-ink-muted-color has-text-color has-meta-font-size wp-block-paragraph\">Lantern is fictional; these addresses use the reserved domain example.org.<\/p>\n\t\t\t\n\t\t<\/div>\n\t\t\n\t<\/div>\n\t\n<\/div>\n\n\n","protected":false},"excerpt":{"rendered":"<p>Lantern is a fictional self-hosted uptime monitor; this is its documentation, built with Leitvia.<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"page-landing","meta":{"_leitvia_easy_language_of":0,"footnotes":""},"class_list":["post-7","page","type-page","status-publish","hentry"],"leitvia_pattern_status":null,"_links":{"self":[{"href":"https:\/\/demo.leitvia.com\/docs\/wp-json\/wp\/v2\/pages\/7","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/demo.leitvia.com\/docs\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/demo.leitvia.com\/docs\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/demo.leitvia.com\/docs\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/demo.leitvia.com\/docs\/wp-json\/wp\/v2\/comments?post=7"}],"version-history":[{"count":2,"href":"https:\/\/demo.leitvia.com\/docs\/wp-json\/wp\/v2\/pages\/7\/revisions"}],"predecessor-version":[{"id":43,"href":"https:\/\/demo.leitvia.com\/docs\/wp-json\/wp\/v2\/pages\/7\/revisions\/43"}],"wp:attachment":[{"href":"https:\/\/demo.leitvia.com\/docs\/wp-json\/wp\/v2\/media?parent=7"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}