+
+
diff --git a/src/content.config.ts b/src/content.config.ts
index 93fd268dd..a39c41d39 100644
--- a/src/content.config.ts
+++ b/src/content.config.ts
@@ -15,6 +15,10 @@ const pages = defineCollection({
subtitle: z.string(),
toc: z.boolean().optional().default(true),
full: z.boolean().optional().default(false),
+ box1: z.string().optional(),
+ box2: z.string().optional(),
+ box3: z.string().optional(),
+ box4: z.string().optional(),
}),
});
diff --git a/src/content/pages/_open-spaces.mdx b/src/content/pages/_open-spaces.mdx
index c0bdcf27c..1a77990e1 100644
--- a/src/content/pages/_open-spaces.mdx
+++ b/src/content/pages/_open-spaces.mdx
@@ -1,13 +1,15 @@
---
-title: EuroPython 2025 Open Spaces
-subtitle: Organise or join an open space at EuroPython 2025!
+title: EuroPython 2026 Open Spaces
+subtitle: Organise or join an open space at EuroPython 2026!
+box1: "You set the agenda — Anyone can propose a session on any topic. Write it on the board in the morning and your room is booked."
+box2: "Discussions, not presentations — Open spaces are conversations, not talks. Bring questions, ideas, or a demo and let the group take it from there."
+box3: "The hallway track, formalised — Some of the best conference moments happen in hallway chats. Open spaces give those conversations a dedicated room and time slot."
+box4: "All topics welcome — From deep technical discussions to community organising, hiring, or just playing board games — if people want to talk about it, it belongs here."
---
-import { Image } from 'astro:assets';
+# EuroPython 2026 Open Spaces
-# EuroPython 2025 Open Spaces
-
-At EuroPython 2025, Open Spaces offer a unique opportunity for attendees to
+At EuroPython 2026, Open Spaces offer a unique opportunity for attendees to
shape their own experience. Instead of fixed schedules and talks, these sessions
are run by participants like you who bring fresh ideas and create discussions in
an open and friendly environment.
@@ -56,7 +58,7 @@ will reserve the slot for you.
## Who Can Participate?
-Anyone attending EuroPython 2025 can join or lead an Open Space session. It’s a
+Anyone attending EuroPython 2026 can join or lead an Open Space session. It’s a
perfect opportunity to share your ideas, ask questions, and connect with others
around topics you’re passionate about!
diff --git a/src/content/pages/posters.md b/src/content/pages/posters.md
new file mode 100644
index 000000000..4ec068ba4
--- /dev/null
+++ b/src/content/pages/posters.md
@@ -0,0 +1,19 @@
+---
+title: Posters
+subtitle:
+ A visual showcase of projects, research, and ideas — presented in person
+ during a dedicated poster session
+box1:
+ "Visual format — Posters present a project, library, or research finding as a
+ visual display. Think of it as a paper you can walk up to and discuss."
+box2:
+ "One-on-one conversations — Unlike talks, poster sessions let you have a
+ direct conversation with the author. Ask questions, give feedback, and dive as
+ deep as you like."
+box3:
+ "Great for first-time speakers — Posters are an excellent way to share your
+ work without the pressure of a stage presentation. Many speakers start here."
+box4:
+ "Dedicated session time — A block of time is reserved in the schedule for
+ poster viewing, so you won't have to choose between posters and talks."
+---
diff --git a/src/content/pages/talks.md b/src/content/pages/talks.md
new file mode 100644
index 000000000..ef8c637e8
--- /dev/null
+++ b/src/content/pages/talks.md
@@ -0,0 +1,18 @@
+---
+title: Talks
+subtitle:
+ The heart of EuroPython — three days of talks across five parallel tracks
+box1:
+ "30-minute talks — Our most common format. Speakers have 30 minutes including
+ Q&A to share a focused idea, project, or lesson learned."
+box2:
+ "45-minute deep dives — Selected talks get an extended slot for more complex
+ topics that benefit from extra depth and live demonstrations."
+box3:
+ "For every level — From beginner-friendly introductions to advanced internals
+ — each talk is tagged by experience level so you can plan your day."
+box4:
+ "Community-selected — Talks are chosen through an open call for proposals and
+ community voting, ensuring the programme reflects what Pythonistas actually
+ want to learn."
+---
diff --git a/src/content/pages/tutorials.md b/src/content/pages/tutorials.md
new file mode 100644
index 000000000..cd3d9e337
--- /dev/null
+++ b/src/content/pages/tutorials.md
@@ -0,0 +1,18 @@
+---
+title: Tutorials
+subtitle: Full-day, hands-on workshops led by domain experts
+box1:
+ "3-hour or 6-hour sessions — Tutorials run for half a day or a full day. Each
+ one is a self-contained workshop with exercises, examples, and hands-on
+ practice."
+box2:
+ "Small groups, personal attention — Unlike talks, tutorials are capped in
+ size. You get direct access to the instructor and can ask questions as you go."
+box3:
+ "Wide range of topics — From Python basics and web frameworks to data science
+ pipelines, async programming, and testing strategies — there is a tutorial for
+ every interest."
+box4:
+ "Separate ticket required — Tutorial participation requires a separate
+ tutorial ticket in addition to your conference pass."
+---
diff --git a/src/data/nav.ts b/src/data/nav.ts
index 632252f16..1d096d885 100644
--- a/src/data/nav.ts
+++ b/src/data/nav.ts
@@ -31,7 +31,7 @@ export interface FooterColumn {
const L = {
// Programme
- schedule: { label: "Schedule", url: "/schedule" },
+ schedule: { label: "Schedule", url: "/schedule/talks" },
talks: { label: "Talks", url: "/talks" },
tutorials: { label: "Tutorials", url: "/tutorials" },
posters: { label: "Posters", url: "/posters" },
diff --git a/src/layouts/ScheduleLayout.astro b/src/layouts/ScheduleLayout.astro
index a9c517cdd..85a3b24a3 100644
--- a/src/layouts/ScheduleLayout.astro
+++ b/src/layouts/ScheduleLayout.astro
@@ -7,9 +7,10 @@ export interface Props {
title?: string;
description: string;
headline: string;
+ hideNotices?: string[];
}
-const { title, description, headline } = Astro.props;
+const { title, description, headline, hideNotices = [] } = Astro.props;
---
@@ -27,6 +28,45 @@ const { title, description, headline } = Astro.props;
+
+
+
+
+
diff --git a/src/pages/posters.astro b/src/pages/posters.astro
index c6f4ca5d3..41ae38b30 100644
--- a/src/pages/posters.astro
+++ b/src/pages/posters.astro
@@ -2,9 +2,11 @@
import Layout from "@layouts/Layout.astro";
import Section2 from "@ui/Section2.astro";
import Title from "@ui/Title.astro";
-import { getCollection } from "astro:content";
+import { getCollection, getEntry } from "astro:content";
import ListPosters from "@components/sessions/list-posters.astro";
+const featuresEntry = await getEntry("pages", "posters");
+
const allSessions = await getCollection("sessions");
const posters = allSessions
.filter((s) => s.data.session_type?.toLowerCase() === "poster")
@@ -28,28 +30,19 @@ const posters = allSessions
-
+
-
- Visual format
- Posters present a project, library, or research finding as a visual display.
- Think of it as a paper you can walk up to and discuss.
-
-
- One-on-one conversations
- Unlike talks, poster sessions let you have a direct conversation with the
- author. Ask questions, give feedback, and dive as deep as you like.
-
-
- Great for first-time speakers
- Posters are an excellent way to share your work without the pressure of a
- stage presentation. Many speakers start here.
-
-
- Dedicated session time
- A block of time is reserved in the schedule for poster viewing, so you won't
- have to choose between posters and talks.
-