diff --git a/assets/media/videos/desktop.mp4 b/assets/media/videos/desktop.mp4 new file mode 100644 index 000000000..70ca367e1 Binary files /dev/null and b/assets/media/videos/desktop.mp4 differ diff --git a/assets/media/videos/jupyterhub-environment.mp4 b/assets/media/videos/jupyterhub-environment.mp4 new file mode 100644 index 000000000..2143efe40 Binary files /dev/null and b/assets/media/videos/jupyterhub-environment.mp4 differ diff --git a/assets/media/videos/jupyterlab.mp4 b/assets/media/videos/jupyterlab.mp4 index a587d7712..48182e5d5 100644 Binary files a/assets/media/videos/jupyterlab.mp4 and b/assets/media/videos/jupyterlab.mp4 differ diff --git a/assets/scss/custom.scss b/assets/scss/custom.scss index 74f2a1d5b..08c8a8523 100644 --- a/assets/scss/custom.scss +++ b/assets/scss/custom.scss @@ -8,6 +8,10 @@ @import "components/admonitions.scss"; @import "components/buttons.scss"; +// CSS for shortcodes we create +@import "shortcodes/servicetech.scss"; +@import "shortcodes/opensourcelogos.scss"; + // Sections of the whole site @import "sections/navbar"; @import "sections/footer"; diff --git a/assets/scss/pages/_platform.scss b/assets/scss/pages/_platform.scss index 1486101b4..e83f16b65 100644 --- a/assets/scss/pages/_platform.scss +++ b/assets/scss/pages/_platform.scss @@ -53,4 +53,28 @@ div.project-figures { // So that wide product logos aren't super tiny #jupyter-features div.featurette-icon img { width: 150px; -} \ No newline at end of file +} + +// Captions to call out to open source projects +figure.videofigure { + display: flex; + flex-direction: column; + figcaption { + display: inline-flex; + font-size: .8rem; + flex-wrap: wrap; + a { + margin: 0 .2rem; + } + img { + height: 1.2rem; + border: none; + } + } +} + +section:not(.reverse-markdown-row) { + figcaption { + margin-left: auto; + } +} diff --git a/assets/scss/shortcodes/_opensourcelogos.scss b/assets/scss/shortcodes/_opensourcelogos.scss new file mode 100644 index 000000000..b49408dca --- /dev/null +++ b/assets/scss/shortcodes/_opensourcelogos.scss @@ -0,0 +1,10 @@ +// Logos of open source projects +div.logos { + a { + margin: .5rem auto; + } + img.logo { + max-height: 3em; + margin: 0 auto; + } +} diff --git a/assets/scss/shortcodes/_servicetech.scss b/assets/scss/shortcodes/_servicetech.scss new file mode 100644 index 000000000..c15686a6e --- /dev/null +++ b/assets/scss/shortcodes/_servicetech.scss @@ -0,0 +1,25 @@ +/** + * Three-column product demo at the top of the page + */ + .jupyter-demos { + text-align: center; + + figcaption { + font-size: .9rem; + margin-bottom: .5em; + .caption-title { + font-weight: bold; + margin-bottom: .5rem; + } + } + + .demo-image-box { + min-height: 10em; + display: flex; + align-items: center; + } + img { + border: 1px solid black; + border-radius: .5em; + } +} \ No newline at end of file diff --git a/config/_default/menus.toml b/config/_default/menus.toml index 20479dd7a..e9dbbf0fb 100644 --- a/config/_default/menus.toml +++ b/config/_default/menus.toml @@ -9,7 +9,7 @@ weight = 10 [[main]] - name = "Community network" + name = "Community case studies" url = "communities/" weight = 10 @@ -49,6 +49,12 @@ url = "founders/" weight = 50 + [[main]] + parent = "about" + name = "Design and brand assets" + url = "brand/" + weight = 70 + [[main]] parent = "about" name = "Jobs at 2i2c" diff --git a/content/_index.md b/content/_index.md index e50c95c4d..125322cfd 100644 --- a/content/_index.md +++ b/content/_index.md @@ -28,7 +28,7 @@ sections: # Add your Hero text here text: |- - Our interactive computing platform gives your community a digital home to create and share knowledge, and a global network of communities to learn from. + Our interactive computing platform gives research and education communities a digital home to create and share knowledge with a global network of communities to learn from. design: # Choose an optional background color, gradient, image, or video background: @@ -41,80 +41,19 @@ sections: - block: markdown id: service content: - title: We give communities a home in the cloud for interactive computing. + title: We help communities build a home in the cloud for interactive computing subtitle: text: | - Our interactive computing platform **empowers communities in research and education to design a hub for their unique workflows**. It brings together open source tools, data, and computational resources in a remotely-accessible interactive environment for creating and sharing knowledge. - - - - {{< figure src="/images/home/hub-diagram.png" >}} - -
-
-
- - - - - - -
-
-
- - - - block: markdown - id: numbers - content: - title: We serve a global network of communities - subtitle: - text: | - - We serve **over 80 communities across the globe** with **over 7000 active users** that are dedicated to creating and sharing knowledge. This includes **educational communities** that share knowledge within a community, **research communities** that create advances at the frontier of knowledge, and **applied knowledge communities** that use advances in knowledge to serve the public. - - - - {{< figure src="/images/home/worldmap.png" alt="2i2c map of communities" caption="A map of the rough location of communities with currently active hubs. Updated as of April 2024, [see our interactive map](https://2i2c.org/kpis/cloud/#map-of-hubs) for the latest data.">}} - -

