diff --git a/apps/portal/src/components/Document/AutoNextPageButton.tsx b/apps/portal/src/components/Document/AutoNextPageButton.tsx
new file mode 100644
index 00000000000..8cb726b5b18
--- /dev/null
+++ b/apps/portal/src/components/Document/AutoNextPageButton.tsx
@@ -0,0 +1,27 @@
+"use client";
+
+import { usePathname } from "next/navigation";
+import type { SidebarLink } from "@/components/others/Sidebar";
+import { NextPageButton } from "./NextPageButton";
+import { getNextPageFromSidebar } from "./utils/getNextPageFromSidebar";
+
+export function AutoNextPageButton({
+ sidebarLinks,
+}: {
+ sidebarLinks: SidebarLink[];
+}) {
+ const pathname = usePathname();
+
+ // Don't show next button on home page
+ if (pathname === "/") {
+ return null;
+ }
+
+ const nextPage = getNextPageFromSidebar(sidebarLinks, pathname);
+
+ if (!nextPage) {
+ return null;
+ }
+
+ return ;
+}
diff --git a/apps/portal/src/components/Document/NextPageButton.tsx b/apps/portal/src/components/Document/NextPageButton.tsx
new file mode 100644
index 00000000000..0e9925ce29a
--- /dev/null
+++ b/apps/portal/src/components/Document/NextPageButton.tsx
@@ -0,0 +1,16 @@
+import { ArrowRightIcon } from "lucide-react";
+import Link from "next/link";
+
+export function NextPageButton(props: { href: string; name: string }) {
+ return (
+
+
Next: {props.name}
+
+
+ );
+}
diff --git a/apps/portal/src/components/Document/PageFooter.tsx b/apps/portal/src/components/Document/PageFooter.tsx
index e79bd444dca..3e059c90287 100644
--- a/apps/portal/src/components/Document/PageFooter.tsx
+++ b/apps/portal/src/components/Document/PageFooter.tsx
@@ -6,15 +6,25 @@ import {
VideoIcon,
} from "lucide-react";
import { Feedback } from "../others/Feedback";
+import type { SidebarLink } from "../others/Sidebar";
import { Subscribe } from "../others/Subscribe";
import { DocLink } from ".";
import { AutoEditPageButton } from "./AutoEditPageButton";
+import { AutoNextPageButton } from "./AutoNextPageButton";
-export function PageFooter(props: { editPageButton?: true }) {
+export function PageFooter(props: {
+ editPageButton?: true;
+ sidebarLinks?: SidebarLink[];
+}) {
return (