diff --git a/cspell.json b/cspell.json
index 7cc01b5..2fd8dc4 100644
--- a/cspell.json
+++ b/cspell.json
@@ -47,6 +47,7 @@
"fosstodon",
"griffing",
"Harborside",
+ "hor'dourves",
"igalia",
"inngest",
"Instabase",
diff --git a/src/assets/venues/howlAtTheMoonDark.png b/src/assets/venues/howlAtTheMoonDark.png
new file mode 100644
index 0000000..21f7f25
Binary files /dev/null and b/src/assets/venues/howlAtTheMoonDark.png differ
diff --git a/src/assets/venues/howlAtTheMoonLight.png b/src/assets/venues/howlAtTheMoonLight.png
new file mode 100644
index 0000000..99a7530
Binary files /dev/null and b/src/assets/venues/howlAtTheMoonLight.png differ
diff --git a/src/components/AdImage.astro b/src/components/AdImage.astro
index e98e939..30bb9ae 100644
--- a/src/components/AdImage.astro
+++ b/src/components/AdImage.astro
@@ -5,15 +5,21 @@ import { Image } from "astro:assets";
interface Props {
src: ImageMetadata;
}
+
+const className =
+ Astro.props.src.height > Astro.props.src.width
+ ? "ad-image-tall"
+ : "ad-image-wide";
---
-
+
diff --git a/src/data/schedule.ts b/src/data/schedule.ts
index d5b19e8..db97c50 100644
--- a/src/data/schedule.ts
+++ b/src/data/schedule.ts
@@ -231,10 +231,15 @@ export const days: ScheduleDay[] = [
title: "Closing Announcements",
},
{
+ at: "7:30pm",
description: [
- "We'll set up a casual space for folks to mingle after the conference. Location and time TBA.",
- "Subscribe to our [newsletter](/#newsletter) to be the first to hear about it.",
+ "After dinner, bring your badge for entry and hang out with the organizers, speakers, and fellow attendees in our mixer.",
+ "Expect locally prepared hor'dourves and a craft lemonade stand.",
],
+ location: {
+ href: "https://www.howlatthemoon.com/boston",
+ text: "Howl at the Moon Boston",
+ },
title: "Post-Conference Hangout",
},
],
diff --git a/src/data/venues.ts b/src/data/venues.ts
new file mode 100644
index 0000000..e63b9a4
--- /dev/null
+++ b/src/data/venues.ts
@@ -0,0 +1,13 @@
+import howlAtTheMoonDark from "../assets/venues/howlAtTheMoonDark.png";
+import howlAtTheMoonLight from "../assets/venues/howlAtTheMoonLight.png";
+
+export const venuesBySlug = {
+ howlAtTheMoon: {
+ href: "https://howlatthemoon.com?utm_source=squiggleconf",
+ logos: {
+ dark: howlAtTheMoonLight,
+ light: howlAtTheMoonDark,
+ },
+ title: "Howl at the Moon",
+ },
+};
diff --git a/src/pages/ad/[type]/[slug].astro b/src/pages/ad/[type]/[slug].astro
index 0249415..42dceff 100644
--- a/src/pages/ad/[type]/[slug].astro
+++ b/src/pages/ad/[type]/[slug].astro
@@ -12,6 +12,7 @@ import DeepBlueSea from "~/components/DeepBlueSea.astro";
import Head from "~/components/Head.astro";
import { partnersBySlug } from "~/data/partners";
import { sponsorsBySlug } from "~/data/sponsors";
+import { venuesBySlug } from "~/data/venues";
export function getStaticPaths() {
return [
@@ -21,15 +22,24 @@ export function getStaticPaths() {
...Object.keys(sponsorsBySlug).map((slug) => ({
params: { type: "sponsor", slug: slug as keyof typeof sponsorsBySlug },
})),
+ ...Object.keys(venuesBySlug).map((slug) => ({
+ params: { type: "venue", slug: slug as keyof typeof venuesBySlug },
+ })),
];
}
-const { type, slug } = Astro.params;
+const entityMaps = {
+ sponsor: sponsorsBySlug,
+ venue: venuesBySlug,
+ partner: partnersBySlug,
+} as const;
+
+const type = Astro.params.type as keyof typeof entityMaps;
+const slug = Astro.params.slug;
+
+const entityMap = entityMaps[type as "partner"];
-const entity =
- type === "sponsor"
- ? sponsorsBySlug[slug as keyof typeof sponsorsBySlug]
- : partnersBySlug[slug as keyof typeof partnersBySlug];
+const entity = entityMap[slug as keyof typeof entityMap];
---