- - + Our platform **empowers community leaders in research and education to design a hub** for their community to create and share knowledge. We do so by bringing together open tools, services, data, and infrastructure. + {{< servicetech >}} - block: portfolio id: posts content: title: Community impact stories - subtitle: '' + subtitle: Our platform integrates open tools and services for many communities in research and education. Below are some stories of impact from our community partners. text: '' # Choose how many pages you would like to display (0 = all pages) count: 5 @@ -124,7 +63,7 @@ sections: folders: - blog # These are the tags that will show up in the list - tags: ["open source", "geoscience", "bioscience", "education"] + tags: ["geoscience", "bioscience", "education", "open source"] author: "" publication_type: "" featured_only: false @@ -140,14 +79,14 @@ sections: buttons: - name: All tag: '*' - - name: Open Source - tag: open source - name: Geoscience tag: geoscience - name: Bioscience tag: bioscience - name: Education tag: education + - name: Open Source + tag: open source design: # Choose a listing view view: masonry @@ -155,6 +94,45 @@ sections: columns: '1' css_class: "home-stories" + - block: markdown + id: numbers + content: + title: We serve a global network of communities + subtitle: + text: | + + We serve **over 80 communities across the globe** with **over 7000 active users** that are dedicated to creating and sharing knowledge. + + + + {{< figure src="/images/home/worldmap.png" alt="2i2c map of communities" caption="A map of the rough location of communities with currently active hubs. Updated as of July 2024, [see our interactive map](https://2i2c.org/kpis/cloud/#map-of-hubs) for the latest data.">}} + +

