diff --git a/docs/app.config.ts b/docs/app.config.ts
index 1781f1a..7448c1b 100644
--- a/docs/app.config.ts
+++ b/docs/app.config.ts
@@ -1,38 +1,46 @@
export default defineAppConfig({
docus: {
- title: 'Docus',
- description: 'The best place to start your documentation.',
+ title: 'Remark MDC',
+ description: 'Remark plugin to parse MarkDown Components syntax.',
image: 'https://user-images.githubusercontent.com/904724/185365452-87b7ca7b-6030-4813-a2db-5e65c785bf88.png',
+
socials: {
twitter: 'nuxt_js',
- github: 'nuxt-themes/docus',
+ github: 'nuxtlabs/remark-mdc',
nuxt: {
label: 'Nuxt',
icon: 'simple-icons:nuxtdotjs',
href: 'https://nuxt.com'
}
},
+
github: {
- dir: '.starters/default/content',
+ dir: 'docs/content',
branch: 'main',
- repo: 'docus',
- owner: 'nuxt-themes',
+ repo: 'remark-mdc',
+ owner: 'nuxtlabs',
edit: true
},
+
aside: {
level: 0,
collapsed: false,
exclude: []
},
+
main: {
padded: true,
fluid: true
},
+
header: {
- logo: true,
+ logo: false,
showLinkIcon: true,
exclude: [],
- fluid: true
- }
+ fluid: true,
+ title: 'Remark MDC'
+ },
+
+ titleTemplate: '%s · Remark MDC'
}
-})
+})
\ No newline at end of file
diff --git a/docs/content/0.index.md b/docs/content/0.index.md
index d909fd8..5d8783c 100644
--- a/docs/content/0.index.md
+++ b/docs/content/0.index.md
@@ -1,99 +1,248 @@
---
title: Home
-navigation: false
-layout: page
-main:
- fluid: false
---
-:ellipsis{right=0px width=75% blur=150px}
-::block-hero
+# Remark MDC
+
+Remark plugin to parse MarkDown Components syntax.
+
+## Setup
+
+
+Add `remark-mdc` dependency to your project:
+
+::code-group
+```bash [Yarn]
+yarn add --dev remark-mdc
+```
+```bash [NPM]
+npm install --save-dev remark-mdc
+```
+```bash [PNPM]
+pnpm i --save-dev remark-mdc
+```
+::
+
+Then, add `remark-mdc` to the `unified` streams:
+
+```ts
+import { unified } from 'unified'
+import remarkParse from 'remark-parse'
+import remarkMDC from 'remark-mdc'
+
+function parse(md: string) {
+ const processor = unified()
+ processor.use(remarkParse)
+
+ // Use `remark-mdc` plugin to parse mdc syntax
+ processor.use(remarkMDC)
+
+ // ...
+
+ return processor.process({ value: content, data: frontmatter })
+}
+```
+
+That's it ✨
+
+## Syntax
+
+### `^-` Frontmatter
+
+Front-matter is a convention of Markdown-based CMS to provide meta-data to documents, like description or title. Remark MDc uses the YAML syntax with `key: value` pairs.
+
+To define frontmatter, start your document with `---\n---` section and put your desired data in yaml format within this section.
+
+```md
---
-cta:
- - Get started
- - /introduction/getting-started
-secondary:
- - Open on GitHub →
- - https://github.com/nuxt-themes/docus
+title: 'Title of the page'
+description: 'meta description of the page'
---
-#title
-The best place to start your documentation.
+
+```
+
+### `:` Inline Components
+Inline components are entiries that will stick inside parent paragraph. Like spans, emojis, icons, etc. Inline component can be defined by single `:` followed by component name.
+
+```md
+A simple :inline-component
+```
+
+You may want to pass some text into an inline-component, you can do it using `[TEXT]` syntax
+
+```md
+A simple :inline-component[John Doe]
+```
+
+If you want to use an inline component followed by specific characters like `-`, `_` or `:`, you can use a dummy props specifier after it.
+
+```md
+How to say :hello{}-world in markdown
+```
+
+
+In this example, `:hello{}` will search for the `` component, and `-world` will be plain text.
+
+::alert
+Note: If you put an inline component alone in a single line it will be transformed to a block component. This is suger syntax for block components.
+```md
+Paragraph a
+
+:block-component
+
+Pargraph b
+```
+::
+
+### `::` Block Components
+
+Block components are components that accept Markdown content or another component as a slot.
+
+Block components defined by `::` identifier.
+
+```md
+::card
+The content of the card
+::
+```
+
+Block component can be used without any content.
+
+```md
+::card
+::
+```
+
+Or with suger syntax. Note that in suger syntax it is important to put the component alone in a separate line
+
+```md
+A paragraph
+
+:card
+```
+
+### `#` Slots
+
+Block components can accept slots (like vue slots) with different names. The content of these slots can be anything from normal markdown paragraph to a nested block component.
+
+- The `default` slot renders the top-level content inside the block component.
+- Named slots use the `#` identifier to render the corresponding content.
+
+```md
+::hero
+Default slot text
#description
-Write pages in [Markdown](https://content.nuxtjs.org), use [Vue](https://vuejs.org) components and enjoy the power of [Nuxt](https://nuxt.com).
-
-#extra
- ::list
- - **+50 Components** ready to build rich pages
- - **Docs** and **Page** layouts
- - Start from a `README`, scale to a framework documentation
- - Navigation and Table of Contents generation
- - Fully configurable design system
- - Leverages [**Typography**](https://typography.nuxt.space/) and [**Elements**](https://elements.nuxt.dev)
- - Used on [Content Documentation](https://content.nuxtjs.org)
- ::
-
-#support
- ::terminal
- ---
- content:
- - npx nuxi@latest init -t themes/docus
- - cd docs
- - npm install
- - npm run dev
- ---
- ::
+This will be rendered inside the `description` slot.
+```
+
+### `:::` Nesting
+
+MDC supports nested components inside slots by indenting them. In order to make nested components visually distinguishable, you can indend nested components and add more `:` when you define them.
+
+```md
+::hero
+ :::card
+ A nested card
+
+ ::::card
+ A super nested card
+ ::::
+ :::
::
+```
+
+### `[]` Span
+
+To create inline spans in your text you can use the `[]` identifier.
+
+```md
+Hello [World]
+```
+
+This syntax is usefull in combination of inline props to make text visually different from rest of paragraph. Checkout inline props section to read more about props.
+
+```md
+Hello [World]{.bg-blue-500}!
+```
+
+### `{}` Inline Props
-::card-grid
-#title
-What's included
-
-#root
-:ellipsis{left=0px width=40rem top=10rem blur=140px}
-
-#default
- ::card{icon=logos:nuxt-icon}
- #title
- Nuxt Architecture
- #description
- Harness the full power of [Nuxt 3](https://v3.nuxtjs.org) and its [modules](https://modules.nuxtjs.org) ecosystem.
- ::
-
- ::card{icon=IconNuxtStudio}
- #title
- Nuxt Studio ready
- #description
- Edit your theme content and appearance with live-preview within [Nuxt Studio](https://nuxt.studio).
- ::
-
- ::card{icon=logos:vue}
- #title
- Vue Components
- #description
- Use built-in components (or your own!) inside your content.
- ::
-
- ::card{icon=simple-icons:markdown}
- #title
- Write Markdown
- #description
- Enjoy the ease and simplicity of Markdown and discover [MDC syntax](https://content.nuxtjs.org/guide/writing/mdc).
- ::
-
- ::card{icon=noto:rocket}
- #title
- Deploy anywhere
- #description
- Zero config on [Vercel](https://vercel.com) or [Netlify](https://netlify.com). Choose between static generation, on-demand rendering (Node) or edge-side rendering on [CloudFlare workers](https://workers.cloudflare.com).
- ::
-
- ::card{icon=noto:puzzle-piece}
- #title
- Extensible.
- #description
- Customize the whole design, or add components using slots - you can make Docus your own.
- ::
+Using the inline props syntax you can pass props and attributes to your components. Also you MDC goes goes a step further and allows you to pass attributes to markdown native elements like images, links, bold texts and etc.
+
+In order to define properties for a component or a markdown element, You need to create props scope `{}` exactly after the component/element definition. Then you can define the properties inline this scope using a `key=value` syntax.
+
+```md
+Inline :component{key="value" key2=value2}
+
+::block-component{no-border title="My Component"}
::
+
+[Link](https://nuxt.com){class="nuxt"}
+
+{class=".nuxt-logo"}
+
+`code`{style="color: red"}
+
+_italic_{style="color: blue"}
+
+**bold**{style="color: blue"}
+```
+
+There is also couple of suger syntaxes for common use-cases:
+
+- `id` attribute: `_italic_{#the_italic_text}`
+- `class` attribute: `**bold**{.bold .text.with_attribute}`
+- No value (boolean props): `:component{no-border}`
+- Single string without any space: `**bold**{class=red}`
+
+If you want to pass arrays or objects as props to components you can pass them as JSON string and prefix the prop key with a colon to automatically decode the JSON string. Note that in this case you should use single quotes for the value string so you can use double quotes to pass a valid JSON string:
+
+```md
+::dropdown{:items='["Nuxt", "Vue", "React"]'}
+String Array
+::
+
+::dropdown{:items='[1,2,3.5]'}
+Number Array
+::
+
+::chart{:options='{"responsive": true, "scales": {"y": {"beginAtZero": true}}}'}
+Object
+::
+```
+
+### `---` Yaml Props
+
+The YAML method uses the `---` identifier to declare one prop per line, that can be useful for readability.
+
+```md
+::icon-card
+---
+icon: IconNuxt
+description: Harness the full power of Nuxt and the Nuxt ecosystem.
+title: Nuxt Architecture.
+---
+::
+```
+
+
+## Contributing
+
+You can contribute to this module online with CodeSandBox:
+
+[](https://codesandbox.io/s/github/nuxt-modules/color-mode/tree/master/?fontsize=14&hidenavigation=1&theme=dark)
+
+Or locally:
+
+1. Clone this repository
+2. Install dependencies using `pnpm install`
+3. Start development server using `pnpm dev`
+
+## License
+
+[MIT License](https://github.com/nuxt-modules/color-mode/blob/master/LICENSE)
+
+Copyright (c) Nuxt Team
diff --git a/docs/content/1.introduction/1.getting-started.md b/docs/content/1.introduction/1.getting-started.md
deleted file mode 100644
index 4c08c14..0000000
--- a/docs/content/1.introduction/1.getting-started.md
+++ /dev/null
@@ -1,57 +0,0 @@
-# Getting Started
-
-From your Markdown files to a deployed website in few minutes.
-
-## Play online
-
-You can start playing with Docus in your browser using Stackblitz:
-
-:button-link[Play on StackBlitz]{size="small" icon="IconStackBlitz" href="https://stackblitz.com/github/nuxt-themes/docus-starter" blank}
-
-## Create a new project
-
-1. Start a fresh Docus project with:
-
-```bash [npx]
-npx nuxi@latest init docs -t themes/docus
-```
-
-2. Install the dependencies in the `docs` folder:
-
-::code-group
-
- ```bash [npm]
- npm install
- ```
-
- ```bash [yarn]
- yarn install
- ```
-
- ```bash [pnpm]
- pnpm install --shamefully-hoist
- ```
-
-::
-
-3. Run the `dev` command to start Docus in development mode:
-
-::code-group
-
-```bash [npm]
-npm run dev
-```
-
-```bash [yarn]
-yarn dev
-```
-
-```bash [pnpm]
-pnpm run dev
-```
-
-::
-
-::alert{type="success"}
-✨ Well done! A browser window should automatically open for
-::
diff --git a/docs/content/1.introduction/2.project-structure.md b/docs/content/1.introduction/2.project-structure.md
deleted file mode 100644
index 1446a52..0000000
--- a/docs/content/1.introduction/2.project-structure.md
+++ /dev/null
@@ -1,21 +0,0 @@
-# Project Structure
-
-Docus is a Nuxt theme that provides a ready-to-use documentation website, if you are familiar with Nuxt, you will feel right at home.
-
-## Directory Structure
-
-This is the minimal directory structure to get an up and running Docus website.
-
-```bash
-content/
- index.md
-app.config.ts
-nuxt.config.ts
-```
-
-The `content/` directory is where you [write Markdown pages](/introduction/writing-pages).
-
-The `app.config.ts` is where you [configure Docus](/introduction/configuration) to fit your branding and design.
-
-
-The `nuxt.config.ts` is your [Nuxt configuration](https://nuxt.com/docs/getting-started/configuration).
diff --git a/docs/content/1.introduction/3.writing-pages.md b/docs/content/1.introduction/3.writing-pages.md
deleted file mode 100644
index a321324..0000000
--- a/docs/content/1.introduction/3.writing-pages.md
+++ /dev/null
@@ -1,41 +0,0 @@
-# Writing Pages
-
-Docus is made to let you write all your content in Markdown and Vue components with the MDC syntax.
-
-Each Markdown pages in the `content/` folder will be mapped to a route.
-
-| File | Generated route |
-| ------------------------ | :-------------------- |
-| `index.md` | `/` |
-| `about.md` | `/about` |
-| `blog/index.md` | `/blog` |
-| `blog/hello.md` | `/blog/hello` |
-| `1.guide/2.installation` | `/guide/installation` |
-
-## Frontmatter
-
-Docus supports multiple Front-matter attributes for pages.
-
-```md [index.md]
----
-title: "Get Started"
-description: "Let's learn how to use my amazing module."
----
-```
-
-| **Key** | **Type** | **Default** | **Description** |
-| ----------------------- | --------- | ----------- | ------------------------------------------------------------- |
-| `layout` | `string` | `default` | Use any layout name like you would in `definePageMeta()` |
-| `title` | `string` | | Defines the page title and H1 in docs pages |
-| `description` | `string` | | Defines the page description and excerpt in docs pages |
-| `redirect` | `string` | | A route path to redirect |
-| `image` | `object` | | OpenGraph cover image |
-| **Docs layout options** | | | |
-| `aside` | `boolean` | | Toggles the visibility of aside navigation |
-| `toc` | `boolean` | | Toggles the visibility of table of contents |
-| `header` | `boolean` | | Toggles the visibility of the page header |
-| `bottom` | `boolean` | | Toggles the visibility of page bottom section |
-| **Navigation options** | | | |
-| `navigation` | `boolean` | | Toggles the visibility of the page or directory in navigation |
-| `navigation.title` | `string` | | Changes the name of the page or directory in navigation |
-| `navigation.icon` | `string` | | Changes the icon of the page or directory in navigation |
diff --git a/docs/content/1.introduction/4.configuration.md b/docs/content/1.introduction/4.configuration.md
deleted file mode 100644
index d7d8e1a..0000000
--- a/docs/content/1.introduction/4.configuration.md
+++ /dev/null
@@ -1,149 +0,0 @@
-# Configuration
-
-Learn how to configure Docus.
-
-::code-group
-
-```ts [Minimal app.config.ts]
-export default defineAppConfig({
- docus: {
- title: 'Docus',
- description: 'My Docus Project',
- url: 'http://docus.dev'
- }
-})
-```
-
-```ts [Complete app.config.ts]
-export default defineAppConfig({
- docus: {
- title: 'Docus',
- description: 'My Docus Project',
- url: 'http://docus.dev',
- image: '/social-card-preview.png',
- socials: {
- twitter: '@nuxt_js',
- github: 'nuxt-themes/docus',
- },
- github: {
- root: 'content',
- edit: true,
- contributors: false
- },
- layout: 'default',
- aside: {
- level: 1,
- filter: [],
- },
- header: {
- title: false,
- logo: true,
- showLinkIcon: false
- },
- footer: {
- credits: {
- icon: 'IconDocus',
- text: 'Powered by Docus',
- href: 'https://docus.dev',
- },
- textLinks: [
- {
- text: 'Nuxt',
- href: 'https://nuxt.com',
- target: '_blank',
- rel: 'noopener'
- }
- ],
- iconLinks: [
- {
- label: 'NuxtJS',
- href: 'https://nuxtjs.org',
- component: 'IconNuxtLabs',
- },
- {
- label: 'Vue Telescope',
- href: 'https://vuetelescope.com',
- component: 'IconVueTelescope',
- },
- ],
- }
- }
-})
-```
-
-::
-
-| **Key** | **Type** | **Default** | **Description** |
-| ---------------------------- | ---------- | --------------------- | ---------------------------------------------------------------------------------------------------- |
-| `title` | `string` | Docus | Website title |
-| `titleTemplate` | `string` | Docus | Website title template |
-| `description` | `string` | My Docus Project | Website description |
-| `url` | `string` | | Website URL |
-| `layout` | `string` | default | Fallback layout to use (supports `default` or `page`) |
-| **Socials** | | | |
-| `socials` | `object` | `{}` | Social links |
-| `socials.github` | `string` | | The repository to use on GitHub links |
-| `socials.twitter` | `string` | | The account to use on Twitter links |
-| `socials.youtube` | `string` | | The channel to use on Youtube links |
-| `socials.instagram` | `string` | | The account to use on Instagram links |
-| `socials.facebook` | `string` | | The account to use on Facebook links |
-| `socials.medium` | `string` | | The account to use on Medium links |
-| `socials.[social]` | `object` | | Override social or display custom one |
-| `socials.[social].label` | `string` | | A label to use for the social |
-| `socials.[social].icon` | `string` | | A icon to use for the social |
-| `socials.[social].href` | `string` | | A link to use for the social |
-| `socials.[social].rel` | `string` | `noopener noreferrer` | A space-separated list of [link types](https://developer.mozilla.org/en-US/docs/Web/HTML/Link_types) |
-| **Header** | | | |
-| `header` | `object` | | Header configuration |
-| `header.logo` | `boolean` | | Whether or not to use `Logo.vue` as the header logo |
-| `header.title` | `string` | | If set to a string, will be used in the header |
-| `header.showLinkIcon` | `boolean` | | If set to `true` links icons will show in the header |
-| `header.exclude` | `string[]` | | An array of path to exclude out from the header navigation |
-| `header.fluid` | `boolean` | `true` | Make header `Container` fluid |
-| **Main** | | | |
-| `main` | `object` | | Main configuration |
-| `main.fluid` | `boolean` | `true` | Make main content `Container` fluid |
-| `main.padded` | `boolean` | `true` | Make main content `Container` padded |
-| **Aside** | | | |
-| `aside` | `object` | | Aside configuration |
-| `aside.level` | `string` | 0 | Aside base level of nesting |
-| `aside.collapsed` | `boolean` | | Will be used as default value for collapsible navigation categories |
-| `aside.exclude` | `string[]` | | An array of path to exclude out from the aside navigation |
-| **Footer** | | | |
-| `footer` | `object` | | Footer configuration |
-| `footer.credits` | `object` | | An object defining the bottom left credits |
-| `footer.credits.icon` | `object` | | The icon to use for the credits |
-| `footer.credits.text` | `object` | | The text to use for the credits |
-| `footer.textLinks` | `array` | `[]` | An array of texts to display at the center of footer |
-| `footer.textLinks[0].text` | `string` | | The text to display |
-| `footer.textLinks[0].href` | `string` | | A link to use for the text |
-| `footer.textLinks[0].target` | `string` | `_self` | Where to display the linked URL, as the name for a browsing context |
-| `footer.textLinks[0].rel` | `string` | `noopener noreferrer` | A space-separated list of [link types](https://developer.mozilla.org/en-US/docs/Web/HTML/Link_types) |
-| `footer.iconLinks` | `array` | `[]` | An array of icons to display in the footer |
-| `footer.iconLinks[0].label` | `string` | | A label to use for the icon |
-| `footer.iconLinks[0].href` | `string` | | A link to use for the icon |
-| `footer.iconLinks[0].icon` | `string` | | The icon to use (can be a component name) |
-| `footer.iconLinks[0].rel` | `string` | `noopener noreferrer` | A space-separated list of [link types](https://developer.mozilla.org/en-US/docs/Web/HTML/Link_types) |
-| `footer.fluid` | `boolean` | `true` | Make footer `Container` fluid |
-| **GitHub** | | | |
-| `github` | `object` | `false` | GitHub integration configuration |
-| `github.dir` | `string` | | Directory containing the files to be edited |
-| `github.branch` | `string` | | Branch to start editing |
-| `github.repo` | `string` | | Name of the GitHub repo to edit files |
-| `github.owner` | `string` | | Owner of the repo |
-| `github.edit` | `boolean` | | Toggle "Edit this page on Github" component on documentation pages |
-**Search** ||||
-| `fuse` | `object` || useFuse [options](https://vueuse.org/integrations/useFuse/) |
-
-
-## Customizing the logo
-
-To update the logo in the header, create a component in `components/Logo.vue` with your own logo.
-
-In this example, the image is located at `/public/img`.
-
-```vue [components/Logo.vue]
-
-
-
-```
diff --git a/docs/content/1.introduction/_dir.yml b/docs/content/1.introduction/_dir.yml
deleted file mode 100644
index ff0894d..0000000
--- a/docs/content/1.introduction/_dir.yml
+++ /dev/null
@@ -1,2 +0,0 @@
-icon: ph:star-duotone
-navigation.redirect: /introduction/getting-started
diff --git a/docs/content/2.api/1.components.md b/docs/content/2.api/1.components.md
deleted file mode 100644
index 74b17d8..0000000
--- a/docs/content/2.api/1.components.md
+++ /dev/null
@@ -1,693 +0,0 @@
-# Components
-
-Discover every component you can use in your content.
-
-
-## ``
-
-::code-group
-
- ::code-block{label="Preview" preview}
- ::alert{type="info" style="margin-top: 0;"}
- Check out an **info** alert with `code` and a [link](/).
- ::
-
- ::alert{type="success"}
- Check out a **success** alert with `code` and a [link](/).
- ::
-
- ::alert{type="warning"}
- Check out a **warning** alert with `code` and a [link](/).
- ::
-
- ::alert{type="danger" style="margin-bottom: 0;"}
- Check out a **danger** alert with `code` and a [link](/).
- ::
- ::
-
- ```md [Code]
- ::alert{type="info"}
- Check out an **info** alert with `code` and a [link](/).
- ::
-
- ::alert{type="success"}
- Check out a **success** alert with `code` and a [link](/).
- ::
-
- ::alert{type="warning"}
- Check out a **warning** alert with `code` and a [link](/).
- ::
-
- ::alert{type="danger"}
- Check out a **danger** alert with `code` and a [link](/).
- ::
- ```
-
-::
-
-
-
-::source-link
----
-source: "components/content/Alert.vue"
----
-::
-
----
-
-## ``
-
-`` support same types as ``.
-
-::code-group
-
- ::code-block{label="Preview" preview}
- ::div{style="display:flex; gap: 1rem;"}
- :badge[v1.2]
-
- :badge[Deprecated]{type="warning"}
-
- ::badge{type="danger"}
- Not found!
- ::
- ::
- ::
-
- ```md [Code]
- :badge[v1.2]
-
- :badge[Deprecated]{type="warning"}
-
- ::badge{type="danger"}
- Not found!
- ::
- ```
-
-::
-
-
-
-::source-link
----
-source: "components/content/Badge.vue"
----
-::
-
----
-
-## ``
-
-::code-group
-
- ::code-block{label="Preview"}
- ::block-hero
- ---
- cta:
- - Get started
- - /introduction/getting-started
- secondary:
- - Open on GitHub →
- - https://github.com/nuxtlabs/docus
- snippet: npx nuxi@latest init docus-app -t nuxtlabs/docus-starter
- ---
- #title
- Document-driven framework
-
- #description
- Docus reconciles content creators and developers by offering to both the best tools to create and scale content-based websites.
- ::
- ::
-
- ```md [Code]
- ::block-hero
- ---
- cta:
- - Get started
- - /get-started
- secondary:
- - Open on GitHub →
- - https://github.com/nuxtlabs/docus
- snippet: npx nuxi@latest init docus-app -t nuxtlabs/docus-starter
- ---
- #title
- Document-driven framework
-
- #description
- Docus reconciles content creators and developers by offering to both the best tools to create and scale content-based websites.
- ::
- ```
-
-::
-
-
-
-::source-link
----
-source: "components/content/BlockHero.vue"
----
-::
-
----
-
-## ``
-::code-group
-
- ::code-block{label="Preview" preview}
- :button-link[Play on StackBlitz]{icon="IconStackBlitz" href="https://stackblitz.com/github/nuxtlabs/docus-starter" blank}
- ::
-
- ```md [Code]
- :button-link[Play on StackBlitz]{icon="IconStackBlitz" href="https://stackblitz.com/github/nuxtlabs/docus-starter" blank}
- ```
-
-::
-
-
-
-::source-link
----
-source: "components/content/ButtonLink.vue"
----
-::
-
----
-
-## ``
-
-`` support same types as ``.
-
-::code-group
-
- ::code-block{label="Preview"}
- ::callout
- #summary
- This is a callout! Click me to open.
-
- #content
- This is the content of the callout.
- ::
-
- ::callout{type="warning"}
- #summary
- This is a callout! Click me to open.
-
- #content
- This is the content of the callout.
- ::
- ::
-
- ```md [Code]
- ::callout
- #summary
- This is a callout! Click me to open.
-
- #content
- This is the content of the callout.
- ::
-
- ::callout{type="warning"}
- #summary
- This is a callout! Click me to open.
-
- #content
- This is the content of the callout.
- ::
- ```
-
-::
-
-
-
-::source-link
----
-source: "components/content/Callout.vue"
----
-::
-
----
-
-## ``
-
-::code-group
-
- ::code-block{label="Preview"}
- ::card
- ---
- icon: logos:nuxt-icon
- ---
- #title
- Nuxt Architecture.
- #description
- Based on **Nuxt 3** and **Nuxt Content**. :br
- Use Nuxt to build a static site, or a serverless app.
- ::
- ::
-
- ```md [Code]
- ::card{icon="logos:nuxt-icon"}
- #title
- Nuxt Architecture.
- #description
- Based on **Nuxt 3** and **Nuxt Content**. :br
- Use Nuxt to build a static site, or a serverless app.
- ::
- ```
-
-::
-
-
-
-::source-link
----
-source: "components/content/Card.vue"
----
-::
-
----
-
-## ``
-
-::code-group
-
- ::code-block{label="Preview"}
- ::card-grid
- #title
- What's included?
-
- #root
- :ellipsis
-
- #default
- ::card
- #title
- Nuxt Architecture.
- #description
- Harness the full power of Nuxt and the Nuxt ecosystem.
- ::
- ::card
- #title
- Vue Components.
- #description
- Use built-in components (or your own!) inside your content.
- ::
- ::card
- #title
- Write Markdown.
- #description
- Enjoy the ease and simplicity of Markdown and discover MDC syntax.
- ::
- ::
- ::
-
- ```md [Code]
- ::card-grid
- #title
- What's included
-
- #root
- :ellipsis
-
- #default
- ::card
- #title
- Nuxt Architecture.
- #description
- Harness the full power of Nuxt and the Nuxt ecosystem.
- ::
- ::card
- #title
- Vue Components.
- #description
- Use built-in components (or your own!) inside your content.
- ::
- ::card
- #title
- Write Markdown.
- #description
- Enjoy the ease and simplicity of Markdown and discover MDC syntax.
- ::
- ::
- ```
-
-::
-
-
-
-::source-link
----
-source: "components/content/CardGrid.vue"
----
-::
-
----
-
-## ``
-
-This component uses `slots` to create a tab panel of your code examples or preview.
-
-::code-group
-
- ::code-block{label="Preview" preview}
- ::code-group
- ```bash [Yarn]
- yarn add docus
- ```
-
- ```bash [NPM]
- npm install docus
- ```
- ::
- ::
-
- ```md [Code]
- ::code-group
- ```bash [Yarn]
- yarn add docus
- ```
- ```bash [NPM]
- npm install docus
- ```
- ::
- ```
-
-::
-
-::source-link
----
-source: "components/content/CodeGroup.vue"
----
-::
-
----
-
-## ``
-
-To be used inside a `` component to display a preview of some rendered code.
-
-::code-group
-
-::code-block{label="Preview" preview}
- ::badge
- Hello World!
- ::
-::
-
-```md [Code]
-/* Added as a child of `` */
-
-::code-block{label="Preview" preview}
- ::badge
- Hello World!
- ::
-::
-```
-
-::
-
-
-
-::source-link
----
-source: "components/content/CodeBlock.vue"
----
-::
-
----
-
-## ``
-
-
-::code-group
-
-::code-block{label="Preview" preview}
- :copy-button{content="hey!"}
-::
-
-```md [Code]
-:copy-button{content="hey!"}
-```
-
-::
-
-
-
-::source-link
----
-source: "components/content/CopyButton.vue"
----
-::
-
----
-
-## ``
-
-Icon component gives you access to all **100,000+** icons from [icones.js.org](https://icones.js.org).
-
-::code-group
-
- ::code-block{label="Preview" preview}
- :icon{name="logos:nuxt-icon"}
- :icon{name="logos:vue"}
- :icon{name="logos:nuxt-icon"}
- ::
-
- ```md [Code]
- :icon{name="logos:nuxt-icon"}
- :icon{name="logos:vue"}
- :icon{name="logos:nuxt-icon"}
- ```
-
-::
-
-
-
-::source-link
----
-source: "components/content/Icon.vue"
----
-::
-
----
-
-## `
`
-
-::code-group
-
- ::code-block{label="Preview" preview}
- ::list{type="primary"}
- - **Important**
- - Always
- ::
-
- ::list{type="success"}
- - Amazing
- - Congrats
- ::
-
- ::list{type="info"}
- - Do you know?
- - You can also do this
- ::
-
- ::list{type="warning"}
- - Be careful
- - Use with precautions
- ::
-
- ::list{type="danger"}
- - Drinking too much
- - Driving drunk
- ::
-
- ::
-
- ```md [Code]
- ::list{type="primary"}
- - **Important**
- - Always
- ::
-
- ::list{type="success"}
- - Amazing
- - Congrats
- ::
-
- ::list{type="info"}
- - Do you know?
- - You can also do this
- ::
-
- ::list{type="warning"}
- - Be careful
- - Use with precautions
- ::
-
- ::list{type="danger"}
- - Drinking too much
- - Driving drunk
- ::
- ```
-
-::
-
-
-
-::source-link
----
-source: "components/content/List.vue"
----
-::
-
-
-## ``
-
-Embed CodeSandbox/StackBlitz easily in your documentation with great performances.
-
-Using the [IntersectionObserver](https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API) to load when visible in the viewport.
-
-::code-group
-
- ::code-block{label="Preview" preview}
- :sandbox{src="https://codesandbox.io/embed/nuxt-content-l164h?hidenavigation=1&theme=dark"}
- ::
-
- ```md [Code]
- :sandbox{src="https://codesandbox.io/embed/nuxt-content-l164h?hidenavigation=1&theme=dark"}
- ```
-
-::
-
-
-
-::source-link
----
-source: "components/content/Sandbox.vue"
----
-::
-
----
-
-## ``
-
-::code-group
-
- ::code-block{label="Preview" preview}
- :terminal{content="nuxi build"}
- ::
-
- ```md [Code]
- :terminal{content="nuxi build"}
- ```
-
-::
-
-
-
-::source-link
----
-source: "components/content/Terminal.vue"
----
-::
-
----
-
-## ``
-
-::code-group
-
- ::code-block{label="Preview" preview}
- ::div
- :video-player{src="https://www.youtube.com/watch?v=o9e12WbKrd8"}
- ::
- ::
-
- ```md [Code]
- ::div
- :video-player{src="https://www.youtube.com/watch?v=o9e12WbKrd8"}
- ::
- ```
-
-::
-
-
-
-::source-link
----
-source: "components/content/VideoPlayer.vue"
----
-::
diff --git a/docs/content/2.api/2.composables.md b/docs/content/2.api/2.composables.md
deleted file mode 100644
index 4c0bea2..0000000
--- a/docs/content/2.api/2.composables.md
+++ /dev/null
@@ -1,88 +0,0 @@
-# Composables
-
-Discover the Docus composables to use in your custom Vue components and pages.
-
-## `useDocus()`
-
-`useDocus()`{lang=ts} gives access to docus runtime config, all default values and your custom config from `app.config.ts`
-
-- `config` refers to the merged config of the current page.
-
-`main`, `header`, `aside`, `footer` and `titleTemplate` can be set from `_dir.yml` and any `page.md` file.
-
-The configs in `app.config` file will be used as defaults.
-
-```vue
-
-
-
-
-
{{ config.title }}
-
{{ config.description }}
-
-
-```
-
-- `tree` refers to the current navigation tree that is displayed in the `aside` component.
-
-```vue
-
-
-
-
-
-```
-
-::source-link
----
-source: "composables/useDocus.ts"
----
-::
-
-## `useMenu()`
-
-`useMenu()` gives access to `$menu` plugin controlling mobile navigation globally.
-
-```ts
-const {
- // Is menu visible
- visible,
- // Close menu function
- close,
- // Open menu function
- open,
- // Toggle menu function
- toggle
-} = useMenu()
-```
-
-::source-link
----
-source: "composables/useMenu.ts"
----
-::
-
-## `useScrollspy()`
-
-`useScrollspy()` is used in `docs` layout to make the ToC display the currently visible headings.
-
-```ts
-const {
- // Headings on the page
- visibleHeadings,
- // Active headings (for the current page)
- activeHeadings,
- // Update headings (an array of DOM nodes)
- updateHeadings
-} = useScrollspy()
-```
-
-::source-link
----
-source: "composables/useScrollspy.ts"
----
-::
diff --git a/docs/content/2.api/3.layouts.md b/docs/content/2.api/3.layouts.md
deleted file mode 100644
index 25dc458..0000000
--- a/docs/content/2.api/3.layouts.md
+++ /dev/null
@@ -1,43 +0,0 @@
-# Layouts
-Docus provides multiple built-in layouts for displaying your Markdown pages.
-
-## `default`
-
-The default layout for every page created in the project. This layout renders multiple section alongside the content:
-
-- Aside navigation menu (togglable with `aside: false/true`)
-- Page bottom section (togglable with `bottom: false/true`)
-- Table of content (togglable with `toc: false/true`)
-
-```md [index.md]
----
-aside: true
-bottom: true
-toc: false
----
-
-Your awesome content
-```
-
-Current page is live sample of default layout.
-
-## `page`
-
-`page` layout is content focused layout. This layout does not render aside menu of table of contents.
-
-
-This layout accept some configuration from content front-matter.
-
-- `fluid`: By setting `fluid: true` in content front-matter the content will be rendered in full width.
-- `constrainedClass`: Using this option you can modify layout container look. Like constraining layout width of changing the background.
-- `padded`: Setting `padded: true` in front-matter will add horizontal padding in the layout.
-
-```md [index.md]
----
-title: Home
-layout: page
-fluid: true
----
-```
-
-Check [Home page](/) as live sample of page layout
diff --git a/docs/content/2.api/_dir.yml b/docs/content/2.api/_dir.yml
deleted file mode 100644
index b340141..0000000
--- a/docs/content/2.api/_dir.yml
+++ /dev/null
@@ -1,2 +0,0 @@
-title: 'API'
-icon: heroicons-outline:bookmark-alt