diff --git a/README.md b/README.md index 50df2bd0..b72ea816 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ -## Just D. +## Justd ![OG](https://getjustd.com/opengraph-image.png?v=1) -Just D. is a chill set of React components, built on top of [React Aria Components](https://react-spectrum.adobe.com/react-aria/getting-started.html?ref=getjustd.com), all about keeping the web accessible. Easy to customize and just copy & paste into your React projects. Plus, it includes Tailwind CSS for sleek styling right out of the box. +Justd is a chill set of React components, built on top of [React Aria Components](https://react-spectrum.adobe.com/react-aria/getting-started.html?ref=getjustd.com), all about keeping the web accessible. Easy to customize and just copy & paste into your React projects. Plus, it includes Tailwind CSS for sleek styling right out of the box. ## Documentation diff --git a/app/(app)/colors/page.tsx b/app/(app)/colors/page.tsx index bc169bcb..2019f842 100644 --- a/app/(app)/colors/page.tsx +++ b/app/(app)/colors/page.tsx @@ -6,7 +6,7 @@ import { siteConfig } from "@/resources/config/site" import type { Metadata } from "next" export const metadata: Metadata = { - title: "Colors / " + siteConfig.name, + title: "Colors", description: "A stash of over 154 colors blending TailwindCSS vibes with HTML color names, served up in 8 slick formats.", metadataBase: new URL(process.env.NEXT_PUBLIC_APP_URL ?? siteConfig.url), @@ -17,7 +17,60 @@ export const metadata: Metadata = { title: "Colors / " + siteConfig.name, description: "A stash of over 154 colors blending TailwindCSS vibes with HTML color names, served up in 8 slick formats." - } + }, + openGraph: { + title: "Colors / " + siteConfig.name, + images: [ + { + url: "https://getjustd.com/colors/opengraph-image.png?v=1", + width: 1200, + height: 630, + alt: "Justd Colors" + } + ], + description: + "A stash of over 154 colors blending TailwindCSS vibes with HTML color names, served up in 8 slick formats.", + url: "https://getjustd.com/colors", + type: "website" + }, + keywords: [ + "Colors", + "Tailwind CSS", + "UI Components", + "UI Kit", + "UI Library", + "UI Framework", + "Justd", + "React Aria", + "React Aria Components", + "Server Components", + "React Components", + "Next UI Components", + "UI Design System", + "UI for Laravel Inertia", + "Laravel Inertia UI", + "Laravel Inertia Components", + "Laravel Inertia UI Components", + "Laravel Inertia UI Kit", + "Laravel Inertia UI Library", + "Laravel Inertia UI Framework", + "Laravel Inertia Justd", + "Laravel Justd", + "Justd Components", + "Justd UI Components", + "Justd UI Kit", + "Justd UI Library", + "Justd UI Framework", + "Justd Laravel Inertia", + "Justd Laravel", + "Justd Inertia" + ], + authors: [ + { + name: "irsyadadl", + url: "https://x.com/irsyadadl" + } + ] } export default async function Page() { diff --git a/app/(app)/components/page.tsx b/app/(app)/components/page.tsx index d13fbfed..ca75d834 100644 --- a/app/(app)/components/page.tsx +++ b/app/(app)/components/page.tsx @@ -12,7 +12,56 @@ export const metadata: Metadata = { description: "Over 50 accessible components, neatly grouped into sections. Guaranteed usability for all!", metadataBase: new URL(process.env.NEXT_PUBLIC_APP_URL ?? siteConfig.url), - applicationName: siteConfig.name + applicationName: siteConfig.name, + openGraph: { + title: "Components / " + siteConfig.name, + description: + "Over 50 accessible components, neatly grouped into sections. Guaranteed usability for all!", + url: "https://getjustd.com/components", + type: "website", + images: [ + { + url: "https://getjustd.com/components/opengraph-image.png?v=1", + width: 1200, + height: 630, + alt: "Justd Components" + } + ] + }, + keywords: [ + "Components", + "Justd Components", + "Tailwind CSS", + "UI Components", + "UI Kit", + "UI Library", + "UI Framework", + "Justd", + "Next.js 15", + "React Aria", + "React Aria Components", + "Server Components", + "React Components", + "Next UI Components", + "UI Design System", + "UI for Laravel Inertia", + "Laravel Inertia UI", + "Laravel Inertia Components", + "Laravel Inertia UI Components", + "Laravel Inertia UI Kit", + "Laravel Inertia UI Library", + "Laravel Inertia UI Framework", + "Laravel Inertia Justd", + "Laravel Justd", + "Justd Components", + "Justd UI Components", + "Justd UI Kit", + "Justd UI Library", + "Justd UI Framework", + "Justd Laravel Inertia", + "Justd Laravel", + "Justd Inertia" + ] } export default function Page() { diff --git a/app/(app)/docs/[...slug]/page.tsx b/app/(app)/docs/[...slug]/page.tsx index 11d84a96..f19f8866 100644 --- a/app/(app)/docs/[...slug]/page.tsx +++ b/app/(app)/docs/[...slug]/page.tsx @@ -42,6 +42,12 @@ export async function generateMetadata({ params }: DocPageProps): Promise @@ -21,3 +14,67 @@ export default function Page() { ) } + +export const metadata: Metadata = { + title: "Themes / " + siteConfig.name, + description: + "Curated themes, carefully selected just for you, ready to be copied, pasted, and seamlessly integrated into your apps, giving your projects a polished and custom vibe without the hassle.", + metadataBase: new URL(process.env.NEXT_PUBLIC_APP_URL ?? siteConfig.url), + applicationName: siteConfig.name, + category: "Themes", + twitter: { + card: "summary_large_image", + title: "Themes / " + siteConfig.name, + description: + "Curated themes, carefully selected just for you, ready to be copied, pasted, and seamlessly integrated into your apps, giving your projects a polished and custom vibe without the hassle." + }, + openGraph: { + title: "Themes / " + siteConfig.name, + images: [ + { + url: "https://getjustd.com/themes/opengraph-image.png?v=1", + width: 1200, + height: 630, + alt: "Justd Themes" + } + ], + description: + "Curated themes, carefully selected just for you, ready to be copied, pasted, and seamlessly integrated into your apps, giving your projects a polished and custom vibe without the hassle.", + url: "https://getjustd.com/themes", + type: "website" + }, + keywords: [ + "Themes", + "Justd Themes", + "Tailwind CSS", + "UI Components", + "UI Kit", + "UI Library", + "UI Framework", + "Justd", + "Next.js 15", + "React Aria", + "React Aria Components", + "Server Components", + "React Components", + "Next UI Components", + "UI Design System", + "UI for Laravel Inertia", + "Laravel Inertia UI", + "Laravel Inertia Components", + "Laravel Inertia UI Components", + "Laravel Inertia UI Kit", + "Laravel Inertia UI Library", + "Laravel Inertia UI Framework", + "Laravel Inertia Justd", + "Laravel Justd", + "Justd Components", + "Justd UI Components", + "Justd UI Kit", + "Justd UI Library", + "Justd UI Framework", + "Justd Laravel Inertia", + "Justd Laravel", + "Justd Inertia" + ] +} diff --git a/app/layout.tsx b/app/layout.tsx index 5bc0b669..9d086676 100644 --- a/app/layout.tsx +++ b/app/layout.tsx @@ -22,6 +22,21 @@ export const metadata: Metadata = { alternates: { canonical: "./" }, + openGraph: { + title: { + default: siteConfig.name, + template: `%s | ${siteConfig.name}` + }, + description: siteConfig.description, + images: [ + { + url: "https://getjustd.com/opengraph-image.png?v=1", + width: 1200, + height: 630, + alt: "Justd" + } + ] + }, keywords: [ "React", "Next.js", @@ -32,7 +47,6 @@ export const metadata: Metadata = { "UI Library", "UI Framework", "Justd", - "Just D.", "React Aria", "React Aria Components", "Server Components", diff --git a/components/cta.tsx b/components/cta.tsx index 72b292f7..4ce668c5 100644 --- a/components/cta.tsx +++ b/components/cta.tsx @@ -10,7 +10,7 @@ export function Cta() {
- Just D. is Open Source + Justd is Open Source