+ + + - block: markdown id: numbers content: @@ -182,6 +160,7 @@ sections: subtitle: "" text: "" items: + # LEAVE OUT PARTNERSHIP because this forces us to use 3 columns - name: Transparency description: Our transparent and participatory model keeps our incentives aligned with community needs. icon: magnifying-glass diff --git a/content/blog/2021/six-month-update/index.md b/content/blog/2021/six-month-update/index.md index 93b1eebe1..4fb3272b9 100644 --- a/content/blog/2021/six-month-update/index.md +++ b/content/blog/2021/six-month-update/index.md @@ -41,7 +41,7 @@ Because Pangeo's infrastructure is already running on a fully open source stack We don't anticipate needing to make major changes to their infrastructure and deployments (part of the benefits of using open, modular tools). Once this is complete, we'll next shift our attention to some new areas of development that support use-cases in the Pangeo community (and in the scientific community more broadly). -There's a lot of progress that we imagine making - such as [supporting publishing pipelines via the Pangeo Gallery](https://gallery.pangeo.io) or improving tools for scalable computing with [Dask Gateway](https://gateway.dask.org/). +There's a lot of progress that we imagine making - such as [supporting sharing pipelines via the Pangeo Gallery](https://gallery.pangeo.io) or improving tools for scalable computing with [Dask Gateway](https://gateway.dask.org/). We'll provide updates as we formally begin this collaboration and hash out a plan for our next steps. ## JupyterHub for education - A collaboration with CloudBank and UC Berkeley diff --git a/content/blog/2024/project-pythia-cookoff/index.md b/content/blog/2024/project-pythia-cookoff/index.md index c3b7be09e..326678c7b 100644 --- a/content/blog/2024/project-pythia-cookoff/index.md +++ b/content/blog/2024/project-pythia-cookoff/index.md @@ -16,7 +16,7 @@ draft: false ## What did 2i2c do? -Jenny, James and Angus from the 2i2c team participated in the annual [Project Pythia Cook-off 2024](https://projectpythia.org/pythia-cookoff-2024/), a hackathon where cookbook authors and collaborators can spend dedicated time on creating and maintaining their content using [Jupyter Book](https://jupyterbook.org/en/stable/intro.html) and publishing their cookbooks with GitHub actions. +Jenny, James and Angus from the 2i2c team participated in the annual [Project Pythia Cook-off 2024](https://projectpythia.org/pythia-cookoff-2024/), a hackathon where cookbook authors and collaborators can spend dedicated time on creating and maintaining their content using [Jupyter Book](https://jupyterbook.org/en/stable/intro.html) and deploying their cookbooks with GitHub actions. 2i2c teamed up with the infrastructure breakout group during the hackathon, led by Katelyn FitzGerald (UCAR) and Kevin Tyle (University at Albany), and members of the [Curvenote](https://curvenote.com/) team also joined the group. @@ -67,7 +67,7 @@ We spent this day tackling support for managing a gallery of Project Pythia cook ## Day 4 -Looking to the future, we spent time reflecting on our experiences and discussing the potential, transformative impact MyST MD tooling could have in the hands of the scientific community at large, including the communities served by 2i2c. Knowledge-sharing based on static figures and PDFs would fall obsolete and give way to a dynamic, web-first approach to interactive communication and publishing backed by compute from a Jupyter server. +Looking to the future, we spent time reflecting on our experiences and discussing the potential, transformative impact MyST MD tooling could have in the hands of the scientific community at large, including the communities served by 2i2c. Knowledge-sharing based on static figures and PDFs would fall obsolete and give way to a dynamic, web-first approach to sharing interactive narratives backed by compute from a Jupyter server. Throughout the course of the hackathon, the rate of iterated development for both end users of the community cookbook and the developers of the open-source tooling was astounding. For example, we were able to quickly expose small bugs ([e.g. support for HTML video tags](https://github.com/executablebooks/mystmd/issues/1297)) in the MyST MD tooling, which were immediately fixed upstream and released within minutes. The feedback loop that connected the user experience with the software tooling was incredibly synergistic, with immediate impact both upstream and downstream that 2i2c hopes to continue replicating across many facets of their operations. diff --git a/content/communities/_index.md b/content/communities/_index.md index 1c87749f9..993677096 100644 --- a/content/communities/_index.md +++ b/content/communities/_index.md @@ -1,6 +1,6 @@ --- # Page title -title: Our network of communities +title: Community case studies # Page type - we want a landing page (such as a homepage) type: landing @@ -9,13 +9,12 @@ sections: - block: markdown id: numbers content: - title: A shared platform for global communities. + title: We serve an international network of communities that create and share knowledge subtitle: text: | {{< figure src="/images/communities/map-of-communities.png" >}} - We serve a global network of communities that create and share knowledge. The map above shows active communities in our network, and the size of each circle corresponds to the size of each community. See [our interactive map of active communities](https://2i2c.org/kpis/cloud/#map-of-hubs) for the latest data. @@ -31,7 +30,7 @@ sections:

2i2c in numbers

