diff --git a/src/components/sections/media-partners.astro b/src/components/sections/media-partners.astro new file mode 100644 index 000000000..1bc3ae2f9 --- /dev/null +++ b/src/components/sections/media-partners.astro @@ -0,0 +1,64 @@ +--- +import { getCollection } from "astro:content"; +import Section2 from "@ui/Section2.astro"; +import Title from "@ui/Title.astro"; +import Button from "@ui/Button.astro"; +import SponsorLogo from "@components/SponsorLogo.astro"; + + +const partners = (await getCollection("sponsors", ({ data }) => { + const isProd = import.meta.env.MODE === "production"; + const notDraft = !isProd || data.draft !== true; + const isMediaPartner = data.tier === "Media Partners"; + return notDraft && isMediaPartner; +})).sort((a, b) => a.data.name.localeCompare(b.data.name)); + +const sectionSubtitle = "Meet the media organisations supporting EuroPython 2026"; +--- + + + +
+ Media Partners +
+
+

{sectionSubtitle}

+
+
+ +
+ +
+ {partners.map((partner) => ( + + ))} +
+ +
+ + diff --git a/src/content/sponsors/arjancodes/arjancodes.png b/src/content/sponsors/arjancodes/arjancodes.png new file mode 100644 index 000000000..13f385491 Binary files /dev/null and b/src/content/sponsors/arjancodes/arjancodes.png differ diff --git a/src/content/sponsors/arjancodes/index.md b/src/content/sponsors/arjancodes/index.md new file mode 100644 index 000000000..23a959f6f --- /dev/null +++ b/src/content/sponsors/arjancodes/index.md @@ -0,0 +1,24 @@ +--- +name: ArjanCodes +url: https://www.arjancodes.com/ +location: "World" +industry: "Technology" +description: + "ArjanCodes helps software developers and engineering teams build better + software through practical education, training, and content. Founded by + software developer, educator, and entrepreneur Arjan Egges, ArjanCodes draws + on more than 20 years of experience in software development and teaching. + Through its YouTube channel, online courses, and corporate training programs, + ArjanCodes has helped millions of developers improve their coding, + architecture, and software design skills." +socials: + linkedin: "https://www.linkedin.com/company/84778227" + twitter: "https://x.com/arjancodes" + youtube: "https://www.youtube.com/arjancodes" + instagram: "https://www.instagram.com/arjancodes/" + github: "https://github.com/arjancodes" + facebook: "https://www.facebook.com/arjancodes" + discord: "https://discord.com/invite/K9CKfWrX4A" +logo_padding: 10px +tier: Media Partners +--- diff --git a/src/content/sponsors/django-chat/django-chat.png b/src/content/sponsors/django-chat/django-chat.png new file mode 100644 index 000000000..57037d28e Binary files /dev/null and b/src/content/sponsors/django-chat/django-chat.png differ diff --git a/src/content/sponsors/django-chat/index.md b/src/content/sponsors/django-chat/index.md new file mode 100644 index 000000000..a2beb17f1 --- /dev/null +++ b/src/content/sponsors/django-chat/index.md @@ -0,0 +1,14 @@ +--- +name: Django Chat +url: https://djangochat.com/ +location: "World" +industry: "Technology & Education" +description: + "Django Chat is a podcast about the Django web framework, hosted by William + Vincent and Carlton Gibson. Each episode covers Django internals, best + practices, and interviews with developers and contributors who are shaping the + Django ecosystem. It's an essential listen for anyone building with Django or + looking to deepen their understanding of Python web development." +logo_padding: 10px +tier: Media Partners +--- diff --git a/src/content/sponsors/hackerspace-wroclaw/hackerspace-wroclaw.svg b/src/content/sponsors/hackerspace-wroclaw/hackerspace-wroclaw.svg new file mode 100644 index 000000000..ed7887afa --- /dev/null +++ b/src/content/sponsors/hackerspace-wroclaw/hackerspace-wroclaw.svg @@ -0,0 +1,123 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/content/sponsors/hackerspace-wroclaw/index.md b/src/content/sponsors/hackerspace-wroclaw/index.md new file mode 100644 index 000000000..7e69ad48f --- /dev/null +++ b/src/content/sponsors/hackerspace-wroclaw/index.md @@ -0,0 +1,17 @@ +--- +name: Hackerspace Wrocław +url: https://hswro.org/ +location: Poland +industry: "Technology & Community" +description: + "Hackerspace Wrocław is a community of technology enthusiasts that has existed + in Wrocław for over 11 years. Our weekly Wednesday meetings are a perfect + opportunity to meet people fascinated by retro computing, amateur radio, + programming, electronics, woodworking and metalworking, as well as many other, + often surprising, things." +socials: + facebook: "https://www.facebook.com/HackerspaceWroclaw" + mastodon: "https://mastodon.radio/@SP6HACK" +logo_padding: 10px +tier: Media Partners +--- diff --git a/src/content/sponsors/paged-out/index.md b/src/content/sponsors/paged-out/index.md new file mode 100644 index 000000000..8e9e2bded --- /dev/null +++ b/src/content/sponsors/paged-out/index.md @@ -0,0 +1,17 @@ +--- +name: Paged Out! +url: https://pagedout.institute/ +location: World +industry: "Technology & Community" +description: + "Paged Out! is a free experimental (one article == one page) technical + magazine about programming (especially programming tricks!), hacking, security + hacking, retro computers, modern computers, electronics, demoscene, and other + similar topics. It's made by the community for the community." +socials: + linkedin: "https://www.linkedin.com/company/paged-out" + twitter: "https://x.com/pagedout_zine" + bluesky: "https://bsky.app/profile/pagedout.bsky.social" +logo_padding: 10px +tier: Media Partners +--- diff --git a/src/content/sponsors/paged-out/paged-out.png b/src/content/sponsors/paged-out/paged-out.png new file mode 100644 index 000000000..95d443ed3 Binary files /dev/null and b/src/content/sponsors/paged-out/paged-out.png differ diff --git a/src/content/sponsors/real-python-podcast/index.md b/src/content/sponsors/real-python-podcast/index.md new file mode 100644 index 000000000..503689e11 --- /dev/null +++ b/src/content/sponsors/real-python-podcast/index.md @@ -0,0 +1,19 @@ +--- +name: Real Python Podcast +url: https://realpython.com/podcasts/rpp/ +location: "World" +industry: "Technology & Education" +description: + "The Real Python Podcast is a weekly Python podcast hosted by Christopher + Bailey, featuring interviews with Python developers, educators, and community + members from around the world. Each episode dives into topics ranging from + Python best practices and tools, to career advice and open source projects, + making it a go-to resource for Pythonistas of all skill levels." +socials: + twitter: "https://x.com/realpython" + youtube: "https://www.youtube.com/@realpython" + github: "https://github.com/realpython" + facebook: "https://www.facebook.com/LearnRealPython" +logo_padding: 10px +tier: Media Partners +--- diff --git a/src/content/sponsors/real-python-podcast/real-python-podcast.svg b/src/content/sponsors/real-python-podcast/real-python-podcast.svg new file mode 100644 index 000000000..f08eed8f8 --- /dev/null +++ b/src/content/sponsors/real-python-podcast/real-python-podcast.svg @@ -0,0 +1,151 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/data/nav.ts b/src/data/nav.ts index cefe01e5b..b64a02f21 100644 --- a/src/data/nav.ts +++ b/src/data/nav.ts @@ -88,6 +88,10 @@ const L = { label: "Community Partners", url: "/community-partners", }, + mediaPartners: { + label: "Media Partners", + url: "/media-partners", + }, // Misc jobs: { label: "Jobs", url: "/jobs" }, @@ -178,7 +182,9 @@ export const NAV_MENUS: NavMenu[] = [ { label: "Community", url: "/about", - sections: [{ items: [L.about, L.eps, L.communityPartners] }], + sections: [ + { items: [L.about, L.eps, L.communityPartners, L.mediaPartners] }, + ], }, // Jobs — single link, no dropdown @@ -254,6 +260,13 @@ export const FOOTER_COLUMNS: FooterColumn[] = [ }, { title: "Community", - items: [L.about, L.eps, L.communityPartners, L.blog, L.contacts], + items: [ + L.about, + L.eps, + L.communityPartners, + L.mediaPartners, + L.blog, + L.contacts, + ], }, ]; diff --git a/src/pages/index.astro b/src/pages/index.astro index afdc9b09e..7b338812f 100644 --- a/src/pages/index.astro +++ b/src/pages/index.astro @@ -13,6 +13,7 @@ import Testimonials from "@sections/testimonials.astro"; import Programme from "@sections/programme.astro"; import EuroSciPy from "@sections/euroscipy.astro"; import CommunityPartners from "@sections/community-partners.astro"; +import MediaPartners from "@sections/media-partners.astro"; import Connect from "@sections/connect.astro"; --- @@ -32,6 +33,7 @@ import Connect from "@sections/connect.astro"; +