Offline
Table of contents

EuroPython 2025 Sprints

Join us for two days of open-source hacking, learning, and collaboration! As is tradition, the sprints will happen the weekend after EuroPython—this year on Saturday and Sunday, 19–20 July.

The conference team provides the space, lunch, and coffee—you bring the energy, ideas, and code. Whether you're maintaining a major library or trying your first contribution, there's something for everyone.

What is a Sprint?

Sprints are informal coding sessions (think: mini hackathons) where people gather to work on open-source projects, share ideas, and solve problems together.

Sprints photos collage

When and Where?

The sprints will take place on Saturday and Sunday, 19-20 July. Doors open at 8:30 AM, Sprints start at 9:00 AM, Sprints end at 06:00 PM.

The sprints will be held at the WPP Prague.

Who Can Attend:

  • EuroPython ticket holders (Conference, Tutorial, or Combined) can join the sprints for free—just make sure to select sprint attendance when configuring your ticket.
  • No ticket? No problem. You’ll be able to register for the sprints for free—details coming soon on our tickets page.

Open-Source Projects

Anyone can submit a project for the sprints, although sprints are typically submitted by project maintainers or frequent contributors.

To submit a project for the sprints, head to the EuroPython website repository and add your project as a markdown file in the folder src/content/sprints. Use the file _sprints_template.md as the template for your project file.

💡 Quick tip: You can quickly edit and prepare your changes directly in the browser using github web-based editor.

Once your file is added, submit a Pull Request — and you're done!

11 active sprints

Apache Airflow

👥 TBA 🐍 Intermediate
Contact: Wei Lee (weilee+ep2025@python.tw)

Apache Airflow is a platform that allows you to programmatically create, schedule, and monitor workflows. In this development sprint, we will guide you through the setup of your development environment, help you identify a suitable issue to work on and assist you in making your first contribution to Airflow! It is strongly recommended to follow through at Airflow Breeze CI environment since downloading Docker images can be quite time-consuming. If you encounter any issues, please feel free to ask questions in https://airflow.apache.org/community/.

AnyIO

👥 2-8 🐍 Intermediate
Contact: Alex Grönholm (alex.gronholm@nextday.fi) (@agronholm)

We'll mostly work on improving the documentation, in particular adding guides for migrating existing asyncio or Trio apps and libraries to the AnyIO API. If you have a pet peeve with AnyIO, or would just like to ask questions or get help with your AnyIO migration, feel free to join!

Apache Arrow

👥 TBA 🐍 Intermediate
Contact: Rok Mihevc (rok.mihevc@gmail.com)

If there's a feature you want, documentation that you could improve, a bug that bothers you or if you'd just like to open your first PR for PyArrow come join us (Alenka and Rok) and we'll help you pick an issue and open a PR.

Additionally - we want to add type annotations to the PyArrow project. We will sprint to identify best approach to do so by prototyping. Suggestions and discussion also welcome.

BeeWare

👥 10-15 🐍 Beginner
Contact: Russell Keith-Magee (russell@keith-magee.com)

Ever wanted to write an app for your phone using nothing but Python? Ever wanted to package your Python project so you can give it to someone else who knows nothing about Python? You can - with BeeWare! We welcome new contributors; no matter your level of experience, we can find a way for you to contribute. And every new contributor earns a challenge coin!

Python Documentation

👥 TBA 🐍 Any
Contact: Adam Turner (@AA-Turner)

Help us improve the Python documentation!

We'll be working on all parts of the documentation, so all and any changes are welcome -- from fixing a spelling error to documenting a new feature.

  1. Read 'what to expect' for a briefing on what happens at sprints in general. This was written for the PyCon US sprints, but a lot applies here!
  2. Fork and clone the repository before arriving at the sprints, to get started faster.
  3. Use the Python Developer's Guide to set up an environment for contributing to the documentation.

CPython Core

👥 TBA 🐍 Intermediate
Contact: Petr Viktorin

Come sprint on CPython and work on Python 3.14 and 3.15!

Sprints will focus on release candidate fixes to Python 3.14 (to be released this October), with some limited new feature work for 3.15 (final version in October 2026).

  1. Recommended for Python users with 2+ years of experience.
  2. Read what to expect (about PyCon US sprints, but a lot applies here!).
  3. Fork and clone the repository before coming to the venue in case of slow wifi :)
  4. Use the Python Developer's Guide to go through the initial build on you machine.

haitch

👥 2-8 🐍 Beginner
Contact: Logan Connolly (me@loganconnolly.com) (@logan-connolly)

The goal of haitch is to bring the MDN HTML Docs to your editor. By utilizing type annotations and inline documentation, this library enables you to write apps where you're comfortable (<insert-your-favorite-editor-here>). No templates and no JavaScript, just Python.

What I want from you is to ruthlessly test the library's API. Don't hold back. Be ruthless with your feedback. What's unclear? How could it be improved? I'll be there to answer questions and gather feedback for the future documentation. Check out the milestone link for more details.

Pillow

👥 TBD 🐍 Intermediate
Contact: Eric Soroos (eric-python@soroos.net) (@wiredfool)

I'm planning on working on the long-standing Pillow issue #1888 -- high bit depth multi channel images, specifically by trying to add planar image storage to the core Pillow imaging object. This comment outlines the general approach that I think would work.

There will be some C level wrangling in addition to the Python layer changes to implement the planar image storage.

Sphinx

👥 2-7 🐍 Any
Contact: Adam Turner (@AA-Turner)

Help us work on Sphinx, the documentation generator that powers Python, Linux, Jupyter, and more!

We're very happy to have contributors new and old! We'd be interested in improvements to the documentation, core extensions, theme usability, and anything else you'd be keen to work on!

UniversalPython

👥 2-8 🐍 Beginner
Contact: Saad Bazaz (bazaz@grayhat.studio) (@SaadBazaz)

UniversalPython is a simple transpiler which converts non-English Python code to Python, which effectively means you can translate Python to your mother tongue. Simple todos are:

  • Add your native language as a language in UniversalPython!
  • Write better docs, the current ones are a bit wonky. Link here
  • Propose (or even build!) an architecture which supports 3rd-party modules (like numpy!)
  • Write an extension/plugin
  • Make a wrapper REPL on the Python REPL

Big Thanks to Our Sponsor

We're grateful to have Anaconda as our Sprints sponsor!