Skip to content

Commit 6b399fa

Browse files
authored
feat: new universties landing page (#831)
* feat: new universties landing page * final edits * Apply suggestion from @lwasser
1 parent 80483c7 commit 6b399fa

13 files changed

Lines changed: 290 additions & 5 deletions

_data/navigation.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,8 @@ main:
3535
sub-nav:
3636
- title: Tutorials & Resources
3737
url: "learn.html"
38+
- title: For Universities & Labs
39+
url: "/learn-universities-labs.html"
3840
- title: Blog
3941
url: "/blog/index.html"
4042
- title: Events

_pages/learn-universities-labs.md

Lines changed: 230 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,230 @@
1+
---
2+
layout: splash
3+
classes: flowing
4+
title: "Open source training for universities & research labs"
5+
author_profile: false
6+
published: true
7+
site-map: true
8+
permalink: /learn-universities-labs.html
9+
header:
10+
overlay_color: "#33205c"
11+
overlay_filter: 0.3
12+
---
13+
14+
<div class="content padding" markdown="1">
15+
## Open source training for university research communities
16+
17+
<figure class="full">
18+
<picture>
19+
<source srcset="/images/people/scipy-sprint-2026.webp" type="image/webp">
20+
<img src="/images/people/scipy-sprint-2026.png" alt="A group of contributors sitting at a table at a pyOpenSci sprint working on their laptops and talking to each other.">
21+
</picture>
22+
</figure>
23+
24+
Introduce your research community to the world of open source scientific
25+
software through pyOpenSci’s training and community programs.
26+
27+
Our programs help researchers develop sustainable, reusable code and research
28+
software while connecting them to the global scientific Python ecosystem.
29+
Participants gain access to top tier asynchronous training sessions led by
30+
Python experts, interactive hands on training workshops, and direct support
31+
from open source leaders.
32+
33+
### Benefits for universities and research programs
34+
35+
<ul class="benefits-list">
36+
<li>
37+
<i class="fa-solid fa-award" aria-hidden="true"></i>
38+
<strong>Enhance grant competitiveness and compliance.</strong>
39+
In the age of open science, funders increasingly require researchers to
40+
publish code, data, and other artifacts openly to accelerate discovery. We
41+
help your researchers learn practices that make scientific open source
42+
reusable, maintainable, and easier for others to build upon, improving the
43+
longevity and impact of research outputs.
44+
</li>
45+
<li>
46+
<i class="fa-solid fa-robot" aria-hidden="true"></i>
47+
<strong>Support the shift to responsible AI adoption.</strong>
48+
Researchers increasingly rely on generative AI for scientific software
49+
development, but many use these tools as workhorses instead of thoughtful
50+
junior collaborators. Our courses help your researchers accelerate open
51+
source innovation while preserving community trust and maintainer
52+
sustainability. By collaborating with pyOpenSci, your institution stands
53+
alongside industry experts to define best practices for generative AI in
54+
open science.
55+
</li>
56+
<li>
57+
<i class="fa-solid fa-people-group" aria-hidden="true"></i>
58+
<strong>Learn alongside a global expert network.</strong>
59+
Connect your community to a global network of experienced developers and
60+
maintainers who build and maintain scientific Python packages, as well as
61+
the researchers and professionals who use these tools every day.
62+
</li>
63+
<li>
64+
<i class="fa-solid fa-hand-holding-heart" aria-hidden="true"></i>
65+
<strong>Get real world, cross disciplinary support.</strong>
66+
Receive guidance from experienced maintainers who regularly build and
67+
maintain research software. Our training includes regular office hours that
68+
facilitate hands on support so learners can ask questions and get help with
69+
the problems that matter most to their work.
70+
</li>
71+
<li>
72+
<i class="fa-solid fa-graduation-cap" aria-hidden="true"></i>
73+
<strong>Complete a trusted curriculum.</strong>
74+
Our programs have already supported more than 200 researchers with
75+
practical open source development, contribution, and software development
76+
skills through hands on, beginner friendly, and inclusive workshops.
77+
</li>
78+
</ul>
79+
</div>
80+
81+
<div class="pyos-section purple" markdown="1">
82+
<div class="content padding-wide" markdown="1">
83+
84+
{% include pyos-blockquote.html quote="pyOpenSci has proven to be a valuable partner in developing our competencies
85+
in code peer review and open science as a whole community, instead of best
86+
practices being confined to particular labs. For any research university that
87+
does significant work in Python (which is all universities!) I highly
88+
recommend getting involved with pyOpenSci.." author="Zach Chandler" event="Director, Stanford Open Source Program Office" class="highlight purple wide" %}
89+
90+
</div>
91+
</div>
92+
93+
<div class="pyos-section" markdown="1">
94+
<div class="content padding-wide" markdown="1">
95+
96+
## Research software accelerator programs
97+
98+
We will support you in building a thriving open source community at your
99+
institution. Our accelerator programs are designed as three tiers that meet
100+
universities and research labs where they are today.
101+
102+
<div class="blog__grid">
103+
104+
<article>
105+
<div class="cards">
106+
<div class="card__header card__header-color-4">
107+
</div>
108+
<div class="card__bkg card__bkg--brand">
109+
<div class="card__title-container">
110+
<h3 class="card-title">Ecosystem Catalyst</h3>
111+
</div>
112+
</div>
113+
<p class="card-stage"><strong>Stage:</strong> Established</p>
114+
<div class="card-excerpt">
115+
<p><strong>Perfect for:</strong> Universities with active open source
116+
programs that are ready to position their OSPO members and research
117+
software communities as leaders in this space.</p>
118+
119+
<p><strong>What you receive.</strong> High touch training activations
120+
ranging from mentored sprints to exclusive office hours, ensuring
121+
participants are supported at every step of their journey. At this premier
122+
tier, your institution receives direct support from the pyOpenSci
123+
leadership team and core Python developers, strategically positioning your
124+
university as a recognized leader in the open source research ecosystem.</p>
125+
</div>
126+
</div>
127+
</article>
128+
129+
<article>
130+
<div class="cards">
131+
<div class="card__header card__header-color-4">
132+
</div>
133+
<div class="card__bkg card__bkg--brand">
134+
<div class="card__title-container">
135+
<h3 class="card-title">Momentum Driver</h3>
136+
</div>
137+
</div>
138+
<p class="card-stage"><strong>Stage:</strong> Growing</p>
139+
<div class="card-excerpt">
140+
<p><strong>Perfect for:</strong> Universities with research software
141+
communities seeking comprehensive support.</p>
142+
143+
<p><strong>What you receive.</strong> Top tier on demand webinars,
144+
introductory executive support, and a connection to our global,
145+
cross disciplinary network of more than 350 scientists and research
146+
software engineers through our vibrant digital channels. Educational
147+
resources equip your growing community with practical workflows for
148+
scientific Python development and responsible generative AI adoption.</p>
149+
</div>
150+
</div>
151+
</article>
152+
153+
<article>
154+
<div class="cards">
155+
<div class="card__header card__header-color-4">
156+
</div>
157+
<div class="card__bkg card__bkg--brand">
158+
<div class="card__title-container">
159+
<h3 class="card-title">Foundation Builder</h3>
160+
</div>
161+
</div>
162+
<p class="card-stage"><strong>Stage:</strong> Exploration</p>
163+
<div class="card-excerpt">
164+
<p><strong>Perfect for:</strong> Universities establishing open source
165+
communities or those with researchers beginning to develop open source
166+
tools.</p>
167+
168+
<p><strong>What you receive.</strong> Your learners gain access to some of
169+
the world’s top Pythonistas through our trusted asynchronous course
170+
platform. This includes our complete 10 day on demand package, “Ship It:
171+
Python Packaging in the GenAI Era,” which guides researchers from a working
172+
script to a published PyPI package using industry standard tools like
173+
Hatch, pytest, and Sphinx.</p>
174+
</div>
175+
</div>
176+
</article>
177+
178+
</div>
179+
180+
</div>
181+
</div>
182+
183+
{% include div_purple_top.html %}
184+
185+
<div class="pyos-section purple" markdown="1">
186+
<div class="content padding" markdown="1">
187+
188+
## Ready to explore a pyOpenSci membership?
189+
190+
From emerging open source communities to established research software
191+
programs, pyOpenSci offers training and partnership opportunities at every
192+
stage.
193+
194+
<a href="mailto:media@pyopensci.org?subject=pyOpenSci%20university%20membership%20inquiry"
195+
class="btn btn--info btn--large">Request program details</a>
196+
197+
### Did you know?
198+
199+
pyOpenSci also offers a wide variety of free training resources for individual
200+
learners. Explore our workshops, webinars, and more on our
201+
[events page](/events.html).
202+
203+
</div>
204+
</div>
205+
206+
{% include div_purple_bottom.html %}
207+
208+
<div class="pyos-section" markdown="1">
209+
<div class="content padding" markdown="1">
210+
211+
## Why partnering with pyOpenSci matters
212+
213+
pyOpenSci is a nonprofit organization that supports open source scientific
214+
Python research software through software peer review, training, and community
215+
building. Revenue generated through partnerships directly supports the
216+
development, maintenance, and sustainability of open source research software.
217+
218+
### Bottom line
219+
220+
Researchers should not have to struggle with sharing code and software on
221+
their own. Connect your students and researchers with a thriving, inclusive,
222+
and vibrant community of beginner to expert Pythonistas who support scientific
223+
open source.
224+
225+
Open doors for your researchers to engage with other Python developers,
226+
troubleshoot challenges together, and gain ongoing support as they develop
227+
their scientific open source skills.
228+
229+
</div>
230+
</div>

_sass/minimal-mistakes/_base.scss

Lines changed: 22 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
}
2424
}
2525

