diff --git a/docs/src/layouts/DocsLayout.astro b/docs/src/layouts/DocsLayout.astro
index 0b30cbd..897302d 100644
--- a/docs/src/layouts/DocsLayout.astro
+++ b/docs/src/layouts/DocsLayout.astro
@@ -1,10 +1,11 @@
---
import BaseLayout from "./BaseLayout.astro";
-import DocsHeader from "../components/DocsHeader.astro";
+import { DocsHeader } from "../components/DocsHeader";
import Container from "../components/Container.astro";
import { getFormattedStars } from "../lib/github";
import Sidebar from "../components/Sidebar.astro";
import type { CollectionEntry } from "astro:content";
+import { getAllGuides } from "../lib/guide";
type GuideType = CollectionEntry<"guides">;
@@ -12,15 +13,18 @@ export interface Props {
guide: GuideType;
}
+const groupedGuides = await getAllGuides();
+
const { guide } = Astro.props;
const { groupTitle, sort, title } = guide.data;
---
+
+ class="min-w-0 max-w-[800px] py-6 md:py-12 prose px-6 md:px-14 prose-base md:proxe-xl mb-24 prose-blockquote:font-normal prose-blockquote:not-italic prose-blockquote:text-gray-500 prose-p:before:content-['']">
diff --git a/docs/src/lib/guide.ts b/docs/src/lib/guide.ts
new file mode 100644
index 0000000..9021e27
--- /dev/null
+++ b/docs/src/lib/guide.ts
@@ -0,0 +1,14 @@
+import { CollectionEntry, getCollection } from "astro:content";
+
+export async function getAllGuides(): Promise[]>> {
+ const allGuides: CollectionEntry<"guides">[] = await getCollection("guides");
+ const sortedGuides = allGuides.sort((a, b) => a.data.sort - b.data.sort);
+ return sortedGuides.reduce((acc: Record[]>, curr: CollectionEntry<"guides">) => {
+ const { groupTitle } = curr.data;
+
+ acc[groupTitle] = acc[groupTitle] || [];
+ acc[groupTitle].push(curr);
+
+ return acc;
+ }, {});
+}