diff --git a/src/components/ecosystem-pages/categories.astro b/src/components/ecosystem-pages/categories.astro index 49e7610b..73c03f5b 100644 --- a/src/components/ecosystem-pages/categories.astro +++ b/src/components/ecosystem-pages/categories.astro @@ -15,11 +15,19 @@ const sortedTags = [ ...normalizedTags.filter(tag => tag !== "ai & ml").sort((a, b) => a.localeCompare(b)), ]; -// Function to display "AI & ML" in proper casing -const displayTag = (tag) => tag === "ai & ml" ? "AI & ML" : tag - .split(" ") - .map(word => word.charAt(0).toUpperCase() + word.slice(1)) - .join(" "); +// Function to display specific tags in proper casing or modify others appropriately +const displayTag = (tag) => { + const specialCases = { + "dao": "DAO", + "pos validator": "PoS Validator", + "ai & ml": "AI & ML" + }; + + return specialCases[tag.toLowerCase()] || tag + .split(" ") + .map(word => word.charAt(0).toUpperCase() + word.slice(1)) + .join(" "); +} --- ) } - \ No newline at end of file + diff --git a/src/content/Ecosystem_Page/akash-chat-api/index.md b/src/content/Ecosystem_Page/akash-chat-api/index.md index 2998cc8b..0b700730 100644 --- a/src/content/Ecosystem_Page/akash-chat-api/index.md +++ b/src/content/Ecosystem_Page/akash-chat-api/index.md @@ -1,5 +1,5 @@ --- -projectTitle: Akash Chat - API +projectTitle: Akash Chat API projectImage: "./project-banner.png" pubDate: "2024-07-29" diff --git a/src/content/Ecosystem_Page/moultrie-audits/index.md b/src/content/Ecosystem_Page/moultrie-audits/index.md deleted file mode 100644 index 0263130d..00000000 --- a/src/content/Ecosystem_Page/moultrie-audits/index.md +++ /dev/null @@ -1,20 +0,0 @@ ---- -projectTitle: Moultrie Audits - -projectImage: "./project-banner.png" -pubDate: "2021-01-19" -category: deployed_on_akash - -tags: - - Dev Tool - -description: Scalable infrastructure auditing for decentralized protocols

