release: v0.13.0 (#535)

Twenty-nine commits since v0.12.0. See CHANGELOG.md for the full list
and the upgrade notes.

Ten additions — the SEO package (site URL, robots.txt, sitemap.xml,
JSON-LD), slideshow mode, opt-in original downloads, copy-link,
previous/next album navigation, alt text from the Immich description,
per-album location precision, the update notice, a Help tab, and a
subpage cover grid separate from its photo grid. Two fixes: CJK album
slugs, and the lightbox control bar.

Photo of the Day (#476) was built on `dev` and reverted as not planned;
it never appears in a release.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

https://claude.ai/code/session_01DmsHVRL9yQvckUB1ZpVWre

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: ralksta <ralksta@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Ralksta
2026-08-25 10:08:12 +02:00
committed by GitHub
parent 10ec68f493
commit a813433891
73 changed files with 4697 additions and 453 deletions

View File

@@ -1017,6 +1017,79 @@
height: 16px;
}
/* ── Album navigation (previous / next) ── */
.album-nav {
display: flex;
justify-content: space-between;
align-items: stretch;
gap: 16px;
max-width: var(--max-width);
margin: 64px auto 96px;
padding: 24px 24px 0;
border-top: 1px solid var(--border-subtle);
}
.album-nav__link {
display: inline-flex;
align-items: center;
gap: 12px;
max-width: 45%;
color: var(--text-secondary);
transition: color var(--transition-fast);
}
.album-nav__link:hover {
color: var(--text-primary);
}
.album-nav__link--next {
margin-left: auto;
text-align: right;
}
.album-nav__link svg {
width: 20px;
height: 20px;
flex-shrink: 0;
}
.album-nav__text {
display: flex;
flex-direction: column;
gap: 2px;
min-width: 0;
}
.album-nav__kicker {
font-family: var(--font-caption);
font-size: 0.7rem;
letter-spacing: 0.08em;
text-transform: uppercase;
color: var(--text-muted);
}
.album-nav__name {
font-family: var(--font-serif);
font-size: 1.05rem;
color: inherit;
/* Long album names must not push the pair apart. */
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
@media (max-width: 600px) {
.album-nav {
margin: 48px auto 64px;
padding: 20px 16px 0;
}
.album-nav__name {
font-size: 0.95rem;
}
}
.album-header__title {
font-family: var(--font-serif);
font-size: 2.5rem;