This is an automated email from the ASF dual-hosted git repository.
kparisa pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/iggy-website.git
The following commit(s) were added to refs/heads/main by this push:
new a0a23db90 content(site): add a meetups page (#143)
a0a23db90 is described below
commit a0a23db90282ab0ef35f2fbd5ad1b9eb9352335b
Author: Justin Mclean <[email protected]>
AuthorDate: Thu Nov 5 18:18:02 2026 +1100
content(site): add a meetups page (#143)
---
src/app/(site)/meetups/page.tsx | 138 ++++++++++++++++++++++++++++++++++++++++
src/components/site-footer.tsx | 1 +
src/lib/layout.shared.tsx | 2 +
src/lib/site.ts | 1 +
4 files changed, 142 insertions(+)
diff --git a/src/app/(site)/meetups/page.tsx b/src/app/(site)/meetups/page.tsx
new file mode 100644
index 000000000..83c4aadc4
--- /dev/null
+++ b/src/app/(site)/meetups/page.tsx
@@ -0,0 +1,138 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import Link from "next/link";
+import type { Metadata } from "next";
+
+export const metadata: Metadata = {
+ title: "Meetups",
+ description: "Recordings of past Apache Iggy community meetups and the next
scheduled event",
+};
+
+const meetups = [
+ {
+ date: "2026-10-07",
+ title: "Apache Iggy community meetup, 2026-10-07",
+ summary:
+ "Piotr Gankiewicz on clustering in 0.9.0, followed by questions from the
room and the chat.",
+ recording: "https://youtu.be/n3a8VJdpeGc",
+ notes: "https://github.com/apache/iggy/discussions/4440",
+ },
+];
+
+export default function MeetupsPage() {
+ return (
+ <main className="min-h-screen px-6 py-20 md:px-12">
+ <div className="mx-auto max-w-5xl">
+ <h1 className="mb-4 text-4xl font-extrabold tracking-tight
text-fd-foreground md:text-5xl">
+ Meetups
+ </h1>
+ <p className="mb-14 max-w-3xl text-lg leading-relaxed
text-fd-muted-foreground">
+ The Apache Iggy™ community meets online. Each meetup is
recorded
+ and published on the{" "}
+ <Link
+ href="https://www.youtube.com/@ApacheIggy"
+ className="text-fd-primary hover:underline"
+ >
+ Apache Iggy YouTube channel
+ </Link>
+ .
+ </p>
+
+ <h2 className="mb-4 text-2xl font-bold text-fd-foreground">
+ Next meetup
+ </h2>
+ <p className="mb-14 text-base text-fd-muted-foreground">
+ No meetup is scheduled. Dates are announced on the{" "}
+ <Link
+ href="/community/mailing-lists"
+ className="text-fd-primary hover:underline"
+ >
+ dev mailing list
+ </Link>{" "}
+ and in{" "}
+ <Link
+ href="https://github.com/apache/iggy/discussions"
+ className="text-fd-primary hover:underline"
+ >
+ GitHub Discussions
+ </Link>
+ .
+ </p>
+
+ <h2 className="mb-6 text-2xl font-bold text-fd-foreground">
+ Past meetups
+ </h2>
+ <div className="overflow-x-auto rounded-xl border border-fd-border">
+ <table className="w-full text-left text-sm text-fd-foreground">
+ <thead>
+ <tr className="bg-fd-accent/60">
+ <th className="border-b border-fd-border px-5 py-3.5 text-xs
font-semibold tracking-wide text-fd-muted-foreground uppercase">
+ Date
+ </th>
+ <th className="border-b border-fd-border px-5 py-3.5 text-xs
font-semibold tracking-wide text-fd-muted-foreground uppercase">
+ Meetup
+ </th>
+ <th className="border-b border-fd-border px-5 py-3.5 text-xs
font-semibold tracking-wide text-fd-muted-foreground uppercase">
+ Recording
+ </th>
+ <th className="border-b border-fd-border px-5 py-3.5 text-xs
font-semibold tracking-wide text-fd-muted-foreground uppercase">
+ Summary
+ </th>
+ </tr>
+ </thead>
+ <tbody>
+ {meetups.map((m) => (
+ <tr
+ key={m.date}
+ className="border-b border-fd-border/50 transition-colors
hover:bg-fd-accent/30"
+ >
+ <td className="px-5 py-4 text-fd-muted-foreground">
+ {m.date}
+ </td>
+ <td className="px-5 py-4">
+ <span className="font-semibold">{m.title}</span>
+ <br />
+ <span
className="text-fd-muted-foreground">{m.summary}</span>
+ </td>
+ <td className="px-5 py-4">
+ <Link
+ href={m.recording}
+ className="text-fd-primary hover:underline"
+ >
+ YouTube
+ </Link>
+ </td>
+ <td className="px-5 py-4">
+ <Link
+ href={m.notes}
+ className="text-fd-primary hover:underline"
+ >
+ Summary
+ </Link>
+ </td>
+ </tr>
+ ))}
+ </tbody>
+ </table>
+ </div>
+ </div>
+ </main>
+ );
+}
diff --git a/src/components/site-footer.tsx b/src/components/site-footer.tsx
index a1b4d2922..6187ad94e 100644
--- a/src/components/site-footer.tsx
+++ b/src/components/site-footer.tsx
@@ -39,6 +39,7 @@ const footerSections = [
links: [
{ text: "Blogs", url: "/blogs" },
{ text: "Downloads", url: "/downloads" },
+ { text: "Meetups", url: "/meetups" },
{ text: "GitHub", url: "https://github.com/apache/iggy" },
{ text: "Benchmarks", url: "https://benchmarks.iggy.apache.org" },
],
diff --git a/src/lib/layout.shared.tsx b/src/lib/layout.shared.tsx
index 4bb04a130..0d1e17d20 100644
--- a/src/lib/layout.shared.tsx
+++ b/src/lib/layout.shared.tsx
@@ -41,6 +41,7 @@ const sharedLinks: BaseLayoutProps["links"] = [
{ text: "Docs", url: "/docs" },
{ text: "Blogs", url: "/blogs" },
{ text: "Downloads", url: "/downloads" },
+ { text: "Meetups", url: "/meetups" },
{ text: "Powered By", url: "/powered-by" },
{
type: "custom",
@@ -121,6 +122,7 @@ export function docsOptions(): BaseLayoutProps {
{ text: "Home", url: "/" },
{ text: "Blogs", url: "/blogs" },
{ text: "Downloads", url: "/downloads" },
+ { text: "Meetups", url: "/meetups" },
{ text: "Powered By", url: "/powered-by" },
{
type: "custom",
diff --git a/src/lib/site.ts b/src/lib/site.ts
index c30d5d571..6c283c4dc 100644
--- a/src/lib/site.ts
+++ b/src/lib/site.ts
@@ -45,6 +45,7 @@ export const STATIC_ROUTES = [
"/",
"/blogs",
"/downloads",
+ "/meetups",
"/powered-by",
"/community",
"/community/become-a-committer",