diff --git a/surfsense_web/app/(home)/changelog/page.tsx b/surfsense_web/app/(home)/changelog/page.tsx new file mode 100644 index 000000000..42c120048 --- /dev/null +++ b/surfsense_web/app/(home)/changelog/page.tsx @@ -0,0 +1,116 @@ +import { loader } from "fumadocs-core/source"; +import { changelog } from "@/.source/server"; +import { formatDate } from "@/lib/utils"; +import { getMDXComponents } from "@/mdx-components"; + +const source = loader({ + baseUrl: "/changelog", + source: changelog.toFumadocsSource(), +}); + +interface ChangelogData { + title: string; + date: string; + version?: string; + tags?: string[]; + body: React.ComponentType<{ components?: Record }>; +} + +interface ChangelogPageItem { + url: string; + data: ChangelogData; +} + +export default async function ChangelogPage() { + const allPages = source.getPages() as ChangelogPageItem[]; + const sortedChangelogs = allPages.sort((a, b) => { + const dateA = new Date(a.data.date).getTime(); + const dateB = new Date(b.data.date).getTime(); + return dateB - dateA; + }); + + return ( +
+ {/* Header */} +
+
+
+
+

+ Changelog +

+

+ Stay up to date with the latest updates and improvements to SurfSense. +

+
+
+
+
+ + {/* Timeline */} +
+
+ {sortedChangelogs.map((changelog) => { + const MDX = changelog.data.body; + const date = new Date(changelog.data.date); + const formattedDate = formatDate(date); + + return ( +
+
+
+
+ + + {changelog.data.version && ( +
+ {changelog.data.version} +
+ )} +
+
+ + {/* Right side - Content */} +
+ {/* Vertical timeline line */} +
+ {/* Timeline dot */} +
+
+ +
+
+

+ {changelog.data.title} +

+ + {/* Tags */} + {changelog.data.tags && changelog.data.tags.length > 0 && ( +
+ {changelog.data.tags.map((tag: string) => ( + + {tag} + + ))} +
+ )} +
+
+ +
+
+
+
+
+ ); + })} +
+
+
+ ); +} diff --git a/surfsense_web/changelog/content/2025-12-24.mdx b/surfsense_web/changelog/content/2025-12-24.mdx new file mode 100644 index 000000000..b4de6829c --- /dev/null +++ b/surfsense_web/changelog/content/2025-12-24.mdx @@ -0,0 +1,44 @@ +--- +title: "SurfSense v0.0.9 - Introducing the Agentic Architecture" +description: "SurfSense v0.0.9 introduces a new agentic architecture with intelligent source selection, temporal query understanding, and MCP compatibility." +date: "2025-12-24" +tags: ["Agentic", "Agent", "MCP"] +version: "0.0.9" +--- + +