diff --git a/website/app/docs/migrations/docusaurus/page.mdx b/website/app/docs/migrations/docusaurus/page.mdx index 5d58c75e..4867b6b9 100644 --- a/website/app/docs/migrations/docusaurus/page.mdx +++ b/website/app/docs/migrations/docusaurus/page.mdx @@ -1,7 +1,7 @@ --- title: "From Docusaurus" description: "Migrate Docusaurus docs, sidebars, versions, components, and assets to Farming Labs Docs" -icon: "file" +icon: "docusaurus" order: 1 related: - /docs/migrations diff --git a/website/app/docs/migrations/fumadocs/page.mdx b/website/app/docs/migrations/fumadocs/page.mdx index 4fd9af1f..9e55d3c7 100644 --- a/website/app/docs/migrations/fumadocs/page.mdx +++ b/website/app/docs/migrations/fumadocs/page.mdx @@ -1,7 +1,7 @@ --- title: "From Fumadocs" description: "Migrate Fumadocs content, meta files, source loaders, layouts, and components" -icon: "file" +icon: "fumadocs" order: 4 related: - /docs/migrations diff --git a/website/app/docs/migrations/gitbook/page.mdx b/website/app/docs/migrations/gitbook/page.mdx index a990040a..3281b0dc 100644 --- a/website/app/docs/migrations/gitbook/page.mdx +++ b/website/app/docs/migrations/gitbook/page.mdx @@ -1,7 +1,7 @@ --- title: "From GitBook" description: "Export GitBook through Git Sync and migrate Markdown, SUMMARY navigation, assets, spaces, and hosted behavior" -icon: "file" +icon: "gitbook" order: 7 related: - /docs/migrations diff --git a/website/app/docs/migrations/mintlify/page.mdx b/website/app/docs/migrations/mintlify/page.mdx index 3bec818a..75558d76 100644 --- a/website/app/docs/migrations/mintlify/page.mdx +++ b/website/app/docs/migrations/mintlify/page.mdx @@ -1,7 +1,7 @@ --- title: "From Mintlify" description: "Migrate Mintlify MDX, docs.json navigation, components, OpenAPI, and hosted integrations" -icon: "file" +icon: "mintlify" order: 2 related: - /docs/migrations diff --git a/website/app/docs/migrations/mkdocs/page.mdx b/website/app/docs/migrations/mkdocs/page.mdx index 49dcfde9..e7c2d489 100644 --- a/website/app/docs/migrations/mkdocs/page.mdx +++ b/website/app/docs/migrations/mkdocs/page.mdx @@ -1,7 +1,7 @@ --- title: "From Material for MkDocs" description: "Migrate MkDocs Markdown, mkdocs.yml navigation, extensions, theme overrides, and plugins" -icon: "file" +icon: "mkdocs" order: 8 related: - /docs/migrations diff --git a/website/app/docs/migrations/nextra/page.mdx b/website/app/docs/migrations/nextra/page.mdx index a5445795..10436a87 100644 --- a/website/app/docs/migrations/nextra/page.mdx +++ b/website/app/docs/migrations/nextra/page.mdx @@ -1,7 +1,7 @@ --- title: "From Nextra" description: "Migrate Nextra content, _meta navigation, layouts, and MDX components to Farming Labs Docs" -icon: "file" +icon: "nextra" order: 3 related: - /docs/migrations diff --git a/website/app/docs/migrations/starlight/page.mdx b/website/app/docs/migrations/starlight/page.mdx index 4a261634..c38ad2eb 100644 --- a/website/app/docs/migrations/starlight/page.mdx +++ b/website/app/docs/migrations/starlight/page.mdx @@ -1,7 +1,7 @@ --- title: "From Starlight" description: "Migrate Starlight Astro content, sidebar groups, frontmatter, expressive code, and components" -icon: "file" +icon: "starlight" order: 6 related: - /docs/migrations diff --git a/website/app/docs/migrations/vitepress/page.mdx b/website/app/docs/migrations/vitepress/page.mdx index 2ed729d2..824ea29b 100644 --- a/website/app/docs/migrations/vitepress/page.mdx +++ b/website/app/docs/migrations/vitepress/page.mdx @@ -1,7 +1,7 @@ --- title: "From VitePress" description: "Migrate VitePress Markdown, sidebar configuration, Vue components, containers, and assets" -icon: "file" +icon: "vitepress" order: 5 related: - /docs/migrations diff --git a/website/components/ui/migration-source-icon.tsx b/website/components/ui/migration-source-icon.tsx new file mode 100644 index 00000000..bb4ee6b0 --- /dev/null +++ b/website/components/ui/migration-source-icon.tsx @@ -0,0 +1,93 @@ +import type { SVGProps } from "react"; + +export const migrationSources = [ + { name: "Docusaurus", slug: "docusaurus" }, + { name: "Mintlify", slug: "mintlify" }, + { name: "Nextra", slug: "nextra" }, + { name: "Fumadocs", slug: "fumadocs" }, + { name: "VitePress", slug: "vitepress" }, + { name: "Starlight", slug: "starlight" }, + { name: "GitBook", slug: "gitbook" }, + { name: "Material for MkDocs", slug: "mkdocs" }, +] as const; + +export type MigrationSourceSlug = (typeof migrationSources)[number]["slug"]; + +const migrationIconPaths = { + docusaurus: + "M2.462 22.201h12.321a2.466 2.466 0 0 0 2.369-1.854c.026.004.052.008.079.008a.621.621 0 0 0 .615-.615.621.621 0 0 0-.615-.615c-.027 0-.053.004-.079.007l-.014-.055a.62.62 0 0 0 .378-.568.621.621 0 0 0-.615-.615.608.608 0 0 0-.371.127l-.042-.041a.606.606 0 0 0 .125-.368c0-.67-.919-.858-1.181-.241l-.055-.014c.003-.026.008-.052.008-.079a.622.622 0 0 0-.616-.615.621.621 0 0 0-.615.615h-.096a.617.617 0 0 0-1.033 0h-.717v-2.461h2.461c.115 0 .226-.017.331-.047a.307.307 0 1 0 .529-.304l.02-.021c.052.04.116.064.186.064h.002c.337 0 .428-.463.117-.591l.007-.028c.013.001.026.004.039.004a.31.31 0 0 0 .308-.308.31.31 0 0 0-.308-.308c-.013 0-.026.003-.039.004a.28.28 0 0 1-.007-.027c.327-.13-.028-.745-.305-.528l-.02-.021a.307.307 0 0 0 .062-.184c-.011-.326-.454-.416-.591-.12a1.238 1.238 0 0 0-.32-.047h-2.143a2.465 2.465 0 0 1 2.132-1.23h7.385V9.894l-8.618-.539a1.315 1.315 0 0 1-1.229-1.308c0-.688.542-1.265 1.229-1.307l8.618-.539v-1.23a2.473 2.473 0 0 0-2.462-2.462H8.615l-.307-.533a.356.356 0 0 0-.616 0l-.307.533-.308-.533a.355.355 0 0 0-.615 0l-.308.533-.308-.533a.355.355 0 0 0-.615 0l-.308.533-.008.001-.51-.51a.354.354 0 0 0-.594.159l-.168.628-.639-.171a.357.357 0 0 0-.436.435l.172.639-.628.169a.356.356 0 0 0-.16.594l.51.51v.008l-.533.307a.356.356 0 0 0 0 .616l.533.307-.533.308a.356.356 0 0 0 0 .616l.533.307-.533.308a.355.355 0 0 0 0 .615l.533.308-.533.308a.355.355 0 0 0 0 .615l.533.308-.533.307a.356.356 0 0 0 0 .616l.533.308-.533.307a.356.356 0 0 0 0 .616l.533.307-.533.308a.355.355 0 0 0 0 .615l.533.308-.533.308a.355.355 0 0 0 0 .615l.533.308-.533.308a.355.355 0 0 0 0 .615l.533.308-.533.307a.356.356 0 0 0 0 .616l.533.307-.533.308a.355.355 0 0 0 0 .615l.533.308-.533.308a.355.355 0 0 0 0 .615l.533.308a2.463 2.463 0 0 1-2.13-1.231A2.465 2.465 0 0 0 0 19.74c0 1.35 1.112 2.46 2.462 2.461zm19.692-5.204v2.743a2.473 2.473 0 0 1-2.461 2.461h-.001 1.231a2.466 2.466 0 0 0 2.383-1.854c.026.004.052.008.079.008A.621.621 0 0 0 24 19.74a.621.621 0 0 0-.615-.615c-.027 0-.053.004-.079.007l-.014-.055a.62.62 0 0 0 .378-.568.621.621 0 0 0-.615-.615.608.608 0 0 0-.371.127l-.042-.041a.612.612 0 0 0 .125-.368.623.623 0 0 0-.613-.615zm-4.067 2.62h2.223c.067 0 .123.056.123.123a.124.124 0 0 1-.123.123h-2.223a.845.845 0 0 0 0-.246zm-.33-1.231h2.553c.067 0 .123.056.123.123a.124.124 0 0 1-.123.123h-2.553a.845.845 0 0 0 0-.246zm-1.026-1.231h3.579c.067 0 .123.056.123.123a.124.124 0 0 1-.123.123h-3.474a.85.85 0 0 0-.105-.246zm3.579-.984h-6.159a.126.126 0 0 1-.123-.123c0-.068.056-.123.123-.123h6.159c.067 0 .123.056.123.123a.124.124 0 0 1-.123.123zm1.844-3.816v2.462c.115 0 .225-.017.331-.047a.308.308 0 1 0 .528-.304l.021-.021c.052.04.116.064.186.064a.312.312 0 0 0 .307-.308.306.306 0 0 0-.189-.283l.007-.028c.013.001.026.004.04.004a.312.312 0 0 0 .307-.308.312.312 0 0 0-.307-.308c-.014 0-.027.003-.04.004l-.007-.027a.31.31 0 0 0-.118-.592.306.306 0 0 0-.186.064l-.021-.021a.3.3 0 0 0 .063-.184c-.011-.326-.454-.416-.591-.12a1.24 1.24 0 0 0-.321-.047zm-6.059 2.339h4.215c.067 0 .123.056.123.123a.124.124 0 0 1-.123.123h-4.451a.564.564 0 0 0 .073-.19.553.553 0 0 0 .163-.056zm.454-1.208h3.761c.067 0 .123.056.123.123a.124.124 0 0 1-.123.123h-3.772a.552.552 0 0 0 .011-.246zm5.605-6.225h-.004c-.381.013-.561.393-.719.729-.166.35-.294.578-.504.572-.233-.009-.366-.271-.506-.549-.162-.32-.347-.682-.734-.668-.375.013-.556.344-.715.636-.169.311-.285.5-.507.491-.237-.008-.363-.222-.509-.469-.163-.275-.351-.585-.731-.574-.368.013-.549.294-.709.542-.169.262-.287.421-.513.412-.243-.009-.368-.186-.513-.391-.163-.231-.347-.491-.726-.479-.36.013-.541.243-.701.446-.151.192-.27.344-.52.335h-.005a.126.126 0 0 0-.123.123c0 .066.053.121.119.123.371.012.559-.222.723-.429.145-.184.27-.343.516-.352.237-.01.348.138.516.375.16.226.341.482.705.495.382.013.566-.273.729-.525.145-.226.271-.421.511-.429.22-.008.34.166.51.453.159.271.34.577.712.59.385.014.57-.322.732-.619.14-.257.273-.5.507-.508.221-.005.336.196.506.533.159.314.339.67.717.684h.021c.377 0 .556-.378.714-.713.14-.297.273-.576.501-.588zM7.385 6.509a.312.312 0 0 1-.308-.308c-.01-.532-.378-.911-.927-.922-.528-.011-.888.432-.919.922-.011.168-.139.307-.308.308a.31.31 0 0 1-.308-.308c0-.848.69-1.538 1.539-1.538.848 0 1.538.69 1.538 1.538a.312.312 0 0 1-.307.308zm9.846-2.308a.31.31 0 0 1 .308.308.31.31 0 0 1-.308.308.31.31 0 0 1-.308-.308.31.31 0 0 1 .308-.308zm2.461-.153a.31.31 0 0 1 .307.308.31.31 0 0 1-.308.308h-.001a.31.31 0 0 1-.307-.308.31.31 0 0 1 .308-.308z", + mintlify: + "M15.158.002a8.807 8.807 0 0 0-6.249 2.59l-.062.063h-.003L2.655 8.844a.605.605 0 0 0-.062.058 8.838 8.838 0 0 0-.83 11.55l6.251-6.249.065-.063a8.778 8.778 0 0 1-1.758-5.385 8.784 8.784 0 0 1 .283-2.151 8.993 8.993 0 0 1 2.151-.286 8.802 8.802 0 0 1 5.386 1.76 8.81 8.81 0 0 1 3.032 4.11 8.879 8.879 0 0 1 .225 5.21 8.784 8.784 0 0 0-.341.082 8.846 8.846 0 0 1-4.868-.303 8.679 8.679 0 0 1-2.323-1.25l-.064.065L3.55 22.24a8.85 8.85 0 0 0 11.548-.83l.06-.062 6.19-6.187a8.801 8.801 0 0 1-.367.337c.125-.11.247-.224.366-.341l.063-.058A8.817 8.817 0 0 0 24 8.844V.002ZM8.38 3.17a8.73 8.73 0 0 1 0 0Zm-.325.413Zm-.328.475Zm-.31.518Zm-.235.455Zm-.283.66zm-.156.447Zm14.147 9.44zm-.43.343zm-1.005.65zm-.533.274zm-.475.207z", + nextra: + "M22.68 21.031c-4.98-4.98-4.98-13.083 0-18.063l.978-.978c.22-.22.342-.513.342-.825 0-.311-.122-.604-.342-.824-.44-.441-1.207-.44-1.648 0l-.979.978c-4.98 4.98-13.084 4.98-18.063 0L1.99.34a1.17 1.17 0 0 0-1.649 0 1.168 1.168 0 0 0 0 1.649l.978.978c4.98 4.98 4.98 13.083 0 18.063l-.977.978c-.221.22-.342.513-.342.825 0 .31.121.604.341.824.442.443 1.21.441 1.65 0l.977-.977c4.98-4.983 13.083-4.98 18.064 0l.978.977c.22.22.513.342.824.342.312 0 .605-.122.824-.342.22-.22.342-.512.342-.824 0-.313-.122-.605-.342-.825l-.977-.978z", + vitepress: + "M17.029.0014a1.8382 1.8382 0 0 0-.1875.0176L4.0845 1.8334C3.0779 1.9767 2.3767 2.9196 2.518 3.939l2.5604 18.457c.1415 1.0193 1.0735 1.7292 2.08 1.586l12.757-1.8165c1.0066-.1433 1.7078-1.0861 1.5664-2.1054L18.9215 1.6049C18.7889.6493 17.961-.035 17.029.0014Zm.127.9316c.4271.027.7915.3549.8534.8008l2.5604 18.457c.0707.5097-.28.9812-.7831 1.0528L7.0296 23.058c-.5033.0717-.9683-.2833-1.039-.793L3.4302 3.81c-.0707-.5097.2799-.9811.7832-1.0528L16.9704.9408A.9066.9066 0 0 1 17.156.933zm-3.6443 5.3541L9.9668 7.5215a.1364.1364 0 0 0-.0898.1406l.3183 3.8692c.0075.0911.0994.1497.1836.1171l.9824-.3789c.092-.0355.1894.0373.1836.1368l-.0898 1.539c-.006.1036.1005.1763.1933.1328l.5997-.2812c.093-.0435.1976.031.1914.1347l-.1465 2.418c-.0092.1513.195.2037.2578.0664l.041-.0918 2.123-6.4238c.0355-.1076-.0658-.2104-.1718-.1738l-1.0176.3515c-.0955.033-.1917-.0491-.1777-.1504l.3437-2.4902a.1368.1368 0 0 0-.1426-.1562c-.016-.001-.0422.0084-.037.0058zm2.8223.7988a.2717.2717 0 0 0-.0801.0137L14 7.8496l-.0762.5606.4551-.1563c.5074-.1627.973.2955.8106.8027l-2.131 6.4493-.0526.1171c-.1268.2776-.4416.4304-.7383.3516-.2904-.077-.4911-.353-.4727-.6562l.1094-1.8086c-.5057.2578-.9731-.1473-.9473-.5938l.0567-.9765-.4532.1757c-.4144.1536-.8298-.1366-.8632-.543L9.453 8.5997l-3.0625-.123c-.2294-.0093-.3635.2552-.2226.4394l6.291 8.2305c.1293.169.391.1302.4668-.0684l3.668-9.6191c.072-.1889-.0765-.377-.2598-.373z", + gitbook: + "M12.513 1.097c-.645 0-1.233.34-2.407 1.017L3.675 5.82A7.233 7.233 0 0 0 0 12.063v.236a7.233 7.233 0 0 0 3.667 6.238L7.69 20.86c2.354 1.36 3.531 2.042 4.824 2.042 1.292.001 2.47-.678 4.825-2.038l4.251-2.453c1.177-.68 1.764-1.02 2.087-1.579.323-.56.324-1.24.323-2.6v-2.63a1.04 1.04 0 0 0-1.558-.903l-8.728 5.024c-.587.337-.88.507-1.201.507-.323 0-.616-.168-1.204-.506l-5.904-3.393c-.297-.171-.446-.256-.565-.271a.603.603 0 0 0-.634.368c-.045.111-.045.282-.043.625.002.252 0 .378.025.494.053.259.189.493.387.667.089.077.198.14.416.266l6.315 3.65c.589.34.884.51 1.207.51.324 0 .617-.17 1.206-.509l7.74-4.469c.202-.116.302-.172.377-.13.075.044.075.16.075.392v1.193c0 .34.001.51-.08.649-.08.14-.227.224-.522.394l-6.382 3.685c-1.178.68-1.767 1.02-2.413 1.02-.646 0-1.236-.34-2.412-1.022l-5.97-3.452-.043-.025a4.106 4.106 0 0 1-2.031-3.52V11.7c0-.801.427-1.541 1.12-1.944a1.979 1.979 0 0 1 1.982-.001l4.946 2.858c1.174.679 1.762 1.019 2.407 1.02.645 0 1.233-.34 2.41-1.017l7.482-4.306a1.091 1.091 0 0 0 0-1.891L14.92 2.11c-1.175-.675-1.762-1.013-2.406-1.013Z", + mkdocs: + "m17.029 18.772.777 1.166-5.417 2.709L0 16.451V4.063l5.417-2.709 5.298 7.948 7.867-5.24L24 1.354V16.84l-5.417 2.709zm2.023-13.827v13.253l3.949-1.975V2.97zM5.076 2.642 1.458 4.45 12.73 21.358l3.618-1.809z", +} as const; + +type MigrationSourceIconProps = SVGProps & { + source: MigrationSourceSlug; +}; + +export function MigrationSourceIcon({ source, ...props }: MigrationSourceIconProps) { + if (source === "fumadocs") { + return ( + + ); + } + + if (source === "starlight") { + return ( + + ); + } + + return ( + + ); +} diff --git a/website/docs.config.tsx b/website/docs.config.tsx index 3128d0b2..75f3970a 100644 --- a/website/docs.config.tsx +++ b/website/docs.config.tsx @@ -47,6 +47,7 @@ import { Callout } from "@/components/ui/callout"; import { DocsMcpAccess } from "@/components/ui/docs-mcp-access"; import { GuideCard } from "@/components/ui/guide-card"; import { MigrationCard } from "@/components/ui/migration-card"; +import { MigrationSourceIcon } from "@/components/ui/migration-source-icon"; import { submitDocsFeedback } from "@/lib/submit-docs-feedback"; import docsPackage from "../packages/docs/package.json"; @@ -294,6 +295,14 @@ export default defineDocs({ dollarSign: , route: , shadcn: , + docusaurus: , + mintlify: , + nextra: , + fumadocs: , + vitepress: , + starlight: , + gitbook: , + mkdocs: , }, github: { url: "https://github.com/farming-labs/docs",