diff --git a/public/icons/bluesky.svg b/public/icons/bluesky.svg new file mode 100644 index 000000000..0c4d78f4d --- /dev/null +++ b/public/icons/bluesky.svg @@ -0,0 +1,4 @@ + + + + diff --git a/public/icons/instagram.svg b/public/icons/instagram.svg new file mode 100644 index 000000000..4760ed02f --- /dev/null +++ b/public/icons/instagram.svg @@ -0,0 +1,7 @@ + + + + + + + diff --git a/public/icons/linkedin.svg b/public/icons/linkedin.svg new file mode 100644 index 000000000..5d9e54999 --- /dev/null +++ b/public/icons/linkedin.svg @@ -0,0 +1,16 @@ + + + + + + + + + + diff --git a/public/icons/mastodon.svg b/public/icons/mastodon.svg new file mode 100644 index 000000000..c1ba80086 --- /dev/null +++ b/public/icons/mastodon.svg @@ -0,0 +1,2 @@ + + diff --git a/public/icons/x.svg b/public/icons/x.svg new file mode 100644 index 000000000..59f4900cc --- /dev/null +++ b/public/icons/x.svg @@ -0,0 +1 @@ + diff --git a/public/icons/youtube.svg b/public/icons/youtube.svg new file mode 100644 index 000000000..83dea3c08 --- /dev/null +++ b/public/icons/youtube.svg @@ -0,0 +1,6 @@ + + + +youtube + + diff --git a/src/components/sections/subscribe.astro b/src/components/sections/subscribe.astro new file mode 100644 index 000000000..6ba7f7d0e --- /dev/null +++ b/src/components/sections/subscribe.astro @@ -0,0 +1,102 @@ +--- +const socialLinks = [ + { href: "https://linkedin.com/company/europython/", icon: "linkedin" }, + { href: "https://instagram.com/europython/", icon: "instagram" }, + { href: "https://youtube.com/channel/UC98CzaYuFNAA_gOINFB0e4Q", icon: "youtube" }, + { href: "https://fosstodon.org/@europython", icon: "mastodon" }, + { href: "https://bsky.app/profile/europython.eu", icon: "bluesky" }, + { href: "https://x.com/europython", icon: "x" }, +]; +--- + +
+
+

+ Follow us
for updates +

+ +
+ {socialLinks.map(({ href, icon }) => ( + + {icon} + + ))} +
+ +

+ Subscribe to our conference newsletter and get
+ the latest updates and special deals +

+ +
+ + +
+ + +
+
+ + diff --git a/src/pages/index.astro b/src/pages/index.astro index 42a6314e1..c1c8b74b3 100644 --- a/src/pages/index.astro +++ b/src/pages/index.astro @@ -1,10 +1,19 @@ --- -import Hero from "../components/hero2/hero.astro"; -import Layout from "../layouts/HomePageLayout.astro"; -import Sponsors from "../components/sponsors/sponsors.astro"; -import KeynotersComponent from "../components/keynoters/keynoters.astro"; +import { getCollection } from "astro:content"; + +import Layout from "@layouts/HomePageLayout.astro"; +import Hero from "@components/hero2/hero.astro"; +import Keynoters from "@components/keynoters/keynoters.astro"; import Updates from "@sections/updates.astro"; import Prague from "@sections/prague.astro"; +import Sponsors from "@components/sponsors/sponsors.astro"; +import Subscribe from "@sections/subscribe.astro"; + +let deadlines = await getCollection("deadlines"); +deadlines = deadlines + .sort((a, b) => a.slug.localeCompare(b.slug)) + .reverse() + .slice(0, 3); --- - - - + - +