- -twitterLink: "https://twitter.com/AuditsMoultrie" -websiteLink: "https://www.moultrieaudits.com/" - -ctaButton: - label: View Project - link: "https://www.moultrieaudits.com/" - enable: true ---- diff --git a/src/content/Ecosystem_Page/moultrie-audits/project-banner.png b/src/content/Ecosystem_Page/moultrie-audits/project-banner.png deleted file mode 100644 index 8a88d30f..00000000 Binary files a/src/content/Ecosystem_Page/moultrie-audits/project-banner.png and /dev/null differ diff --git a/src/content/Ecosystem_Page/nousresearch/index.md b/src/content/Ecosystem_Page/nousresearch/index.md index 636f02d4..ebfa966b 100644 --- a/src/content/Ecosystem_Page/nousresearch/index.md +++ b/src/content/Ecosystem_Page/nousresearch/index.md @@ -1,5 +1,5 @@ --- -projectTitle: Nousresearch +projectTitle: Nous Research projectImage: "./project-banner.png" pubDate: "2023-03-04" diff --git a/src/content/Ecosystem_Page/primeIntellect/index.md b/src/content/Ecosystem_Page/primeIntellect/index.md index 85e0cf09..4447b22a 100644 --- a/src/content/Ecosystem_Page/primeIntellect/index.md +++ b/src/content/Ecosystem_Page/primeIntellect/index.md @@ -1,5 +1,5 @@ --- -projectTitle: PrimeIntellect AI +projectTitle: Prime Intellect projectImage: "./project-banner.png" pubDate: "2024-02-23" diff --git a/src/content/Ecosystem_Page/primeIntellect/project-banner.png b/src/content/Ecosystem_Page/primeIntellect/project-banner.png index e1685e6a..af94c13b 100644 Binary files a/src/content/Ecosystem_Page/primeIntellect/project-banner.png and b/src/content/Ecosystem_Page/primeIntellect/project-banner.png differ diff --git a/src/content/Ecosystem_Page/spheron/index.md b/src/content/Ecosystem_Page/spheron/index.md deleted file mode 100644 index 04c7acb4..00000000 --- a/src/content/Ecosystem_Page/spheron/index.md +++ /dev/null @@ -1,20 +0,0 @@ ---- -projectTitle: Spheron - -projectImage: "./project-banner.png" -pubDate: "2021-01-19" -category: deployed_on_akash - -tags: - - Dev Tool - -description: Spherion is the simplest, fastest & most convenient way to deploy your web apps onto the Decentralized Cloud Network According to this tweet from Spheron's CEO, they are integrating Akash into their core offering, an incredible deployment experience for Web applications. - -twitterLink: "https://twitter.com/SpheronHQ" -websiteLink: "https://spheron.network/" - -ctaButton: - label: View Project - link: "https://spheron.network/" - enable: true ---- diff --git a/src/content/Ecosystem_Page/spheron/project-banner.png b/src/content/Ecosystem_Page/spheron/project-banner.png deleted file mode 100644 index 8d93f7ca..00000000 Binary files a/src/content/Ecosystem_Page/spheron/project-banner.png and /dev/null differ diff --git a/src/content/Ecosystem_Page/texas-edu/index.md b/src/content/Ecosystem_Page/texas-edu/index.md index 001e93ba..c08fb318 100644 --- a/src/content/Ecosystem_Page/texas-edu/index.md +++ b/src/content/Ecosystem_Page/texas-edu/index.md @@ -1,5 +1,5 @@ --- -projectTitle: Texas-edu +projectTitle: University of Texas at Austin projectImage: "./project-banner.png" pubDate: "2023-11-01" diff --git a/src/content/Ecosystem_Page/venice.ai/index.md b/src/content/Ecosystem_Page/venice.ai/index.md index 821c6738..575cd7ce 100644 --- a/src/content/Ecosystem_Page/venice.ai/index.md +++ b/src/content/Ecosystem_Page/venice.ai/index.md @@ -1,5 +1,5 @@ --- -projectTitle: Venice AI +projectTitle: Venice.ai projectImage: "./project-banner.png" pubDate: "2024-07-18" diff --git a/src/pages/ecosystem/deployed-on-akash/[tag]/latest/[page].astro b/src/pages/ecosystem/deployed-on-akash/[tag]/latest/[page].astro index 84f461ac..2161837d 100644 --- a/src/pages/ecosystem/deployed-on-akash/[tag]/latest/[page].astro +++ b/src/pages/ecosystem/deployed-on-akash/[tag]/latest/[page].astro @@ -17,44 +17,50 @@ import Categories from "@/components/ecosystem-pages/categories.astro"; type Project = CollectionEntry<"Ecosystem_Page">; // Define a function to generate static paths +const priorityTitles = [ + "Brev.dev", + "Venice.ai", + "Prime Intellect", + "University of Texas at Austin", + "Nous Research", + "Flock.io", + "Akash Chat API", + "Akash Chat", + "Auki" +]; + +// Function to get the index of a project based on the priority list +function getPriorityIndex(title) { + const index = priorityTitles.indexOf(title); + return index === -1 ? priorityTitles.length : index; // If not found, place it at the end +} + export async function getStaticPaths({ paginate, }: { paginate: PaginateFunction; }) { - // Retrieve the collection of "AkashTools_Page" and sort it by publication date const projects = (await getCollection("Ecosystem_Page")) .filter((project) => project.data.category === "deployed_on_akash") .sort((a, b) => { const dateA = new Date(a.data.pubDate); const dateB = new Date(b.data.pubDate); - - // Sort in descending order (latest date first) return dateB.getTime() - dateA.getTime(); }); - // Initialize an array to store unique tags const tags: string[] = []; - // Loop through each project projects.forEach((project) => { - // Loop through the tags in each blog post project.data.tags.forEach((tag: string) => { - // Capitalize the first letter of the tag const lowerCasedTag = tag.toLowerCase(); - // Check if the tag is not already in the allTags array if (!tags.includes(lowerCasedTag)) { - // Add the tag to the allTags array tags.push(lowerCasedTag); } }); }); - // Generate paths for each tag return tags.flatMap((tag) => { const lowercasedTag = tag.toLowerCase(); - - // filter posts related to specified tag const filteredPosts = projects.filter((post) => post.data.tags.some((tag: string) => tag.toLowerCase() === lowercasedTag), ); @@ -67,13 +73,9 @@ export async function getStaticPaths({ }); } -// Destructure data from Astro.props const { page, currentTag, tags } = Astro.props; - -// Access the current URL from Astro.url const astroUrl = Astro.url; const pathName = astroUrl.pathname.split("/"); - const formattedTag = currentTag.charAt(0).toUpperCase() + currentTag.slice(1); --- @@ -85,32 +87,6 @@ const formattedTag = currentTag.charAt(0).toUpperCase() + currentTag.slice(1); - - - -
@@ -144,7 +120,9 @@ const formattedTag = currentTag.charAt(0).toUpperCase() + currentTag.slice(1); class="mt-4 grid flex-shrink-0 grid-cols-1 gap-y-[24px] sm:grid-cols-2 sm:gap-x-8 md:gap-y-8 lg:grid-cols-3 lg:gap-x-[36px] lg:gap-y-[32px]" > { - page.data.map((project: Project, i: number) => { + [...page.data].sort((a, b) => + getPriorityIndex(a.data.projectTitle) - getPriorityIndex(b.data.projectTitle) + ).map((project: Project, i: number) => { return (