Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -71,12 +71,12 @@ nav:
- Partnership:
- Overview: "partnership/index.md"
- Partners: "partnership/partners/index.md"
- Community Partners: "partnership/community/index.md"
- Open Proposals:
- Overview: "partnership/open-proposals/index.md"
- Community Training: "partnership/open-proposals/community-training/index.md"
- Learning:
- Overview: learning/index.md
- Events: learning/events/index.md
- Study Groups: learning/study-groups/index.md
- About:
- Overview: "about/index.md"
Expand Down
61 changes: 0 additions & 61 deletions pages/learning/events/index.md

This file was deleted.

22 changes: 8 additions & 14 deletions pages/learning/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,20 +9,8 @@ authors: ["OSL Team"]
Welcome to the Learning section of Open Science Labs, where we are committed to
fostering an environment of continuous education and community engagement. This
section of our website is dedicated to providing resources, organizing study
groups, and hosting events that enhance learning opportunities in the fields of
open science and technology.

## Events

Our **Events** page is your gateway to both past and upcoming events organized
by Open Science Labs. From workshops to seminars and webinars, you can find
information on a variety of gatherings that aim to educate and inspire. Whether
you're looking to attend your first open-source workshop or a seasoned
professional eager to engage with new ideas, our events cater to all levels of
expertise.

Check out our [Events](/learning/events) page for more details on how you can
participate.
groups, and connecting people with community-led learning opportunities in the
fields of open science and technology.

## Study Groups

Expand All @@ -45,6 +33,12 @@ high-quality educational materials.

Stay tuned for updates on the Resources page, which we will launch soon.

## Community-led opportunities

Community members also share courses, mentoring opportunities, events,
educational materials, and other initiatives through our
[Community Partners](/partnership/community/) page.

Whether you're looking to deepen your knowledge, share your expertise, or find
new ways to engage with the community, the Learning section of Open Science Labs
is here to support your growth and exploration in open science and technology.
90 changes: 90 additions & 0 deletions pages/partnership/community/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
---
title: Community Partners
description:
"Community-led initiatives, resources, courses, mentoring, and events shared
by OSL community members."
date: 2026-06-25
authors: ["OSL Team"]
template: community.html
section_label: Partnership
page_theme: partnership
hero_words: ["Connect", "Amplify", "Collaborate"]
community:
featured: []
initiatives:
# Use the format below to add a Community Partner initiative.
# - name: "Community-led learning sessions"
# partner: "Community organizers and instructors"
# category: "Events"
# status: "Open for registration"
# format: "Talks, workshops, reading groups, and demos"
# audience: "Learners, researchers, developers, and open-source newcomers"
# thumbnail: /images/logos/logo.png
# url: "https://example.org/community-initiative"
# action: "Learn more"
# description: |
# A short description of the initiative, what participants can expect,
# and why it is useful for the Open Science Labs community.
---

# Community Partners

Community Partners are people from the Open Science Labs community who are
creating initiatives that can benefit others. These initiatives can include
events, educational materials, courses, mentoring, project clinics, office
hours, reading groups, and other community-led opportunities.

This page is where we publicize those initiatives so community members can
discover useful opportunities and so organizers can connect with people who may
want to learn, contribute, mentor, or collaborate.

## Mission and values

Open Science Labs welcomes Community Partner initiatives that are aligned with
our mission of promoting open science and open-source technology through
community collaboration, education, and project development.

We especially welcome initiatives that support open collaboration, continuous
learning, inclusivity, accessibility, ethical responsibility, community
empowerment, sustainability, and constructive communication. You can learn more
about these principles in the [Open Science Labs Formula](/about/formula/).

## What we look for

- Initiatives that are useful to the OSL community.
- Activities aligned with open science, open-source software, reproducible
research, education, mentoring, or community building.
- Clear information about the audience, format, expected commitment, and how
people can participate.
- A welcoming approach that follows the OSL Code of Conduct and community
guidelines.

