diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml index ef816ca6..007b6607 100644 --- a/.github/workflows/gh-pages.yml +++ b/.github/workflows/gh-pages.yml @@ -9,9 +9,9 @@ on: jobs: deploy: - runs-on: ubuntu-20.04 + runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 with: submodules: true # Fetch Hugo themes (true OR recursive) fetch-depth: 1 # Fetch all history for .GitInfo and .Lastmod diff --git a/assets/main.scss b/assets/main.scss index dde7644f..07a1fdf0 100644 --- a/assets/main.scss +++ b/assets/main.scss @@ -47,6 +47,8 @@ $maxwidthwide: 1400px; $contentwidth: 80%; $contentwidthwide: 92%; +$additionalInfoColor: #666666; + @font-face { font-family: "Inter"; src: url("fonts/Inter/Inter-VariableFont_slnt,wght.ttf"); @@ -225,6 +227,20 @@ a .more { } } +@mixin core-chip { + background-color: $tilebg; + text-decoration: none; + color: $tiletext; + padding: 0.4rem; + text-align: center; + border-radius: 0.5rem; + transition: all 200ms ease-in-out; + &:hover { + color: $tiletext3; + background-color: $tilebg2; + } +} + html, body { width: 100%; @@ -1150,30 +1166,82 @@ body { // Specific to /people -#people-content { - .team { - .team-text { - margin: 1rem 0; - } - .team-list { - font-size: 1.1rem; - display: flex; - justify-content: center; - flex-wrap: wrap; - gap: 0.5rem; - justify-content: flex-start; - .person-chip { - @include person-chip; - font-size: 1rem; - font-family: "Inter", sans-serif; - } - a { - text-decoration: none; - } - } - } - // margin-top: 1rem !important; - // h2:first-of-type { - // margin-top: 0 !important; - // } +#people-content .team .team-list { + display: grid; + grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); + gap: 0.5rem; + justify-content: flex-start; + font-size: 1.1rem; +} + +#people-content .team .team-list a { + text-decoration: none; +} + +.team-member { + background-color: var(--tilebg, #f5f5f5); + color: var(--tiletext, #333); + text-align: center; + border-radius: 0.5rem; + transition: all 200ms ease-in-out; + font-size: 1rem; + font-family: "Inter", sans-serif; + position: relative; +} + +.person-chip { + background-color: var(--tilebg, #f5f5f5); + color: var(--tiletext, #333); + padding: 0.4rem; + text-align: center; + display: block; + border-radius: 0.5rem; + width: 100%; +} + +.team-member:hover .person-chip { + background-color: var(--tilebg2, #e5e5e5); + color: var(--tiletext3, #000); +} + +.team-member:has(.additional-info):hover .person-chip { + border-radius: 0.5rem 0.5rem 0 0; +} + +.core-member { + cursor: pointer; +} + +.additional-info { + background-color: var(--tilebg2, #e5e5e5); + color: var(--tiletext3, #000); + position: absolute; + visibility: hidden; + z-index: 50; + border-radius: 0 0rem 0.5rem 0.5rem; + width: 100%; +} + +.team-member:hover .additional-info { + visibility: visible; +} + +.additional-info .email-link { + color: inherit; + text-decoration: underline; + cursor: pointer; +} + +.additional-info .email-link:hover { + color: #0056b3; +} + +.core-member:hover .additional-info { + display: block; +} + +.additional-info p { + margin: 0.5rem 0; + line-height: 1.5; + margin-top: 0.5rem; } diff --git a/config.toml b/config.toml index c7c69589..f97bb3ae 100644 --- a/config.toml +++ b/config.toml @@ -1,4 +1,4 @@ -baseURL = "https://scverse.org" +baseURL = "https://scverse.org/" languageCode = "en-us" title = "scverse" description = "Foundational tools for omics data in the life sciences" diff --git a/content/people/_index.md b/content/people/_index.md index dbb03417..99491198 100644 --- a/content/people/_index.md +++ b/content/people/_index.md @@ -11,74 +11,146 @@ preface = "For people participating in and interacting with the consortium, ther [[teams.members]] name = "Philipp Angerer" url = "https://github.com/flying-sheep" + isCoreMember = true + role = "anndata & scanpy" + email = "philipp.angerer@scverse.org" + affiliation = "Helmholtz-Munich" [[teams.members]] name = "Danila Bredikhin" url = "https://github.com/gtca" + isCoreMember = true + role = "mudata & muon" + email = "danila.bredikhin@scverse.org" + affiliation = "Stanford University" [[teams.members]] name = "Can Ergen-Behr" url = "https://github.com/canergen" + isCoreMember = true + role = "scvi-tools" + email = "can.ergen@scverse.org" + affiliation = "University of California, Berkely" [[teams.members]] name = "Emma Dann" url = "https://github.com/emdann" + isCoreMember = true + role = "community & events" + email = "emma.dann@scverse.org" + affiliation = "Stanford University" [[teams.members]] name = "Severin Dicks" url = "https://github.com/Intron7" + isCoreMember = true + role = "rapids-singlecell" + email = "severin.dicks@scverse.org" + affiliation = "NVIDIA" [[teams.members]] name = "Jennifer Foltz" url = "https://jfoltzlab.org/" + isCoreMember = true + role = "community" + email = "jennifer.foltz@scverse.org" + affiliation = "Washington University" [[teams.members]] name = "Ilan Gold" url = "https://github.com/ilan-gold" + isCoreMember = true + role = "anndata & scanpy" + email = "ilan.gold@scverse.org" + affiliation = "Helmholtz Munich" [[teams.members]] name = "Lukas Heumos" url = "https://github.com/Zethson" + isCoreMember = true + role = "pertpy & operations" + email = "lukas.heumos@scverse.org" + affiliation = "Lamin Labs & Helmholtz Munich" [[teams.members]] name = "Mikaela Koutrouli" url = "https://github.com/mikelkou" + isCoreMember = true + role = "operations" + email = "mikaela.koutrouli@scverse.org" + affiliation = "Genentech" [[teams.members]] name = "Ori Kronfeld" url = "https://github.com/ori-kron-wis" + isCoreMember = true + role = "scvi-tools" + email = "ori.kronfeld@scverse.org" + affiliation = "Weizmann Institute of Science" [[teams.members]] name = "Luca Marconato" url = "https://github.com/LucaMarconato" + isCoreMember = true + role = "spatialdata" + email = "luca.marconato@scverse.org" + affiliation = "EMBL Heidelberg" [[teams.members]] name = "Giovanni Palla" url = "https://github.com/giovp" + isCoreMember = true + role = "spatialdata & squipy" + email = "giovanni.palla@scverse.org" + affiliation = "CZI" [[teams.members]] name = "Anna Schaar" url = "https://github.com/AnnaChristina" + isCoreMember = true + role = "events" + email = "anna.schaar@scverse.org" + affiliation = "Bioptimus" [[teams.members]] name = "Roshan Sharma" url = "https://github.com/roshan9128" + isCoreMember = true + role = "grants & workshops" + email = "roshan.sharma@scverse.org" + affiliation = "Memorial Sloan Kettering Cancer Center" [[teams.members]] name = "Gregor Sturm" url = "https://github.com/grst" + isCoreMember = true + role = "scirpy" + email = "gregor.sturm@scverse.org" + affiliation = "Böhringer Ingelheim" [[teams.members]] name = "Tim Treis" url = "https://github.com/timtreis" + isCoreMember = true + role = "spatialdata-plot & squidpy" + email = "tim.treis@scverse.org" + affiliation = "Helmholtz Munich" [[teams.members]] name = "Wouter-Michiel Vierdag" url = "https://github.com/melonora" + isCoreMember = true + role = "spatialdata" + email = "michiel.vierdag@scverse.org" + affiliation = "EMBL Heidelberg" [[teams.members]] name = "Isaac Virshup" url = "https://github.com/ivirshup" + isCoreMember = true + role = "anndata & scanpy" + email = "isaac.virshup@scverse.org" + affiliation = "CZI" # ---------- steering committee, in alphabetical order @@ -89,18 +161,34 @@ preface = "For people participating in and interacting with the consortium, ther [[teams.members]] name = "Danila Bredikhin" url = "https://github.com/gtca" + isCoreMember = true + role = "mudata & muon" + email = "danila.bredikhin@scverse.org" + affiliation = "Stanford University" [[teams.members]] name = "Lukas Heumos" url = "https://github.com/Zethson" + isCoreMember = true + role = "pertpy & operations" + email = "lukas.heumos@scverse.org" + affiliation = "Lamin Labs & Helmholtz Munich" [[teams.members]] name = "Mikaela Koutrouli" url = "https://github.com/mikelkou" + isCoreMember = true + role = "operations" + email = "mikaela.koutrouli@scverse.org" + affiliation = "Genentech" [[teams.members]] name = "Isaac Virshup" url = "https://twitter.com/ivirshup" + isCoreMember = true + role = "anndata & scanpy" + email = "isaac.virshup@scverse.org" + affiliation = "CZI" # ---------- management committee, in alphabetical order diff --git a/layouts/partials/head.html b/layouts/partials/head.html index ff30a35f..ef1312ad 100644 --- a/layouts/partials/head.html +++ b/layouts/partials/head.html @@ -2,16 +2,16 @@ {{ $styles := resources.Get "main.scss" | toCSS | minify }} - + - - - - - - + + + + + + - + diff --git a/layouts/people/list.html b/layouts/people/list.html index 7a3406a4..e6b5f0e1 100644 --- a/layouts/people/list.html +++ b/layouts/people/list.html @@ -26,7 +26,6 @@

{{ .Title }}

{{ .Params.preface | safeHTML }}

- {{ if .Params.teams }} {{ range $team := .Params.teams }} {{ if not $team.hide }} @@ -41,11 +40,24 @@

{{ $team.name }}

{{ range $person := $team.members }} -
- {{ .name }} -
-
+
+ + {{ .name }} + + {{ if .isCoreMember }} +
+

{{ .role }}

+

+ {{ .email }} +

+

{{ .affiliation }}

+
+ {{ end }} +
{{ end }}
{{ end }} diff --git a/static/main.js b/static/main.js index 8c3a017a..ed0c2749 100644 --- a/static/main.js +++ b/static/main.js @@ -25,3 +25,19 @@ const filterTutorials = () => { }; trs.forEach(toggleTrs); } + +// Initialize everything when DOM is loaded +document.addEventListener('DOMContentLoaded', function() { + // Set up event listeners for filters if they exist + const ecoFilter = document.querySelector('#eco-filter') + if (ecoFilter) { + ecoFilter.addEventListener('input', filterPackages) + } + + const tutorialFilter = document.querySelector('#tutorial-filter') + if (tutorialFilter) { + tutorialFilter.addEventListener('input', filterTutorials) + } + + setupCoreMemberHovers() +})