Our code's chillin' on GitHub - dive in, peep it, or drop some hot commits if you're diff --git a/components/docs/navigation/breadcrumbs-demo.tsx b/components/docs/navigation/breadcrumbs-demo.tsx index 9b0737f7..5f8c7c8a 100644 --- a/components/docs/navigation/breadcrumbs-demo.tsx +++ b/components/docs/navigation/breadcrumbs-demo.tsx @@ -5,8 +5,8 @@ import { Breadcrumb, Breadcrumbs } from "ui" export default function BreadcrumbsDemo() { return ( {}}> - Home - Design System + Home + Design System Collections ) diff --git a/next.config.mjs b/next.config.mjs index 1ff6411c..9d54d9bb 100644 --- a/next.config.mjs +++ b/next.config.mjs @@ -1,35 +1,83 @@ -import { build } from 'velite' +import { build } from 'velite'; + /** @type {import('next').NextConfig} */ export default { - experimental: { - optimizePackageImports: [ - 'shiki', - ], - }, - webpack: (config) => { - config.plugins.push(new VeliteWebpackPlugin()); - return config; - }, -}; + experimental: { + optimizePackageImports: ["shiki"] + }, + webpack: (config) => { + config.plugins.push(new VeliteWebpackPlugin()) + return config + }, + async redirects() { + return [ + { + source: "/docs", + destination: "/docs/getting-started/installation", + permanent: false + }, + { + source: "/design-system", + destination: "/docs/getting-started/installation", + permanent: false + }, + { + source: "/docs/components/controls/command", + destination: "/docs/components/controls/command-menu", + permanent: false + }, + { + source: "/docs/components/forms/select", + destination: "/docs/components/pickers/select", + permanent: false + }, + { + source: "/docs/components/forms/select", + destination: "/docs/components/pickers/select", + permanent: false + }, + { + source: "/docs/components/statuses/toaster", + destination: "/docs/components/statuses/toast", + permanent: false + }, + { + source: "/docs/components/collections/carousel", + destination: "/docs/components/media/carousel", + permanent: false + }, + { + source: "/docs/components/forms/choicebox", + destination: "/docs/components/collections/choicebox", + permanent: false + }, + { + source: "/docs/components/forms/multiple-select", + destination: "/docs/components/pickers/multiple-select", + permanent: false + } + ] + } +} class VeliteWebpackPlugin { - static started = false; + static started = false - constructor(/** @type {import('velite').Options} */ options = {}) { - this.options = options; - } + constructor(/** @type {import('velite').Options} */ options = {}) { + this.options = options + } - apply(/** @type {import('webpack').Compiler} */ compiler) { - // executed three times in nextjs !!! - // twice for the server (nodejs / edge runtime) and once for the client - compiler.hooks.beforeCompile.tapPromise("VeliteWebpackPlugin", async () => { - if (VeliteWebpackPlugin.started) return; - VeliteWebpackPlugin.started = true; - const dev = compiler.options.mode === "development"; - this.options.watch = this.options.watch ?? dev; - this.options.clean = this.options.clean ?? !dev; - await build(this.options); // start velite - }); - } + apply(/** @type {import('webpack').Compiler} */ compiler) { + // executed three times in nextjs !!! + // twice for the server (nodejs / edge runtime) and once for the client + compiler.hooks.beforeCompile.tapPromise("VeliteWebpackPlugin", async () => { + if (VeliteWebpackPlugin.started) return + VeliteWebpackPlugin.started = true + const dev = compiler.options.mode === "development" + this.options.watch = this.options.watch ?? dev + this.options.clean = this.options.clean ?? !dev + await build(this.options) // start velite + }) + } } diff --git a/public/manifest.json b/public/manifest.json index b555c07b..a24bbd23 100644 --- a/public/manifest.json +++ b/public/manifest.json @@ -1,6 +1,6 @@ { - "name": "Just D.", - "short_name": "Just D.", + "name": "Justd", + "short_name": "Justd", "theme_color": "#ffffff", "background_color": "#ffffff", "display": "standalone", diff --git a/resources/config/site.ts b/resources/config/site.ts index ea7b87da..62b40e45 100644 --- a/resources/config/site.ts +++ b/resources/config/site.ts @@ -1,8 +1,8 @@ export const siteConfig = { - name: "Just D.", + name: "Justd", url: "https://getjustd.com", description: - "Just D. is a chill set of React components, built on top of React Aria Components, all about keeping the web accessible. Easy to customize and just copy & paste into your React projects. Plus, it includes Tailwind CSS for sleek styling right out of the box.", + "Justd is a chill set of React components, built on top of React Aria Components, all about keeping the web accessible. Easy to customize and just copy & paste into your React projects. Plus, it includes Tailwind CSS for sleek styling right out of the box.", author: "irsyadadl", links: { twitter: "https://x.com/intent/follow?screen_name=getjustd", diff --git a/resources/content/docs/components/controls/keyboard.mdx b/resources/content/docs/components/controls/keyboard.mdx index 618e3c8d..27f799d4 100644 --- a/resources/content/docs/components/controls/keyboard.mdx +++ b/resources/content/docs/components/controls/keyboard.mdx @@ -8,7 +8,7 @@ status: primitive --- ## Basic -There’s not much to showcase here, but you can explore related components such as the [Menu](/docs/components/collections/menu) and [Command](/docs/components/controls/command). +There’s not much to showcase here, but you can explore related components such as the [Menu](/docs/components/collections/menu) and [CommandMenu](/docs/components/controls/command-menu). Just a heads up: incorporating components like **menu** or **command** automatically integrates the keyboard component as well. There’s no need to install it separately. diff --git a/resources/content/docs/prologue/contribution-guide.mdx b/resources/content/docs/prologue/contribution-guide.mdx index 38a305b7..2240c821 100644 --- a/resources/content/docs/prologue/contribution-guide.mdx +++ b/resources/content/docs/prologue/contribution-guide.mdx @@ -1,6 +1,6 @@ --- title: "Contribution Guide" -description: If you're interested in contributing to D., this guide will help you get started. +description: "If you're interested in contributing to Justd, this comprehensive guide will walk you through everything you need to know to get started, from setting up your development environment to understanding the project structure and best practices for submitting your first pull request." order: 1 published: true --- diff --git a/resources/content/docs/prologue/release-notes.mdx b/resources/content/docs/prologue/release-notes.mdx index 5d3f51b4..3002f577 100644 --- a/resources/content/docs/prologue/release-notes.mdx +++ b/resources/content/docs/prologue/release-notes.mdx @@ -1,11 +1,11 @@ --- title: "Release Notes" -description: All the releases that have been made to Just D. +description: All the releases that have been made to Justd order: 2 published: true --- -Below is a list of all the releases that have been made to Just D. +Below is a list of all the releases that have been made to Justd If you don't see the release you're looking for, please run `npx justd-cli@latest diff` to see the changes. Not sure? Look at this [installation page](/docs/getting-started/installation#diff). ## 2024 @@ -26,7 +26,7 @@ This all changes are made on the 2024 release. - Add information to cli `npx justd-cli@latest help` ## August 13 -- Range Calendar is now stand alone component +- Range Calendar is now stand-alone component - Add `-o` flag to override existing components on `add` command - Add `diff` command to @@ -41,7 +41,7 @@ This all changes are made on the 2024 release. ## August 10 - Add `TagField` prop to [TagField](/docs/components/forms/tag-field) -- Make `MultipleSelect` better [MultipleSelect](/docs/components/forms/multiple-select) +- Make `MultipleSelect` better [MultipleSelect](/docs/components/pickers/multiple-select) - Refactor `MultipleSelect`, `TagGroud`, `TagField`, `TextField` to use `Field`. ## August 09 @@ -77,7 +77,7 @@ This all changes are made on the 2024 release. - Refactor Installation section in the docs - All repo like starter kit can be found [https://github.com/justdlabs](https://github.com/justdlabs). - Version of CLI is now **v0.1.37**. -- Added new component [Command](/docs/components/controls/command) +- Added new component [Command](/docs/components/controls/command-menu) - Added new component [Accordion](/docs/components/collections/accordion) - Fix toast component to use theme provider - Refactoring docs for dark mode @@ -88,7 +88,7 @@ This all changes are made on the 2024 release. - Threw in the new [Loader](/docs/components/statuses/loader) component ## July 27 -- Remove clear button from [Select](/docs/components/forms/select) +- Remove clear button from [Select](/docs/components/pickers/select) - Fix grid to use regular HTML div [Grid](/docs/components/surfaces/grid) ## July 25 @@ -97,8 +97,8 @@ This all changes are made on the 2024 release. - Pagination move from Grid to ListBox [Pagination](/docs/components/navigation/pagination) ## July 18 -- New component [Caoursel](/docs/components/collections/carousel) -- New component [Choicebox](/docs/components/forms/choicebox) +- New component [Carousel](/docs/components/media/carousel) +- New component [Choicebox](/docs/components/collections/choicebox) - Move CLI from `@irsyadadl/d` to `justd-cli` ## July 16 @@ -112,14 +112,14 @@ This all changes are made on the 2024 release. ## July 11 - Add [Color](/docs/components/colors/color-picker) component -- Make [Toaster](/docs/components/statuses/toaster) better +- Make [Toast](/docs/components/statuses/toast) better - Color Picker & Date Picker now friendly to mobile. ## July 08 - Add [Card](/docs/components/surfaces/card) component - Redesign Homepage - Add [Avatar](/docs/components/media/avatar) component -- Add [Toaster](/docs/components/statuses/toaster) component +- Add [Toast](/docs/components/statuses/toast) component - Add [CLI](/docs/getting-started/installation#cli) to install components ## July 05