## Independent initiatives

Community Partner initiatives are independently organized and managed by their
own community managers, organizers, or maintainers. Open Science Labs helps
promote initiatives from community members that appear aligned with our mission
and values, but OSL is not responsible for their content, activities,
registration processes, schedules, materials, decisions, or outcomes.

Questions about a specific initiative should be directed to the initiative's
organizers. If you notice an issue with how an initiative is represented on this
page, or if you believe an initiative is not aligned with OSL values, please
contact us at [`team@opensciencelabs.org`](mailto:team@opensciencelabs.org).

## How to suggest an initiative

If you have an initiative to share, join our [Discord community](/discord/) and
post it in the `community-initiatives` channel with a short description,
organizer name, target audience, relevant links, and any important dates or
participation details.

## Code of Conduct

All Community Partner initiatives shared through Open Science Labs should follow
our [Code of Conduct](/about/coc/). We expect organizers and participants to
help keep these spaces welcoming, respectful, inclusive, and safe for everyone.

If you experience or notice any issue related to a Community Partner initiative,
please contact us at
[`team@opensciencelabs.org`](mailto:team@opensciencelabs.org).
10 changes: 10 additions & 0 deletions pages/partnership/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,16 @@ Partners can contribute in various ways:
- **Resource Provision**: Offer tools, datasets, or platforms that can aid in
the development of open-source projects.

## Community Partners

Community Partners are people from our community who are leading initiatives
that can help others learn, collaborate, and contribute. These initiatives can
include events, educational materials, courses, mentoring, office hours, and
other community-led opportunities.

Visit the [Community Partners](/partnership/community/) page to discover current
opportunities or suggest an initiative for OSL to publicize.

## How to Apply

If your organization is interested in partnering with Open Science Labs, please
Expand Down
157 changes: 157 additions & 0 deletions theme/community.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,157 @@
{% extends "base.html" %}

{% block content %}
{% set community = page.meta.get("community", {}) %}
{% set featured = community.get("featured", []) %}
{% set initiatives = community.get("initiatives", []) %}
{% set page_title = page.meta.get("title", page.title) %}
{% set page_description = page.meta.get("description", "Community-led initiatives, resources, courses, mentoring, and events shared by OSL community members.") %}
{% set section_label = page.meta.get("section_label", "Partnership") %}
{% set section_slug = page.url.split("/")[0] %}
{% if not section_slug %}{% set section_slug = "partnership" %}{% endif %}
{% set page_theme = page.meta.get("page_theme", "partnership") %}
{% set hero_words = page.meta.get("hero_words", ["Connect", "Amplify", "Collaborate"]) %}

<section class="osl-page osl-page--community osl-page--section-{{ section_slug }} osl-page--theme-{{ page_theme }}">
<div class="osl-page-shell">
<header class="osl-page-hero">
<div class="osl-page-hero__content">
<p class="osl-page-kicker">{{ section_label }}</p>
<h1>{{ page_title }}</h1>
{% if page_description and page_description != page_title %}
<p class="osl-page-description">{{ page_description }}</p>
{% endif %}
</div>
<div class="osl-hero-system" aria-hidden="true">
<span class="osl-hero-system__ring"></span>
<span class="osl-hero-system__node osl-hero-system__node--one"></span>
<span class="osl-hero-system__node osl-hero-system__node--two"></span>
<span class="osl-hero-system__node osl-hero-system__node--three"></span>
<span class="osl-hero-system__label osl-hero-system__label--one">{{ hero_words[0] }}</span>
<span class="osl-hero-system__label osl-hero-system__label--two">{{ hero_words[1] }}</span>
<span class="osl-hero-system__label osl-hero-system__label--three">{{ hero_words[2] }}</span>
</div>
</header>

<article class="osl-markdown">
{{ page.content }}
</article>