Communities
- >80 + >90
Active users
@@ -53,12 +52,16 @@ sections:
  • Data science education
  • Communicating open science
  • Global hubs for biomedical imaging
  • +
  • See our blog for more case studies
  • +
    + {{< cta cta_text="More case studies on our blog" cta_link="https://2i2c.org/category/impact" cta_new_tab="false" >}} {{< cta cta_text="Join our community network" cta_link="/join" cta_new_tab="false" >}} - +
    + - block: markdown id: cryocloud design: diff --git a/content/platform/_index.md b/content/platform/_index.md index e8a2e964f..6b179fcdd 100644 --- a/content/platform/_index.md +++ b/content/platform/_index.md @@ -6,40 +6,46 @@ type: landing aliases: - /service/ + # Your landing page sections - add as many different content blocks as you like sections: - block: markdown id: numbers - design: - columns: 2 content: - title: A shared platform for global communities. - subtitle: An interactive computing platform for communities that create and share knowledge. + title: A shared platform for global communities + subtitle: Our interactive computing hubs provide frictionless access to open infrastructure to connect, create, and share knowledge using data. text: | + {{< servicetech >}} - {{< figure src="/images/service/shared-infrastructure.png" alt="Serving multiple communities with the same infrastructure.">}} + {{< cta cta_text="See how research and education communities use this platform" cta_link="/communities" cta_new_tab="false" >}} - {{< cta cta_text="Learn about our community network" cta_link="/communities" cta_new_tab="false" >}} - - block: markdown id: numbers content: - title: The research lifecycle we enable. - subtitle: Interactive computing hubs provide tools that facilitate the entire knowledge creation and sharing lifecycle. + title: Each hub integrates open tools and services to enable the lifecycle of knowledge creation + subtitle: Hubs are a digital home that bootstraps users from learning their first workflows to making discoveries and sharing with others. text: | - {{< figure src="/images/service/research-lifecycle.png" alt="The research lifecycle we enable.">}} +
    Open source tools we use and support in our service.
    + + {{< opensourcelogos >}} + - block: markdown - id: magiclink + id: jupyterhub design: columns: 2 content: - title: Magic links let you instantly share content on a hub. - subtitle: Clicking a magic link to instantly give a user their own copy of your content so that they can interact and explore in a live environment. + title: Manage and monitor resources and users + subtitle: Community leaders can manage user access to the hub, and provide each user their own workspace that persists over time. text: | +
    + {{< video src="videos/jupyterhub-admin.mp4">}} - {{< video src="videos/magic-links.mp4">}} +
    + Powered by +
    +
    - block: markdown id: jupyterlab @@ -47,52 +53,90 @@ sections: columns: 2 css_class: reverse-markdown-row content: - title: Flexible interfaces for data-driven discovery + title: Design interactive interfaces for data-driven discovery subtitle: JupyterLab provides a flexible user interface to create and explore notebooks, interactive visualizations, and computational narratives. text: | - {{< video src="videos/jupyterlab.mp4">}} +
    + {{< video src="videos/jupyterlab.mp4">}} + +
    + Powered by and . Example from Neuroglancer-JupyterLab. +
    +
    - block: markdown id: environment-choice design: columns: 2 content: - title: Choose a community environment, or create your own. + title: Choose a community environment, or create your own subtitle: Community leaders can offer many environments for users to fit all of their workflows. text: | +
    + {{< video src="/videos/jupyterhub-environment.mp4" >}} - {{< figure src="/images/service/server-choices.png" >}} - +
    + Powered by and . Example from the NASA VEDA project. +
    +
    - block: markdown id: knowledge-base design: columns: 2 css_class: reverse-markdown-row content: - title: A shared knowledge base that connects with your hub. + title: Share workflows with a community knowledge base. subtitle: Shared knowledge bases allow communities to contribute their ideas and work to a shared space that is accessible to the community. text: | +
    + {{< video src="videos/jupyterbook.mp4">}} - {{< video src="videos/jupyterbook.mp4">}} +
    + Powered by and . Example from the CryoCloud JupyterBook. +
    +
    - block: markdown - id: jupyterhub + id: magiclink design: columns: 2 - css_class: reverse-row content: - title: JupyterHub gives your users their own digital space. - subtitle: Community leaders can manage user access to the hub, and provide each user their own workspace that persists over time. + title: Share content and interactive links to a hub + subtitle: Create and share a magic link to instantly share a copy of your content with anyone so that they can interact and explore with live code and data. text: | - {{< video src="videos/jupyterhub-admin.mp4">}} +
    + {{< video src="videos/magic-links.mp4">}} + +
    + Powered by and . Example from the Spyglass toolbox paper. +
    +
    + + + - block: markdown + id: desktop + design: + columns: 2 + css_class: reverse-markdown-row + content: + title: Serve linux applications via a remote desktop + subtitle: You can provide users a full linux UI that provides access to GUI applications via the web. + text: | +
    + {{< video src="videos/desktop.mp4">}} + +
    + Powered by . Example from the NASA VEDA project. +
    +
    - block: features id: clouds content: - title: Supported cloud providers. + title: Supported cloud providers subtitle: "" text: | 2i2c aims to support JupyterHubs on any cloud provider that offers a managed Kubernetes service. @@ -119,7 +163,7 @@ sections: design: columns: 2 content: - title: Learn more about our organization. + title: Learn more about our organization subtitle: text: | @@ -128,7 +172,7 @@ sections: - block: markdown id: learncommunities content: - title: Learn more about our community network. + title: Learn more about our community network subtitle: text: | diff --git a/content/projects/active/jupyter-book.md b/content/projects/active/jupyter-book.md index dc595eda9..2be854fb3 100644 --- a/content/projects/active/jupyter-book.md +++ b/content/projects/active/jupyter-book.md @@ -13,6 +13,6 @@ title = "Executable Books" {{< figure src="https://jupyterbook.org/_static/logo-wide.svg" class="projects-image" >}} -The [Executable Books Project](https://executablebooks.org) is an international collaboration to build open source tools that facilitate publishing computational narratives using the Jupyter ecosystem. +The [Executable Books Project](https://executablebooks.org) is an international collaboration to build open source tools that facilitate sharing computational narratives using the Jupyter ecosystem. -The primary technical product of the EBP is [Jupyter Book](https://jupyterbook.org), an open source project for building beautiful, publication-quality books and documents from computational material. \ No newline at end of file +The primary technical product of the EBP is [Jupyter Book](https://jupyterbook.org), an open source project for building beautiful, publication-quality books and documents from computational material. diff --git a/layouts/shortcodes/opensourcelogos.html b/layouts/shortcodes/opensourcelogos.html new file mode 100644 index 000000000..54cec021c --- /dev/null +++ b/layouts/shortcodes/opensourcelogos.html @@ -0,0 +1,23 @@ + +
    +
    + + + + + + + + + + + + + + + + + + +
    +
    \ No newline at end of file diff --git a/layouts/shortcodes/servicetech.html b/layouts/shortcodes/servicetech.html new file mode 100644 index 000000000..9cfc03519 --- /dev/null +++ b/layouts/shortcodes/servicetech.html @@ -0,0 +1,23 @@ +
    +
    + Environment selector interface +
    +

    Resource and user management

    + JupyterHub provides secure, remote access to the tools and resources needed for community users. +
    +
    +
    + JupyterLab interface. +
    +

    Interfaces for interactive computing

    + JupyterHub lets users learn, explore, create, and share with open data and tools. +
    +
    +
    + MyST Markdown interface. +
    +

    A computational knowledge base

    + MyST and JupyterBook provide a central repository of knowledge to facilitate learning and sharing with computational narratives. +
    +
    +
    \ No newline at end of file diff --git a/layouts/shortcodes/video.html b/layouts/shortcodes/video.html new file mode 100644 index 000000000..2afa6695c --- /dev/null +++ b/layouts/shortcodes/video.html @@ -0,0 +1,58 @@ +{{/* + Copied and slightly modified from the following ref to add `muted` + https://github.com/HugoBlox/hugo-blox-builder/blob/676a1b20ee9f5c93939ffac62581b0f8b29cb36f/modules/blox-bootstrap/layouts/shortcodes/video.html +*/}} + +{{/* Video Shortcode for Hugo Blox. */}} +{{/* Load video from page dir falling back to media library at `assets/media/` and then to remote URI. */}} + +{{/* + Docs: https://docs.hugoblox.com/content/writing-markdown-latex/#videos + + Parameters + ---------- + src : + Path to file or url for the video file. + If a local file, first it is searched in the page directory, and then in `assets/media/` . + poster : optional + Path or url for the preview image. + Defaults to {src without file extension}.jpg . + If not found, defaults to "". + controls : optional + If present, display video controls, otherwise the video is set to autoplay. + id : optional + Custom id "video-{id}" to associate to the