diff --git a/apps/course-builder-web/next.config.mjs b/apps/course-builder-web/next.config.mjs index 8268a0cae..9a44d39b6 100644 --- a/apps/course-builder-web/next.config.mjs +++ b/apps/course-builder-web/next.config.mjs @@ -27,17 +27,17 @@ const config = { async redirects() { return [ ...subdomains.map((subdomain) => ({ - source: "/:path*", + source: '/:path*', has: [ { - type: "host", + type: 'host', value: `${subdomain}.coursebuilder.dev`, }, ], destination: `https://www.coursebuilder.dev/${subdomain}/:path*`, permanent: false, })), - ]; + ] }, } diff --git a/docs/astro.config.mjs b/docs/astro.config.mjs index 98d0cb344..2f13c8c9e 100644 --- a/docs/astro.config.mjs +++ b/docs/astro.config.mjs @@ -1,23 +1,23 @@ -import { defineConfig } from 'astro/config'; -import starlight from '@astrojs/starlight'; +import starlight from '@astrojs/starlight' +import { defineConfig } from 'astro/config' // https://astro.build/config export default defineConfig({ - integrations: [ - starlight({ - title: 'Course Builder', - social: { - github: 'https://github.com/joelhooks/course-builder', - }, - sidebar: [ - { - label: 'Guides', - items: [ - // Each item here is one entry in the navigation menu. - { label: 'Getting Started', link: '/guides/getting-started/' }, - ], - } - ], - }), - ], -}); + integrations: [ + starlight({ + title: 'Course Builder', + social: { + github: 'https://github.com/joelhooks/course-builder', + }, + sidebar: [ + { + label: 'Guides', + items: [ + // Each item here is one entry in the navigation menu. + { label: 'Getting Started', link: '/guides/getting-started/' }, + ], + }, + ], + }), + ], +}) diff --git a/docs/package.json b/docs/package.json index eec8a2a3c..1d87cee20 100644 --- a/docs/package.json +++ b/docs/package.json @@ -16,4 +16,4 @@ "sharp": "^0.32.5", "typescript": "^5.2.2" } -} \ No newline at end of file +} diff --git a/docs/src/content/config.ts b/docs/src/content/config.ts index 9df91b604..ee1d27f56 100644 --- a/docs/src/content/config.ts +++ b/docs/src/content/config.ts @@ -1,7 +1,7 @@ -import { defineCollection } from 'astro:content'; -import { docsSchema, i18nSchema } from '@astrojs/starlight/schema'; +import { docsSchema, i18nSchema } from '@astrojs/starlight/schema' +import { defineCollection } from 'astro:content' export const collections = { - docs: defineCollection({ schema: docsSchema() }), - i18n: defineCollection({ type: 'data', schema: i18nSchema() }), -}; + docs: defineCollection({ schema: docsSchema() }), + i18n: defineCollection({ type: 'data', schema: i18nSchema() }), +} diff --git a/docs/src/content/docs/guides/getting-started.md b/docs/src/content/docs/guides/getting-started.md index 2e9f4edc6..0f191d36e 100644 --- a/docs/src/content/docs/guides/getting-started.md +++ b/docs/src/content/docs/guides/getting-started.md @@ -3,13 +3,10 @@ title: Getting Started description: This will help you create a new Course Builder project. --- -Course Builder is a Turborepo project that includes the website, this docs -site you are reading right now, and the various libraries and packages that -represent the Course Builder platform. +Course Builder is a Turborepo project that includes the website, this docs site you are reading right now, and the +various libraries and packages that represent the Course Builder platform. -:::note -This guide is a work in progress. It will be updated as the project evolves. -::: +:::note This guide is a work in progress. It will be updated as the project evolves. ::: It's non-trivial and these guides are going to make several assumptions: @@ -23,14 +20,14 @@ It's non-trivial and these guides are going to make several assumptions: This is a **lot** of assumptions! -There will be plenty of detail and links, but if you are not familiar with -these technologies, you may want to start with some of the links above. +There will be plenty of detail and links, but if you are not familiar with these technologies, you may want to start +with some of the links above. ## Next.js and the T3 Stack -The Course Builder website is built with [Next.js](https://nextjs.org/). It -uses [`create-t3-app`](https://create.t3.gg/) to scaffold the project. This -provides a consistent opinionated starting point for Next.js projects. +The Course Builder website is built with [Next.js](https://nextjs.org/). It uses +[`create-t3-app`](https://create.t3.gg/) to scaffold the project. This provides a consistent opinionated starting point +for Next.js projects. - NextAuth - TailwindCSS @@ -38,20 +35,16 @@ provides a consistent opinionated starting point for Next.js projects. - Drizzle ORM - CASL -Course Builder is using the Next.js App Router which makes use of React -Server Components. +Course Builder is using the Next.js App Router which makes use of React Server Components. -For the sake of simplicity, Course Builder is deployed to Vercel. This might -not be a strict requirement, but hosting on other platforms is left as an -exercise for the reader. +For the sake of simplicity, Course Builder is deployed to Vercel. This might not be a strict requirement, but hosting on +other platforms is left as an exercise for the reader. ## Integrated Third-Party Services -Course Builder is integrated with several third-party services. These are -all currently required for the project to function. This means that you will -need to create accounts with these services and configure them for your -project by adding the various keys and secrets to your environment variables -in the `course-builder-web` app. +Course Builder is integrated with several third-party services. These are all currently required for the project to +function. This means that you will need to create accounts with these services and configure them for your project by +adding the various keys and secrets to your environment variables in the `course-builder-web` app. - [Sanity](https://sanity.io): Content management - [Inngest](https://inngest.com): event-driven workflows @@ -62,8 +55,8 @@ in the `course-builder-web` app. - [Postmark](https://postmarkapp.com): Sending emails - [OpenAI](https://openai.com/): AI-powered content generation -It's possible to swap these out to suit your needs and preferences, but the -assumption in these guides is that you will be using these services. +It's possible to swap these out to suit your needs and preferences, but the assumption in these guides is that you will +be using these services. ## Clone the Repository @@ -86,9 +79,7 @@ cp .env.example .env They are all required. -:::note -There are 3 (THREE!) different entries for the URL of the project in the -environment: +:::note There are 3 (THREE!) different entries for the URL of the project in the environment: ```dotenv NEXTAUTH_URL="YOUR_TUNNEL.ngrok-free.app/" @@ -96,7 +87,5 @@ UPLOADTHING_URL="http://localhost:3000" NEXT_PUBLIC_URL="https://YOUR_TUNNEL.ngrok-free.app/" ``` -This is because the project is using several different services that need to -know the URL of the project. This is a bit of a pain, but it's the way it is -for now. -::: +This is because the project is using several different services that need to know the URL of the project. This is a bit +of a pain, but it's the way it is for now. ::: diff --git a/docs/src/content/docs/index.mdx b/docs/src/content/docs/index.mdx index 993e7e175..987f1223b 100644 --- a/docs/src/content/docs/index.mdx +++ b/docs/src/content/docs/index.mdx @@ -16,21 +16,21 @@ hero: icon: external --- -import { Card, CardGrid } from '@astrojs/starlight/components'; +import { Card, CardGrid } from '@astrojs/starlight/components' ## Next steps - - Edit `src/content/docs/index.mdx` to see this page change. - - - Add Markdown or MDX files to `src/content/docs` to create new pages. - - - Edit your `sidebar` and other config in `astro.config.mjs`. - - - Learn more in [the Starlight Docs](https://starlight.astro.build/). - + + Edit `src/content/docs/index.mdx` to see this page change. + + + Add Markdown or MDX files to `src/content/docs` to create new pages. + + + Edit your `sidebar` and other config in `astro.config.mjs`. + + + Learn more in [the Starlight Docs](https://starlight.astro.build/). + diff --git a/docs/tsconfig.json b/docs/tsconfig.json index 77da9dd00..bcbf8b509 100644 --- a/docs/tsconfig.json +++ b/docs/tsconfig.json @@ -1,3 +1,3 @@ { "extends": "astro/tsconfigs/strict" -} \ No newline at end of file +}