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 29175c16 Resolves #53
29175c16 is described below

commit 29175c168f5b8ed6e17c59fcb4e95f6e7905d39d
Author: kparisa <[email protected]>
AuthorDate: Fri Jul 31 23:44:46 2026 -0700

    Resolves #53
---
 src/app/(home)/page.tsx           |  79 +++++++++++++++++++++++-
 src/app/(site)/downloads/page.tsx |   5 --
 src/app/(site)/layout.tsx         |   8 ++-
 src/app/docs/layout.tsx           |  10 +++-
 src/components/site-footer.tsx    | 122 ++++++++++++++++++++++++++++++++++++++
 5 files changed, 214 insertions(+), 10 deletions(-)

diff --git a/src/app/(home)/page.tsx b/src/app/(home)/page.tsx
index d05f0178..e5a9de60 100644
--- a/src/app/(home)/page.tsx
+++ b/src/app/(home)/page.tsx
@@ -434,7 +434,7 @@ export default function HomePage() {
         style={{ backgroundColor: "#070c17" }}
       >
         <div className="mx-auto max-w-6xl">
-          <div className="grid gap-10 sm:grid-cols-3">
+          <div className="grid gap-10 sm:grid-cols-2 lg:grid-cols-4">
             <div>
               <h4 className="mb-4 text-sm font-semibold tracking-wide 
text-[#ff9103] uppercase">
                 Docs
@@ -520,6 +520,83 @@ export default function HomePage() {
                 </li>
               </ul>
             </div>
+            <div>
+              <h4 className="mb-4 text-sm font-semibold tracking-wide 
text-[#ff9103] uppercase">
+                Apache
+              </h4>
+              <ul className="space-y-2.5 text-sm">
+                <li>
+                  <Link
+                    href="https://www.apache.org/";
+                    target="_blank"
+                    rel="noopener noreferrer"
+                    className="text-[#aeb5bd] transition-colors 
hover:text-[#fffaeb]"
+                  >
+                    Foundation
+                  </Link>
+                </li>
+                <li>
+                  <Link
+                    href="https://www.apache.org/licenses/";
+                    target="_blank"
+                    rel="noopener noreferrer"
+                    className="text-[#aeb5bd] transition-colors 
hover:text-[#fffaeb]"
+                  >
+                    License
+                  </Link>
+                </li>
+                <li>
+                  <Link
+                    href="https://events.apache.org/";
+                    target="_blank"
+                    rel="noopener noreferrer"
+                    className="text-[#aeb5bd] transition-colors 
hover:text-[#fffaeb]"
+                  >
+                    Events
+                  </Link>
+                </li>
+                <li>
+                  <Link
+                    href="https://www.apache.org/foundation/contributing.html";
+                    target="_blank"
+                    rel="noopener noreferrer"
+                    className="text-[#aeb5bd] transition-colors 
hover:text-[#fffaeb]"
+                  >
+                    Donate
+                  </Link>
+                </li>
+                <li>
+                  <Link
+                    href="https://www.apache.org/foundation/sponsorship.html";
+                    target="_blank"
+                    rel="noopener noreferrer"
+                    className="text-[#aeb5bd] transition-colors 
hover:text-[#fffaeb]"
+                  >
+                    Sponsors
+                  </Link>
+                </li>
+                <li>
+                  <Link
+                    href="https://www.apache.org/security/";
+                    target="_blank"
+                    rel="noopener noreferrer"
+                    className="text-[#aeb5bd] transition-colors 
hover:text-[#fffaeb]"
+                  >
+                    Security
+                  </Link>
+                </li>
+                <li>
+                  <Link
+                    
href="https://privacy.apache.org/policies/privacy-policy-public.html";
+                    target="_blank"
+                    rel="noopener noreferrer"
+                    className="text-[#aeb5bd] transition-colors 
hover:text-[#fffaeb]"
+                  >
+                    Privacy
+                  </Link>
+                </li>
+              </ul>
+            </div>
           </div>
           <div className="mt-12 border-t border-[#3d4450] pt-8 text-xs 
leading-relaxed text-[#636b75]">
             <p>
diff --git a/src/app/(site)/downloads/page.tsx 
b/src/app/(site)/downloads/page.tsx
index ec289b24..2d2d913b 100644
--- a/src/app/(site)/downloads/page.tsx
+++ b/src/app/(site)/downloads/page.tsx
@@ -258,11 +258,6 @@ shasum -a 512 -c 
iggy-0.8.0-incubating-src.tar.gz.sha512`}</code>
           .
         </p>
 
-        <div className="mt-16 border-t border-fd-border pt-8 text-xs 
text-fd-muted-foreground/60">
-          &copy; {new Date().getFullYear()} The Apache Software Foundation.
-          Apache, Apache Iggy, the Apache feather logo, and related marks are
-          trademarks of the ASF.
-        </div>
       </div>
     </main>
   );
diff --git a/src/app/(site)/layout.tsx b/src/app/(site)/layout.tsx
index 8fd3f354..5955d0d9 100644
--- a/src/app/(site)/layout.tsx
+++ b/src/app/(site)/layout.tsx
@@ -19,7 +19,13 @@
 
 import { HomeLayout } from "fumadocs-ui/layouts/home";
 import { siteOptions } from "@/lib/layout.shared";
+import { SiteFooter } from "@/components/site-footer";
 
 export default function Layout({ children }: { children: React.ReactNode }) {
-  return <HomeLayout {...siteOptions()}>{children}</HomeLayout>;
+  return (
+    <HomeLayout {...siteOptions()}>
+      {children}
+      <SiteFooter />
+    </HomeLayout>
+  );
 }
diff --git a/src/app/docs/layout.tsx b/src/app/docs/layout.tsx
index 802e4634..9d82c0d1 100644
--- a/src/app/docs/layout.tsx
+++ b/src/app/docs/layout.tsx
@@ -20,11 +20,15 @@
 import { source } from "@/lib/source";
 import { DocsLayout } from "fumadocs-ui/layouts/docs";
 import { docsOptions } from "@/lib/layout.shared";
+import { SiteFooter } from "@/components/site-footer";
 
 export default function Layout({ children }: { children: React.ReactNode }) {
   return (
-    <DocsLayout tree={source.getPageTree()} {...docsOptions()}>
-      {children}
-    </DocsLayout>
+    <>
+      <DocsLayout tree={source.getPageTree()} {...docsOptions()}>
+        {children}
+      </DocsLayout>
+      <SiteFooter />
+    </>
   );
 }
diff --git a/src/components/site-footer.tsx b/src/components/site-footer.tsx
new file mode 100644
index 00000000..ff8aafe7
--- /dev/null
+++ b/src/components/site-footer.tsx
@@ -0,0 +1,122 @@
+/**
+ * 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";
+
+const footerSections = [
+  {
+    title: "Docs",
+    links: [{ text: "Documentation", url: "/docs" }],
+  },
+  {
+    title: "Community",
+    links: [
+      { text: "Team", url: "/community/team" },
+      { text: "Contribute", url: "/community/how-to-contribute" },
+      { text: "Discord", url: "https://discord.gg/apache-iggy"; },
+      { text: "LinkedIn", url: "https://www.linkedin.com/company/apache-iggy/"; 
},
+    ],
+  },
+  {
+    title: "More",
+    links: [
+      { text: "Blogs", url: "/blogs" },
+      { text: "Downloads", url: "/downloads" },
+      { text: "GitHub", url: "https://github.com/apache/iggy"; },
+      { text: "Benchmarks", url: "https://benchmarks.iggy.apache.org"; },
+    ],
+  },
+  {
+    title: "Apache",
+    links: [
+      { text: "Foundation", url: "https://www.apache.org/"; },
+      { text: "License", url: "https://www.apache.org/licenses/"; },
+      { text: "Events", url: "https://events.apache.org/"; },
+      {
+        text: "Donate",
+        url: "https://www.apache.org/foundation/contributing.html";,
+      },
+      {
+        text: "Sponsors",
+        url: "https://www.apache.org/foundation/sponsorship.html";,
+      },
+      { text: "Security", url: "https://www.apache.org/security/"; },
+      {
+        text: "Privacy",
+        url: "https://privacy.apache.org/policies/privacy-policy-public.html";,
+      },
+    ],
+  },
+];
+
+function isExternal(url: string) {
+  return url.startsWith("https://";);
+}
+
+export function SiteFooter() {
+  return (
+    <footer className="border-t border-fd-border bg-fd-background px-6 py-14 
md:px-12">
+      <div className="mx-auto max-w-6xl">
+        <div className="grid gap-10 sm:grid-cols-2 lg:grid-cols-4">
+          {footerSections.map((section) => (
+            <div key={section.title}>
+              <h2 className="mb-4 text-sm font-semibold uppercase 
tracking-wide text-fd-primary">
+                {section.title}
+              </h2>
+              <ul className="space-y-2.5 text-sm">
+                {section.links.map((link) => {
+                  const external = isExternal(link.url);
+
+                  return (
+                    <li key={link.url}>
+                      <Link
+                        href={link.url}
+                        target={external ? "_blank" : undefined}
+                        rel={external ? "noopener noreferrer" : undefined}
+                        className="text-fd-muted-foreground transition-colors 
hover:text-fd-foreground"
+                      >
+                        {link.text}
+                      </Link>
+                    </li>
+                  );
+                })}
+              </ul>
+            </div>
+          ))}
+        </div>
+        <div className="mt-12 border-t border-fd-border pt-8 text-xs 
leading-relaxed text-fd-muted-foreground/70">
+          <p>
+            Apache Iggy is an effort undergoing incubation at The Apache
+            Software Foundation (ASF), sponsored by the Apache Incubator.
+          </p>
+          <p className="mt-4">
+            Copyright &copy; {new Date().getFullYear()} The Apache Software
+            Foundation, Licensed under the Apache License, Version 2.0.
+          </p>
+          <p className="mt-4">
+            Apache, Apache Iggy, the Apache feather logo, and related marks are
+            trademarks of the Apache Software Foundation. All other marks
+            mentioned may be trademarks or registered trademarks of their
+            respective owners.
+          </p>
+        </div>
+      </div>
+    </footer>
+  );
+}

Reply via email to