<section class="event-section initiative-section" aria-labelledby="featured-community-initiatives">
<div class="directory-heading">
<p class="directory-eyebrow">Start here</p>
<h2 id="featured-community-initiatives">Featured Community Partner Opportunity</h2>
</div>

{% if featured %}
<div class="event-grid initiative-grid">
{% for initiative in featured %}
<article class="event-card initiative-card initiative-card--featured">
<div class="event-card__media initiative-card__media">
{% if initiative.url %}
<a href="{{ initiative.url }}" target="_blank" rel="noopener">
<img src="{{ initiative.thumbnail }}" alt="{{ initiative.name }}" loading="lazy" decoding="async" />
</a>
{% else %}
<img src="{{ initiative.thumbnail }}" alt="{{ initiative.name }}" loading="lazy" decoding="async" />
{% endif %}
</div>
<div class="event-card__body initiative-card__body">
<p class="event-card__date initiative-card__category">
{{ initiative.category }}{% if initiative.status %} · {{ initiative.status }}{% endif %}
</p>
<h3>{{ initiative.name }}</h3>
{% if initiative.partner %}
<p class="initiative-card__partner">By {{ initiative.partner }}</p>
{% endif %}
<p>{{ initiative.description }}</p>
<dl class="initiative-meta">
{% if initiative.format %}
<div>
<dt>Format</dt>
<dd>{{ initiative.format }}</dd>
</div>
{% endif %}
{% if initiative.audience %}
<div>
<dt>Audience</dt>
<dd>{{ initiative.audience }}</dd>
</div>
{% endif %}
</dl>
{% if initiative.url %}
<a href="{{ initiative.url }}" class="osl-inline-button" target="_blank" rel="noopener">
{{ initiative.action or "Learn more" }}
</a>
{% endif %}
</div>
</article>
{% endfor %}
</div>
{% else %}
<div class="empty-state">
<h3>TBA</h3>
</div>
{% endif %}
</section>

<section class="event-section initiative-section" aria-labelledby="community-initiatives">
<div class="directory-heading">
<p class="directory-eyebrow">Community initiatives</p>
<h2 id="community-initiatives">Community Partner Initiatives</h2>
</div>

{% if initiatives %}
<div class="event-grid initiative-grid">
{% for initiative in initiatives %}
<article class="event-card initiative-card">
<div class="event-card__media initiative-card__media">
{% if initiative.url %}
<a href="{{ initiative.url }}" target="_blank" rel="noopener">
<img src="{{ initiative.thumbnail }}" alt="{{ initiative.name }}" loading="lazy" decoding="async" />
</a>
{% else %}
<img src="{{ initiative.thumbnail }}" alt="{{ initiative.name }}" loading="lazy" decoding="async" />
{% endif %}
</div>
<div class="event-card__body initiative-card__body">
<p class="event-card__date initiative-card__category">
{{ initiative.category }}{% if initiative.status %} · {{ initiative.status }}{% endif %}
</p>
<h3>{{ initiative.name }}</h3>
{% if initiative.partner %}
<p class="initiative-card__partner">By {{ initiative.partner }}</p>
{% endif %}
<p>{{ initiative.description }}</p>
<dl class="initiative-meta">
{% if initiative.format %}
<div>
<dt>Format</dt>
<dd>{{ initiative.format }}</dd>
</div>
{% endif %}
{% if initiative.audience %}
<div>
<dt>Audience</dt>
<dd>{{ initiative.audience }}</dd>
</div>
{% endif %}
</dl>
{% if initiative.url %}
<a href="{{ initiative.url }}" class="osl-inline-button osl-inline-button--subtle" target="_blank" rel="noopener">
{{ initiative.action or "Learn more" }}
</a>
{% endif %}
</div>
</article>
{% endfor %}
</div>
{% else %}
<div class="empty-state">
<h3>TBA</h3>
</div>
{% endif %}
</section>
</div>
</section>
{% endblock content %}
Loading
Loading