26-
strong {font-weight:$semibold-weight}
26+
strong {font-weight:$xbold-weight}
2727
ul li {margin-bottom: 0}
2828

2929
h1,
@@ -105,6 +105,12 @@
105105
font-size: .7em;
106106
}
107107

108+
.benefits-list .fa-solid {
109+
font-size: 1.1rem;
110+
color: $pyos-teal;
111+
margin-right: 0.4rem;
112+
}
113+
108114
/* reduce orphans and widows when printing */
109115

110116
p,
@@ -163,7 +169,7 @@
163169
margin-top: 6rem;
164170
margin-bottom: 4rem;
165171
padding: 0 2rem;
166-
max-width: $medium;
172+
max-width: $large;
167173

168174
footer {
169175
font-style: italic;
@@ -191,7 +197,7 @@
191197
}
192198

193199
p {
194-
font-size: $type-size-3;
200+
font-size: $type-size-4;
195201
line-height: 2.8rem;
196202
position: relative;
197203
margin-bottom: 0.63rem;
@@ -227,6 +233,19 @@
227233
padding: 0;
228234
//font-size: 2rem;
229235
}
236+
237+
/* wider variant for landing page hero quotes */
238+
blockquote.highlight-quote.wide {
239+
max-width: none;
240+
width: 100%;
241+
margin: 2em auto;
242+
padding: 0;
243+
}
244+
245+
blockquote.highlight-quote.wide p {
246+
font-size: $type-size-4;
247+
line-height: 2.2rem;
248+
}
230249
}
231250

