diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml
index 007b6607..e102164f 100644
--- a/.github/workflows/gh-pages.yml
+++ b/.github/workflows/gh-pages.yml
@@ -11,13 +11,13 @@ jobs:
deploy:
runs-on: ubuntu-latest
steps:
- - uses: actions/checkout@v4
+ - uses: actions/checkout@v7
with:
submodules: true # Fetch Hugo themes (true OR recursive)
fetch-depth: 1 # Fetch all history for .GitInfo and .Lastmod
- name: Setup Hugo
- uses: peaceiris/actions-hugo@v2
+ uses: peaceiris/actions-hugo@v3
with:
hugo-version: "latest"
extended: true
@@ -26,14 +26,14 @@ jobs:
run: hugo --buildFuture --minify
- name: Deploy
- uses: peaceiris/actions-gh-pages@v3
+ uses: peaceiris/actions-gh-pages@v4
if: github.ref == 'refs/heads/main'
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./public
- name: Upload page build as artifact
- uses: actions/upload-artifact@v4
+ uses: actions/upload-artifact@v7
if: github.ref != 'refs/heads/main'
with:
name: scverse.github.io
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index f9393d19..ecb21d93 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -6,3 +6,14 @@ repos:
additional_dependencies:
- prettier
- prettier-plugin-go-template
+ - repo: https://github.com/ericmjl/webp-pre-commit
+ rev: v0.0.12
+ hooks:
+ # Convert only blog images
+ - id: convert-to-webp
+ files: ^static/img/blog/.*\.(png|jpe?g|gif|bmp|tiff)$
+ - repo: https://github.com/shssoichiro/oxipng
+ rev: v10.2.0
+ hooks:
+ - id: oxipng
+ args: [--strip, safe]
diff --git a/assets/main.scss b/assets/main.scss
index 8a3ee6e1..7bdb074c 100644
--- a/assets/main.scss
+++ b/assets/main.scss
@@ -95,45 +95,38 @@ $additionalInfoColor: #666666;
}
}
-@mixin button-icon {
- display: inline-block;
- height: 1rem;
- width: 1rem;
- content: "";
- padding: 0;
- margin: 0;
+@each $icon in zulip, discourse, bluesky {
+ .i-#{$icon}::before {
+ display: inline-block;
+ height: 1rem;
+ width: 1rem;
+ content: "";
+ padding: 0;
+ margin: 0;
+ background: url("/img/icons/#{$icon}.svg") no-repeat center / contain;
+ transition:
+ background 200ms ease-out,
+ filter 200ms ease-out;
+ opacity: 0.6666; // text color is #555
+ .card:hover & {
+ opacity: 1;
+ }
+ }
}
-.i-zulip::before {
- background: url("/img/icons/zulip.svg") no-repeat top left;
- transition: background 200ms ease-out;
- @include button-icon;
-}
-.i-discourse::before {
- background: url("/img/icons/discourse.svg") no-repeat top left;
- transition: background 200ms ease-out;
- @include button-icon;
-}
.i-xcom::before {
content: "𝕏";
font-weight: 900;
- transition: background 200ms ease-out;
-}
-.i-bluesky::before {
- background: center / contain no-repeat url("/img/icons/bluesky.svg");
- transition: all 200ms ease-out;
- @include button-icon;
+ transition:
+ background 200ms ease-out,
+ filter 200ms ease-out;
}
.card:hover {
- .i-zulip::before {
- background: url("/img/icons/zulip_inv.svg") no-repeat top left;
- }
- .i-discourse::before {
- background: url("/img/icons/discourse_inv.svg") no-repeat top left;
- }
+ // Not discord, since it’s light-colored
+ .i-zulip::before,
.i-bluesky::before {
- filter: invert(1);
+ filter: invert(100%);
}
}
@@ -143,27 +136,45 @@ $additionalInfoColor: #666666;
border: none;
}
-#badges .btn-github:hover {
+#join-content .card {
+ h5 {
+ font-weight: 700;
+ }
+ transition: all 200ms ease-in-out;
+ color: $navtext;
+ &:hover {
+ background: #78cbd9 !important;
+ transform: scale(1.02);
+ }
+}
+
+#badges .btn-github:hover,
+#join-content .card#github:hover {
background-color: $github-black !important;
color: white !important;
}
-#badges .btn-discourse:hover {
+#badges .btn-discourse:hover,
+#join-content .card#discourse:hover {
background-color: $discourse-yellow !important;
color: black !important;
}
-#badges .btn-zulip:hover {
+#badges .btn-zulip:hover,
+#join-content .card#zulip:hover {
background-color: $zulip-blue !important;
color: white !important;
}
-#badges .btn-twitter:hover {
+#badges .btn-twitter:hover,
+#join-content .card#twitter:hover {
background-color: $twitter-blue !important;
color: white !important;
}
-#badges .btn-bluesky:hover {
+#badges .btn-bluesky:hover,
+#join-content .card#bluesky:hover {
background-color: $bluesky-blue !important;
color: white !important;
}
-#badges .btn-youtube:hover {
+#badges .btn-youtube:hover,
+#join-content .card#youtube:hover {
background-color: $youtube-red !important;
color: white !important;
}
@@ -300,7 +311,7 @@ body {
#scverse-logo {
width: 3rem;
height: 3rem;
- background: url("/img/icons/scverse_bw_logo.svg") no-repeat top left;
+ background: url("/img/icons/scverse-bw-logo.svg") no-repeat top left;
&:hover {
transform: scale(1.1);
}
@@ -730,43 +741,6 @@ body {
}
}
-#join-content {
- .card {
- h5 {
- font-weight: 700;
- }
- transition: all 200ms ease-in-out;
- color: $navtext;
- &:hover {
- background: #78cbd9 !important;
- transform: scale(1.02);
- }
- github:hover {
- color: white;
- background-color: $github-black !important;
- }
- twitter:hover {
- color: white;
- background-color: $twitter-blue !important;
- }
- zulip:hover {
- color: white;
- background-color: $zulip-blue !important;
- }
- discourse:hover {
- background-color: $discourse-yellow !important;
- }
- youtube:hover {
- color: white;
- background-color: $youtube-red !important;
- }
- bluesky:hover {
- color: white;
- background-color: $bluesky-blue !important;
- }
- }
-}
-
#page-content {
display: flex;
flex-direction: column;
diff --git a/content/blog/2024-conference-summary.md b/content/blog/2024-conference-summary.md
index 5d1474cc..9d34f37f 100644
--- a/content/blog/2024-conference-summary.md
+++ b/content/blog/2024-conference-summary.md
@@ -6,7 +6,7 @@ author = "Roshan Sharma"
draft = false
+++
-
+
@@ -25,7 +25,7 @@ The conference had 6 keynotes from leaders of the field and founders of Scanpy/s
You can learn more about what each of our speakers discussed by checking out the amazing [keynote sketches](https://lazappi.id.au/posts/2024-09-15-scverse-conference/) made by conference attendee Luke Zappia.
-
+
### Short talks
@@ -33,7 +33,7 @@ The conference also featured several 15-minute short talks, each followed by a Q
The presenters were primarily graduate students and postdoctoral researchers from various academic labs. We believe that providing opportunities for junior scientists to showcase their work and receive constructive feedback is crucial to fostering their growth. This format also allowed the audience to delve into the finer details of each method, complementing the broader discussions. Each short talk sparked extensive conversations, a testament to the effectiveness of this approach. Many attendees expressed their appreciation (some vignettes below) for the inclusion of these talks, particularly for highlighting the contributions of early-career researchers and promoting their visibility within the community.
-
+
### Workshops
@@ -43,19 +43,19 @@ The workshops covered a wide range of topics, from live-coding demonstrations an
The workshops were widely regarded as one of the conference’s major highlights, as reflected in the enthusiastic feedback from participants (see examples below).
-
+
### Poster session
The conference also featured a poster session, where participants showcased their research and engaged in discussions with attendees. A total of 51 posters were presented during the two-hour session, providing ample opportunity for in-depth conversations and knowledge exchange.
-
+
### Sponsor talks
The conference would not have been possible without the generous support of our sponsors. We were honored to receive sponsorships from [CZI](https://chanzuckerberg.com/) (Diamond), [Immunai](https://www.immunai.com/) (Platinum), [Altos](https://www.altoslabs.com/) (Gold), [10x Genomics](https://www.10xgenomics.com/) (Gold), [tilDB](https://tiledb.com/) (Gold), [Lamin](https://lamin.ai/) (Silver), [Latch Bio](https://latch.bio/) (Silver), [Data Intuitive](https://www.data-intuitive.com/) (Silver) and [Boehringer-Ingelheim](https://www.boehringer-ingelheim.com/de) (Silver). As part of the sponsor engagement, 10x Genomics delivered a brief presentation on their latest initiatives, CZI hosted a workshop and gave a short talk, and Immunai presented their latest research. The conference also provided an excellent opportunity for participants to network with industry leaders, fostering collaboration and knowledge exchange.
-
+
### Vignettes from participants
diff --git a/content/blog/2025-07-biomni.md b/content/blog/2025-07-biomni.md
index ff0e2383..b49626ba 100644
--- a/content/blog/2025-07-biomni.md
+++ b/content/blog/2025-07-biomni.md
@@ -6,7 +6,7 @@ author = "scverse team & Biomni team"
draft = false
+++
-
+
Single-cell and spatial omics have unlocked unprecedented insights into cellular diversity, tissue architecture, and drug responses.
Despite the remarkable progress in computational tools, the diversity and complexity of analyses can still pose challenges.
@@ -64,7 +64,7 @@ Instead of writing and debugging code across several libraries, you can now exec
- [âś“] Driver pathway identification (completed)
- [âś“] Generate comprehensive HTML report (completed)
-
+
Biomni has successfully completed these steps in around 20 minutes.
It preprocesses the data, identifies 21 distinct cell types from 17,771 high-quality cells, and maps them across spatial axes with clear anterior-posterior and dorsal-ventral organization.
diff --git a/content/blog/2025-11-biocontextai.md b/content/blog/2025-11-biocontextai.md
index 87b52b89..774b3180 100644
--- a/content/blog/2025-11-biocontextai.md
+++ b/content/blog/2025-11-biocontextai.md
@@ -13,7 +13,7 @@ BioContextAI provides a community registry for Model Context Protocol (MCP) serv
These are standardized tools that allow AI systems to access specialized databases and software.
This project was recently published as a [Nature Biotechnology correspondence][Nature Biotechnology correspondence] and we are actively starting to explore and contribute scverse MCP servers.
-
+
## What we're building
diff --git a/content/blog/2025-conference-summary.md b/content/blog/2025-conference-summary.md
index 3740c73d..13aadc0e 100644
--- a/content/blog/2025-conference-summary.md
+++ b/content/blog/2025-conference-summary.md
@@ -7,14 +7,14 @@ draft = false
+++
+
+
+
+
+
+
+
+
-
-
-
+
+
+
+
+
## rapids-singlecell
@@ -36,7 +36,7 @@ Core steps—including PCA, neighborhood graph construction, and clustering—ar
RSC integrates directly with AnnData and offers near drop-in replacements not only for scanpy, but also for selected functions from decoupler and squidpy.
By preserving familiar APIs and data structures, it enables seamless GPU acceleration of existing workflows—scaling to millions of cells without the computational bottlenecks of CPU-based analysis.
-
+
For more details, we refer to a recent blog post by NVIDIA: [Driving Toward Billion-Cell Analysis and Biological Breakthroughs with RAPIDS-singlecell](https://developer.nvidia.com/blog/driving-toward-billion-cell-analysis-and-biological-breakthroughs-with-rapids-singlecell)
@@ -55,7 +55,7 @@ Built on AnnData and scverse libraries, pertpy fits smoothly into existing pipel
It maps omics profiles to annotated biological sets, such as transcription factors, pathways, or kinases, using methods like GSEA, GSVA, and linear models.
Designed for bulk, single-cell and spatial data, decoupler works directly with our scverse core data structures.
-
+
## What this means
diff --git a/content/blog/2026-gget-joins-scverse.md b/content/blog/2026-gget-joins-scverse.md
index 78ac9304..c3f1a110 100644
--- a/content/blog/2026-gget-joins-scverse.md
+++ b/content/blog/2026-gget-joins-scverse.md
@@ -9,7 +9,7 @@ draft = false
Querying genomic reference databases is something every bioinformatician does constantly, and doing it well has historically required juggling a patchwork of APIs, file formats, and web interfaces.
[gget](https://github.com/scverse/gget) was built to fix that, and is now officially part of the scverse ecosystem.
-
+
## What is gget?
diff --git a/content/design/_index.md b/content/design/_index.md
index 47ff8c73..d1ef382a 100644
--- a/content/design/_index.md
+++ b/content/design/_index.md
@@ -48,23 +48,23 @@ Our primary logo combines our icon with the full name. Use this version when int
[[primarylogos]]
name = "Icon Only"
description = "Logo mark without text"
- img = "../img/logo/scverse_symbol.svg"
+ img = "../img/logo/scverse-symbol.svg"
details = "Our icon can be used independently when space is limited or when our brand is already well-established in context."
[[primarylogos.links]]
text = "Download SVG"
- url = "../img/logo/scverse_symbol.svg"
+ url = "../img/logo/scverse-symbol.svg"
[[primarylogos.links]]
text = "Download PNG"
- url = "../img/logo/scverse_symbol.png"
+ url = "../img/logo/scverse-symbol.png"
[[trademarkedlogos]]
name = "Icon (® version)"
description = "Icon trademarked"
- img = "../img/icons/scverse_bw_logo.svg"
+ img = "../img/icons/scverse-bw-logo.svg"
details = "Use this version to indicate that scverse is a registered trademark in formal or legal contexts."
[[trademarkedlogos.links]]
text = "Download SVG"
- url = "../img/icons/scverse_bw_logo.svg"
+ url = "../img/icons/scverse-bw-logo.svg"
[[packageicons]]
name = "anndata"
diff --git a/static/img/blog/biocontextai_overview.png b/static/img/blog/biocontextai_overview.png
deleted file mode 100644
index 8c3798cb..00000000
Binary files a/static/img/blog/biocontextai_overview.png and /dev/null differ
diff --git a/static/img/blog/biocontextai_overview.webp b/static/img/blog/biocontextai_overview.webp
new file mode 100644
index 00000000..183ac821
Binary files /dev/null and b/static/img/blog/biocontextai_overview.webp differ
diff --git a/static/img/blog/conference2024-keynote.png b/static/img/blog/conference2024-keynote.png
deleted file mode 100644
index adb0b828..00000000
Binary files a/static/img/blog/conference2024-keynote.png and /dev/null differ
diff --git a/static/img/blog/conference2024-keynote.webp b/static/img/blog/conference2024-keynote.webp
new file mode 100644
index 00000000..8aed43e1
Binary files /dev/null and b/static/img/blog/conference2024-keynote.webp differ
diff --git a/static/img/blog/conference2024-poster.png b/static/img/blog/conference2024-poster.png
deleted file mode 100644
index 966072db..00000000
Binary files a/static/img/blog/conference2024-poster.png and /dev/null differ
diff --git a/static/img/blog/conference2024-poster.webp b/static/img/blog/conference2024-poster.webp
new file mode 100644
index 00000000..8a0f3750
Binary files /dev/null and b/static/img/blog/conference2024-poster.webp differ
diff --git a/static/img/blog/conference2024-shorttalk.png b/static/img/blog/conference2024-shorttalk.png
deleted file mode 100644
index 157e2100..00000000
Binary files a/static/img/blog/conference2024-shorttalk.png and /dev/null differ
diff --git a/static/img/blog/conference2024-shorttalk.webp b/static/img/blog/conference2024-shorttalk.webp
new file mode 100644
index 00000000..7b8e820a
Binary files /dev/null and b/static/img/blog/conference2024-shorttalk.webp differ
diff --git a/static/img/blog/conference2024-sponsors.png b/static/img/blog/conference2024-sponsors.png
deleted file mode 100644
index 7f5a8377..00000000
Binary files a/static/img/blog/conference2024-sponsors.png and /dev/null differ
diff --git a/static/img/blog/conference2024-sponsors.webp b/static/img/blog/conference2024-sponsors.webp
new file mode 100644
index 00000000..bc4caadd
Binary files /dev/null and b/static/img/blog/conference2024-sponsors.webp differ
diff --git a/static/img/blog/conference2024-workshop.png b/static/img/blog/conference2024-workshop.png
deleted file mode 100644
index 340fea94..00000000
Binary files a/static/img/blog/conference2024-workshop.png and /dev/null differ
diff --git a/static/img/blog/conference2024-workshop.webp b/static/img/blog/conference2024-workshop.webp
new file mode 100644
index 00000000..5c4ab22e
Binary files /dev/null and b/static/img/blog/conference2024-workshop.webp differ
diff --git a/static/img/blog/conference2024.png b/static/img/blog/conference2024.png
deleted file mode 100644
index a62b70f4..00000000
Binary files a/static/img/blog/conference2024.png and /dev/null differ
diff --git a/static/img/blog/conference2024.webp b/static/img/blog/conference2024.webp
new file mode 100644
index 00000000..0ce31692
Binary files /dev/null and b/static/img/blog/conference2024.webp differ
diff --git a/static/img/blog/conference2025/conference2025-day2.jpg b/static/img/blog/conference2025/conference2025-day2.jpg
deleted file mode 100644
index b43b5069..00000000
Binary files a/static/img/blog/conference2025/conference2025-day2.jpg and /dev/null differ
diff --git a/static/img/blog/conference2025/conference2025-day2.webp b/static/img/blog/conference2025/conference2025-day2.webp
new file mode 100644
index 00000000..805a5954
Binary files /dev/null and b/static/img/blog/conference2025/conference2025-day2.webp differ
diff --git a/static/img/blog/conference2025/conference2025-keynote.jpg b/static/img/blog/conference2025/conference2025-keynote.jpg
deleted file mode 100644
index 333c91d4..00000000
Binary files a/static/img/blog/conference2025/conference2025-keynote.jpg and /dev/null differ
diff --git a/static/img/blog/conference2025/conference2025-keynote.webp b/static/img/blog/conference2025/conference2025-keynote.webp
new file mode 100644
index 00000000..315eaee1
Binary files /dev/null and b/static/img/blog/conference2025/conference2025-keynote.webp differ
diff --git a/static/img/blog/conference2025/conference2025-numbers.png b/static/img/blog/conference2025/conference2025-numbers.png
deleted file mode 100644
index 439c57c6..00000000
Binary files a/static/img/blog/conference2025/conference2025-numbers.png and /dev/null differ
diff --git a/static/img/blog/conference2025/conference2025-numbers.webp b/static/img/blog/conference2025/conference2025-numbers.webp
new file mode 100644
index 00000000..133046d7
Binary files /dev/null and b/static/img/blog/conference2025/conference2025-numbers.webp differ
diff --git a/static/img/blog/conference2025/conference2025-poster1.jpg b/static/img/blog/conference2025/conference2025-poster1.jpg
deleted file mode 100644
index 69122bd1..00000000
Binary files a/static/img/blog/conference2025/conference2025-poster1.jpg and /dev/null differ
diff --git a/static/img/blog/conference2025/conference2025-poster1.webp b/static/img/blog/conference2025/conference2025-poster1.webp
new file mode 100644
index 00000000..08bf62ea
Binary files /dev/null and b/static/img/blog/conference2025/conference2025-poster1.webp differ
diff --git a/static/img/blog/conference2025/conference2025-poster2.jpg b/static/img/blog/conference2025/conference2025-poster2.jpg
deleted file mode 100644
index 450aa5e1..00000000
Binary files a/static/img/blog/conference2025/conference2025-poster2.jpg and /dev/null differ
diff --git a/static/img/blog/conference2025/conference2025-poster2.webp b/static/img/blog/conference2025/conference2025-poster2.webp
new file mode 100644
index 00000000..a747c464
Binary files /dev/null and b/static/img/blog/conference2025/conference2025-poster2.webp differ
diff --git a/static/img/blog/conference2025/conference2025-poster3.jpg b/static/img/blog/conference2025/conference2025-poster3.jpg
deleted file mode 100644
index 404492c9..00000000
Binary files a/static/img/blog/conference2025/conference2025-poster3.jpg and /dev/null differ
diff --git a/static/img/blog/conference2025/conference2025-poster3.webp b/static/img/blog/conference2025/conference2025-poster3.webp
new file mode 100644
index 00000000..27f60b8e
Binary files /dev/null and b/static/img/blog/conference2025/conference2025-poster3.webp differ
diff --git a/static/img/blog/conference2025/conference2025-poster4.jpg b/static/img/blog/conference2025/conference2025-poster4.jpg
deleted file mode 100644
index 585a98ac..00000000
Binary files a/static/img/blog/conference2025/conference2025-poster4.jpg and /dev/null differ
diff --git a/static/img/blog/conference2025/conference2025-poster4.webp b/static/img/blog/conference2025/conference2025-poster4.webp
new file mode 100644
index 00000000..ef08ba79
Binary files /dev/null and b/static/img/blog/conference2025/conference2025-poster4.webp differ
diff --git a/static/img/blog/conference2025/conference2025-shorttalk.jpg b/static/img/blog/conference2025/conference2025-shorttalk.jpg
deleted file mode 100644
index 84112467..00000000
Binary files a/static/img/blog/conference2025/conference2025-shorttalk.jpg and /dev/null differ
diff --git a/static/img/blog/conference2025/conference2025-shorttalk.webp b/static/img/blog/conference2025/conference2025-shorttalk.webp
new file mode 100644
index 00000000..9dcd7ee6
Binary files /dev/null and b/static/img/blog/conference2025/conference2025-shorttalk.webp differ
diff --git a/static/img/blog/conference2025/conference2025-sponsors.png b/static/img/blog/conference2025/conference2025-sponsors.png
deleted file mode 100644
index 46d8c87d..00000000
Binary files a/static/img/blog/conference2025/conference2025-sponsors.png and /dev/null differ
diff --git a/static/img/blog/conference2025/conference2025-sponsors.webp b/static/img/blog/conference2025/conference2025-sponsors.webp
new file mode 100644
index 00000000..ec61fe33
Binary files /dev/null and b/static/img/blog/conference2025/conference2025-sponsors.webp differ
diff --git a/static/img/blog/conference2025/conference2025-workshop1.jpg b/static/img/blog/conference2025/conference2025-workshop1.jpg
deleted file mode 100644
index 1b2da01b..00000000
Binary files a/static/img/blog/conference2025/conference2025-workshop1.jpg and /dev/null differ
diff --git a/static/img/blog/conference2025/conference2025-workshop1.webp b/static/img/blog/conference2025/conference2025-workshop1.webp
new file mode 100644
index 00000000..55e705a1
Binary files /dev/null and b/static/img/blog/conference2025/conference2025-workshop1.webp differ
diff --git a/static/img/blog/conference2025/conference2025-workshop2.jpg b/static/img/blog/conference2025/conference2025-workshop2.jpg
deleted file mode 100644
index fd4278e9..00000000
Binary files a/static/img/blog/conference2025/conference2025-workshop2.jpg and /dev/null differ
diff --git a/static/img/blog/conference2025/conference2025-workshop2.webp b/static/img/blog/conference2025/conference2025-workshop2.webp
new file mode 100644
index 00000000..0b84df9d
Binary files /dev/null and b/static/img/blog/conference2025/conference2025-workshop2.webp differ
diff --git a/static/img/blog/conference2025/conference2025.jpg b/static/img/blog/conference2025/conference2025.jpg
deleted file mode 100644
index 8816589e..00000000
Binary files a/static/img/blog/conference2025/conference2025.jpg and /dev/null differ
diff --git a/static/img/blog/conference2025/conference2025.webp b/static/img/blog/conference2025/conference2025.webp
new file mode 100644
index 00000000..6cd4c3d2
Binary files /dev/null and b/static/img/blog/conference2025/conference2025.webp differ
diff --git a/static/img/blog/decoupler_overview.png b/static/img/blog/decoupler_overview.png
deleted file mode 100644
index d785348a..00000000
Binary files a/static/img/blog/decoupler_overview.png and /dev/null differ
diff --git a/static/img/blog/decoupler_overview.webp b/static/img/blog/decoupler_overview.webp
new file mode 100644
index 00000000..d200cd01
Binary files /dev/null and b/static/img/blog/decoupler_overview.webp differ
diff --git a/static/img/blog/gget_x_scverse_overview.png b/static/img/blog/gget_x_scverse_overview.png
deleted file mode 100644
index 3bb6ff45..00000000
Binary files a/static/img/blog/gget_x_scverse_overview.png and /dev/null differ
diff --git a/static/img/blog/gget_x_scverse_overview.webp b/static/img/blog/gget_x_scverse_overview.webp
new file mode 100644
index 00000000..9d18bb9a
Binary files /dev/null and b/static/img/blog/gget_x_scverse_overview.webp differ
diff --git a/static/img/blog/rsc_overview.png b/static/img/blog/rsc_overview.png
deleted file mode 100644
index c6d46af5..00000000
Binary files a/static/img/blog/rsc_overview.png and /dev/null differ
diff --git a/static/img/blog/rsc_overview.webp b/static/img/blog/rsc_overview.webp
new file mode 100644
index 00000000..074e6680
Binary files /dev/null and b/static/img/blog/rsc_overview.webp differ
diff --git a/static/img/blog/scverse_x_biomni_banner.png b/static/img/blog/scverse_x_biomni_banner.png
deleted file mode 100644
index 7e16e2a0..00000000
Binary files a/static/img/blog/scverse_x_biomni_banner.png and /dev/null differ
diff --git a/static/img/blog/scverse_x_biomni_banner.webp b/static/img/blog/scverse_x_biomni_banner.webp
new file mode 100644
index 00000000..f5965f41
Binary files /dev/null and b/static/img/blog/scverse_x_biomni_banner.webp differ
diff --git a/static/img/blog/scverse_x_biomni_ui.png b/static/img/blog/scverse_x_biomni_ui.png
deleted file mode 100644
index 87cfc3a9..00000000
Binary files a/static/img/blog/scverse_x_biomni_ui.png and /dev/null differ
diff --git a/static/img/blog/scverse_x_biomni_ui.webp b/static/img/blog/scverse_x_biomni_ui.webp
new file mode 100644
index 00000000..fd5acf24
Binary files /dev/null and b/static/img/blog/scverse_x_biomni_ui.webp differ
diff --git a/static/img/blog/snapatac2_overview.png b/static/img/blog/snapatac2_overview.png
deleted file mode 100644
index 5a271d9a..00000000
Binary files a/static/img/blog/snapatac2_overview.png and /dev/null differ
diff --git a/static/img/blog/snapatac2_overview.webp b/static/img/blog/snapatac2_overview.webp
new file mode 100644
index 00000000..ed455d58
Binary files /dev/null and b/static/img/blog/snapatac2_overview.webp differ
diff --git a/static/img/events/2025_11_conference_banner.png b/static/img/events/2025_11_conference_banner.png
index dffa579d..47918e43 100644
Binary files a/static/img/events/2025_11_conference_banner.png and b/static/img/events/2025_11_conference_banner.png differ
diff --git a/static/img/favicon/android-chrome-192x192.png b/static/img/favicon/android-chrome-192x192.png
index 4cec25d3..6ecef59e 100644
Binary files a/static/img/favicon/android-chrome-192x192.png and b/static/img/favicon/android-chrome-192x192.png differ
diff --git a/static/img/favicon/android-chrome-512x512.png b/static/img/favicon/android-chrome-512x512.png
index ef0aa534..d9d37af3 100644
Binary files a/static/img/favicon/android-chrome-512x512.png and b/static/img/favicon/android-chrome-512x512.png differ
diff --git a/static/img/favicon/apple-touch-icon.png b/static/img/favicon/apple-touch-icon.png
index f029fffe..435f5a82 100644
Binary files a/static/img/favicon/apple-touch-icon.png and b/static/img/favicon/apple-touch-icon.png differ
diff --git a/static/img/favicon/favicon-16x16.png b/static/img/favicon/favicon-16x16.png
index d21a99b3..e5e8d655 100644
Binary files a/static/img/favicon/favicon-16x16.png and b/static/img/favicon/favicon-16x16.png differ
diff --git a/static/img/favicon/favicon-32x32.png b/static/img/favicon/favicon-32x32.png
index 0e598102..982f711a 100644
Binary files a/static/img/favicon/favicon-32x32.png and b/static/img/favicon/favicon-32x32.png differ
diff --git a/static/img/favicon/mstile-150x150.png b/static/img/favicon/mstile-150x150.png
index 99d2d1b0..8476804a 100644
Binary files a/static/img/favicon/mstile-150x150.png and b/static/img/favicon/mstile-150x150.png differ
diff --git a/static/img/icons/discourse_inv.svg b/static/img/icons/discourse_inv.svg
deleted file mode 100644
index c0f5823b..00000000
--- a/static/img/icons/discourse_inv.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/static/img/icons/scverse-blue-logo.svg b/static/img/icons/scverse-blue-logo.svg
new file mode 100644
index 00000000..7e80fa9f
--- /dev/null
+++ b/static/img/icons/scverse-blue-logo.svg
@@ -0,0 +1,15 @@
+
+
diff --git a/static/img/icons/scverse-bw-logo.svg b/static/img/icons/scverse-bw-logo.svg
new file mode 100644
index 00000000..d41645f3
--- /dev/null
+++ b/static/img/icons/scverse-bw-logo.svg
@@ -0,0 +1,41 @@
+
+
diff --git a/static/img/icons/scverse_blue_logo.svg b/static/img/icons/scverse_blue_logo.svg
deleted file mode 100644
index 72653601..00000000
--- a/static/img/icons/scverse_blue_logo.svg
+++ /dev/null
@@ -1,15 +0,0 @@
-
-
diff --git a/static/img/icons/scverse_bw_logo.svg b/static/img/icons/scverse_bw_logo.svg
deleted file mode 100644
index 6bd807cc..00000000
--- a/static/img/icons/scverse_bw_logo.svg
+++ /dev/null
@@ -1,40 +0,0 @@
-
-
diff --git a/static/img/icons/zulip_inv.svg b/static/img/icons/zulip_inv.svg
deleted file mode 100644
index 3e706a31..00000000
--- a/static/img/icons/zulip_inv.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/static/img/learn/chromosome.png b/static/img/learn/chromosome.png
index 3c07a98e..7711e3d7 100644
Binary files a/static/img/learn/chromosome.png and b/static/img/learn/chromosome.png differ
diff --git a/static/img/learn/lung.png b/static/img/learn/lung.png
index 8f54c8b6..ed7d1929 100644
Binary files a/static/img/learn/lung.png and b/static/img/learn/lung.png differ
diff --git a/static/img/learn/protein.png b/static/img/learn/protein.png
index 39b2ea81..2538385b 100644
Binary files a/static/img/learn/protein.png and b/static/img/learn/protein.png differ
diff --git a/static/img/learn/tissue.png b/static/img/learn/tissue.png
index a4155b33..5acadf80 100644
Binary files a/static/img/learn/tissue.png and b/static/img/learn/tissue.png differ
diff --git a/static/img/libs/muon.png b/static/img/libs/muon.png
index c4e1c69a..41cf4d77 100644
Binary files a/static/img/libs/muon.png and b/static/img/libs/muon.png differ
diff --git a/static/img/libs/spatialdata_horizontal.png b/static/img/libs/spatialdata_horizontal.png
index 5683233e..ad0c442c 100644
Binary files a/static/img/libs/spatialdata_horizontal.png and b/static/img/libs/spatialdata_horizontal.png differ
diff --git a/static/img/logo/scverse-bridge-sketch.png b/static/img/logo/scverse-bridge-sketch.png
index e0a1b169..4cb4d7fa 100644
Binary files a/static/img/logo/scverse-bridge-sketch.png and b/static/img/logo/scverse-bridge-sketch.png differ
diff --git a/static/img/logo/scverse-lettering.png b/static/img/logo/scverse-lettering.png
index 2e819318..9bde7bb8 100644
Binary files a/static/img/logo/scverse-lettering.png and b/static/img/logo/scverse-lettering.png differ
diff --git a/static/img/logo/scverse-munich.png b/static/img/logo/scverse-munich.png
index 4194313c..563fc898 100644
Binary files a/static/img/logo/scverse-munich.png and b/static/img/logo/scverse-munich.png differ
diff --git a/static/img/logo/scverse-palms.png b/static/img/logo/scverse-palms.png
index 1295f981..6a14ade9 100644
Binary files a/static/img/logo/scverse-palms.png and b/static/img/logo/scverse-palms.png differ
diff --git a/static/img/logo/scverse-slide.png b/static/img/logo/scverse-slide.png
index dedb3d6f..11dd5fba 100644
Binary files a/static/img/logo/scverse-slide.png and b/static/img/logo/scverse-slide.png differ
diff --git a/static/img/logo/scverse-symbol.png b/static/img/logo/scverse-symbol.png
new file mode 100644
index 00000000..098c6c48
Binary files /dev/null and b/static/img/logo/scverse-symbol.png differ
diff --git a/static/img/logo/scverse-symbol.svg b/static/img/logo/scverse-symbol.svg
new file mode 100644
index 00000000..9e730964
--- /dev/null
+++ b/static/img/logo/scverse-symbol.svg
@@ -0,0 +1,28 @@
+
+
diff --git a/static/img/logo/scverse.png b/static/img/logo/scverse.png
index ca1a2516..18c9de60 100644
Binary files a/static/img/logo/scverse.png and b/static/img/logo/scverse.png differ
diff --git a/static/img/logo/scverse.svg b/static/img/logo/scverse.svg
index f9460277..3b65f842 100644
--- a/static/img/logo/scverse.svg
+++ b/static/img/logo/scverse.svg
@@ -4,11 +4,13 @@