232251
// for some reason i have to manually override here

_sass/minimal-mistakes/_pyos-grid.scss

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@ $colors: (
33
color-0: #bb82b0,
44
color-1: #6b5b95,
55
color-2: #bab3d4,
6-
color-3: #81c0aa
6+
color-3: #81c0aa,
7+
color-4: #000000
78
);
89

910
@mixin generate-color-styles($color-map) {
@@ -22,7 +23,7 @@ $colors: (
2223
}
2324

2425
// Include the mixin
25-
//@include generate-color-styles($colors);
26+
@include generate-color-styles($colors);
2627

2728
// Shared mixin removed - using fixed breakpoints throughout for consistent behavior
2829

@@ -320,7 +321,26 @@ $colors: (
320321
.card__bkg {
321322
padding-top: 30px;
322323

324+
.card-title {
325+
font-size: 1.6em !important;
326+
letter-spacing: normal;
327+
}
328+
}
329+
330+
.card__bkg.card__bkg--brand {
331+
background-color: $pyos-darkpurple;
332+
color: #fff;
333+
334+
.card__title-container,
335+
h3.card-title {
336+
color: #fff;
337+
}
338+
}
339+
340+
p.card-stage {
341+
padding: 1em;
323342
}
343+
324344
article {
325345
display: contents;
326346
}

_sass/minimal-mistakes/_utilities.scss

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -212,6 +212,20 @@ body:hover .visually-hidden button {
212212
}
213213
}
214214

215+
/* wider padding option for landing-page content blocks */
216+
217+
.padding-wide {
218+
@include breakpoint($medium) {
219+
padding-left: 2.5rem !important;
220+
padding-right: 2.5rem !important;
221+
}
222+
223+
@include breakpoint($large) {
224+
padding-left: 3rem !important;
225+
padding-right: 3rem !important;
226+
}
227+
}
228+
215229
/*
216230
Icons
217231
========================================================================== */
69.3 KB
Loading

images/people/anita-graser.webp

1.77 KB
Loading
5.64 KB
Loading
66.5 KB
Loading
9.92 KB
Loading

0 commit comments

Comments
 (0)