Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
267 changes: 121 additions & 146 deletions quickstart.mdx
Original file line number Diff line number Diff line change
@@ -1,251 +1,226 @@
---
title: "Quickstart"
description: "Deploy your documentation in minutes"
description: "Get your documentation site live in under 10 minutes"
icon: "rocket"
---

This quickstart guide shows you how to set up and deploy your documentation site in minutes.

After completing this guide, you will have a live documentation site ready to customize and expand.
Build and deploy beautiful documentation in minutes. This guide walks you through creating your first documentation site from setup to deployment.

<Info>

**Prerequisites**: Before you begin, [create an account](https://mintlify.com/start) and complete onboarding.

**Before you start**: You'll need a [Mintlify account](https://mintlify.com/start). The onboarding process creates your first project automatically.
</Info>

## Getting started
## Your site is already live

After you complete the onboarding process, your documentation site automatically deploys to a unique URL with this format:
Once you complete onboarding, your documentation site is automatically deployed at:

```
https://<your-project-name>.mintlify.app
```

Find your URL on the Overview page of your [dashboard](https://dashboard.mintlify.com/).
You can find this URL on your [dashboard overview](https://dashboard.mintlify.com/).

<Frame>
<img src="/images/quickstart/mintlify-domain-light.png" alt="Mintlify Domain" className="block dark:hidden" />
<img src="/images/quickstart/mintlify-domain-dark.png" alt="Mintlify Domain" className="hidden dark:block" />
</Frame>

Your site's URL is available immediately. Use this URL for testing and sharing with your team while you are setting up your docs site.
## Connect your GitHub repository

### Install the GitHub App

Mintlify provides a GitHub App that automates deployment when you push changes to your repository.
Link your GitHub repository to enable automatic deployments when you push changes.

Install the GitHub App by following the instructions from the onboarding checklist or your dashboard.
### Install the GitHub App

1. Navigate to **Settings** in your Mintlify dashboard.
2. Select **GitHub App** from the sidebar.
3. Select **Install GitHub App**. This opens a new tab to the GitHub App installation page.
4. Select the organization or user account where you want to install the app.
5. Select the repositories that you want to connect.
1. Go to **Settings** → **GitHub App** in your dashboard
2. Click **Install GitHub App**
3. Select your organization and repositories
4. Complete the installation

<Frame>
<img src="/images/quickstart/github-app-installation-light.png" alt="GitHub App Installation" className="block dark:hidden" />
<img src="/images/quickstart/github-app-installation-dark.png" alt="GitHub App Installation" className="hidden dark:block" />
</Frame>

<Info>
Update the GitHub App permissions if you move your documentation to a different repository.
</Info>

### Authorize your GitHub account
### Authorize your account

1. Navigate to **Settings** in your Mintlify dashboard.
2. Select **My Profile** from the sidebar.
3. Select **Authorize GitHub account**. This opens a new tab to the GitHub authorization page.
1. Navigate to **Settings** → **My Profile**
2. Click **Authorize GitHub account**
3. Complete the authorization process

<Info>
An admin for your GitHub organization may need to authorize your account depending on your organization settings.
</Info>

## Editing workflows
<Tip>
Organization admins may need to approve the authorization depending on your GitHub settings.
</Tip>

Mintlify offers two workflows for creating and maintaining your documentation:
## Choose your editing workflow

<Card title="Code-based workflow" icon="terminal" horizontal href="#code-based-workflow">
For users who prefer working with existing tools in their local environment. Click to jump to this section.
</Card>
Pick the workflow that matches your team's preferences:

<Card title="Web editor workflow" icon="mouse-pointer-2" horizontal href="#web-editor-workflow">
For users who prefer a visual interface in their web browser. Click to jump to this section.
</Card>
<CardGroup cols={2}>
<Card title="Local development" icon="terminal" href="#local-development">
Edit files locally with your favorite tools and Git workflow
</Card>
<Card title="Web editor" icon="mouse-pointer-2" href="#web-editor">
Visual editing directly in your browser with instant previews
</Card>
</CardGroup>

## Code-based workflow
## Local development

The code-based workflow integrates with your existing development environment and Git repositories. This workflow is best for technical teams who want to manage documentation alongside code.
Perfect for developers who want to integrate documentation into their existing workflow.

### Install the CLI

To work locally with your documentation, install the Command Line Interface (CLI), called [mint](https://www.npmjs.com/package/mint), by running this command in your terminal:
Install the Mintlify CLI to work with your documentation locally:

<CodeGroup>
```bash npm
npm i -g mint
```
```bash npm
npm i -g mint
```

```bash pnpm
pnpm add -g mint
```
```bash pnpm
pnpm add -g mint
```
</CodeGroup>

<Info>
You need Node.js installed on your machine. If you encounter installation issues, check the troubleshooting guide.
</Info>
<Warning>
Requires Node.js v19 or higher. Check your version with `node --version`.
</Warning>

### Edit the documentation
### Make your first edit

After setting up your environment, you can start editing your documentation files. For example, update the title of the introduction page:
Let's update your homepage title:

1. Open your repository created during onboarding.
2. Open `index.mdx` and locate the top of the file:
1. Open your documentation repository
2. Edit `index.mdx` and change the title:

```mdx index.mdx
---
title: "Introduction"
description: "This is the introduction to the documentation"
---
```

3. Update the `title` field to `"Hello World"`.

```mdx index.mdx {2}
---
title: "Hello World"
title: "Welcome to our docs" // [!code ++]
title: "Introduction" // [!code --]
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Bug: Invalid YAML Syntax in Quickstart Guide

The YAML frontmatter example in the quickstart guide contains invalid syntax. It includes duplicate title keys and uses // for comments, which is not valid YAML. Copying this example would lead to YAML parsing errors and broken frontmatter.

Fix in Cursor Fix in Web

description: "This is the introduction to the documentation"
---
```

### Preview the changes
### Preview locally

To preview the changes locally, run the following command:
Start the development server to see your changes:

```bash
mint dev
```

Your preview will be available at `localhost:3000`.
Your site will be available at `http://localhost:3000`.

<Frame>
<img src="/images/quickstart/mintlify-dev-light.png" alt="Mintlify Dev" className="block dark:hidden" />
<img src="/images/quickstart/mintlify-dev-dark.png" alt="Mintlify Dev" className="hidden dark:block" />
<img src="/images/quickstart/mintlify-dev-light.png" alt="Local development preview" className="block dark:hidden" />
<img src="/images/quickstart/mintlify-dev-dark.png" alt="Local development preview" className="hidden dark:block" />
</Frame>

### Push the changes
### Deploy your changes

When you are ready to publish your changes, push them to your repository.
Push your changes to GitHub. Mintlify automatically builds and deploys your updates.

Mintlify automatically detects the changes, builds your documentation, and deploys the updates to your site. Monitor the deployment status in your GitHub repository commit history or the [dashboard](https://dashboard.mintlify.com).

After the deployment completes, your latest update will be available at `<your-project-name>.mintlify.app`.

<Card title="Jump to adding a custom domain" icon="arrow-down" href="#adding-a-custom-domain" horizontal>
Optionally, skip the web editor workflow and jump to adding a custom domain.
</Card>
```bash
git add .
git commit -m "Update homepage title"
git push origin main
```

## Web editor workflow
Monitor deployment status in your GitHub repository or the Mintlify dashboard.

The web editor workflow provides a what-you-see-is-what-you-get (WYSIWYG) interface for creating and editing documentation. This workflow is best for people who want to work in their web browser without additional local development tools.
## Web editor

### Access the web editor
Ideal for content creators who prefer visual editing without technical setup.

1. Log in to your [dashboard](https://dashboard.mintlify.com).
2. Select **Editor** on the left sidebar.
### Access the editor

<Info>
If you have not installed the GitHub App, you will be prompted to install the app when you open the web editor.
</Info>
1. Open your [Mintlify dashboard](https://dashboard.mintlify.com)
2. Click **Editor** in the sidebar

<Frame>
<img alt="The Mintlify web editor in the visual editor mode" src="/images/quickstart/web-editor-light.png" className="block dark:hidden" />
<img alt="The Mintlify web editor in the visual editor mode" src="/images/quickstart/web-editor-dark.png" className="hidden dark:block" />
<img alt="Mintlify web editor interface" src="/images/quickstart/web-editor-light.png" className="block dark:hidden" />
<img alt="Mintlify web editor interface" src="/images/quickstart/web-editor-dark.png" className="hidden dark:block" />
</Frame>

### Edit the documentation

In the web editor, you can navigate through your documentation files in the sidebar. Let's update the introduction page:

Find and select `index.mdx` in the file explorer.
### Edit your content

Then, in the editor, update the title field to "Hello World".
1. Select `index.mdx` from the file explorer
2. Update the title field to "Welcome to our docs"
3. Use the rich text editor or switch to markdown mode

<Frame>
<img alt="Editing in Web Editor" src="/images/quickstart/web-editor-editing-light.png" className="block dark:hidden" />
<img alt="Editing in Web Editor" src="/images/quickstart/web-editor-editing-dark.png" className="hidden dark:block" />
<img alt="Editing content in the web editor" src="/images/quickstart/web-editor-editing-light.png" className="block dark:hidden" />
<img alt="Editing content in the web editor" src="/images/quickstart/web-editor-editing-dark.png" className="hidden dark:block" />
</Frame>

<Tip>
The editor provides a rich set of formatting tools and components. Type <kbd>/</kbd> in the editor to open the command menu and access these tools.
Press `/` to open the command menu and access formatting tools, components, and shortcuts.
</Tip>

### Publish your changes
### Publish instantly

When you're satisfied with your edits, select the **Publish** button in the top-right corner. Your changes are immediately deployed to your documentation site.
Click **Publish** in the top-right corner. Your changes go live immediately.

<Tip>
Use branches to preview and review changes through pull requests before deploying to your live site.
</Tip>

For more details about using the web editor, including using branches and pull requests to collaborate and preview changes, see our [web editor documentation](/editor/getting-started).
<Info>
Use branches for collaborative editing and review workflows. Learn more in our [web editor guide](/editor/getting-started).
</Info>

## Adding a custom domain
## Add a custom domain

While your `<your-project-name>.mintlify.app` subdomain works well for testing and development, most teams prefer using a custom domain for production documentation.
Replace your `.mintlify.app` subdomain with your own domain for a professional look.

To add a custom domain, navigate to the [Domain Setup](https://dashboard.mintlify.com/settings/deployment/custom-domain) page in your dashboard.
1. Go to **Settings** → **Custom Domain** in your dashboard
2. Enter your domain (e.g., `docs.yourcompany.com`)
3. Add the CNAME record to your DNS provider:

<Frame>
<img src="/images/quickstart/custom-domain-light.png" alt="Custom Domain" className="block dark:hidden" />
<img src="/images/quickstart/custom-domain-dark.png" alt="Custom Domain" className="hidden dark:block" />
<img src="/images/quickstart/custom-domain-light.png" alt="Custom domain setup" className="block dark:hidden" />
<img src="/images/quickstart/custom-domain-dark.png" alt="Custom domain setup" className="hidden dark:block" />
</Frame>

Enter your domain (for example, `docs.yourcompany.com`) and follow the provided instructions to configure DNS settings with your domain provider.

<Table>
| Record Type | Name | Value | TTL |
|-------------|------|-------|-----|
| CNAME | docs (or subdomain) | cname.mintlify.app | 3600 |
</Table>
| CNAME | docs | cname.mintlify.app | 3600 |

<Info>
DNS changes can take up to 48 hours to propagate, though changes often complete much sooner.
</Info>
<Warning>
DNS changes can take up to 48 hours to propagate globally.
</Warning>

## Next steps
## What's next?

Congratulations! You have successfully deployed your documentation site with Mintlify. Here are suggested next steps to enhance your documentation:
Your documentation site is live! Here's how to make it even better:

<Card title="Configure your global settings" icon="settings" href="settings" horizontal>
Configure site-wide styling, navigation, integrations, and more with the `docs.json` file.
</Card>
<Card title="Customize your theme" icon="paintbrush" href="themes" horizontal>
Learn how to customize colors, fonts, and the overall appearance of your documentation site.
</Card>
<Card title="Organize navigation" icon="map" href="navigation" horizontal>
Structure your documentation with intuitive navigation to help users find what they need.
</Card>
<Card title="Add interactive components" icon="puzzle" href="/components/accordions" horizontal>
Enhance your documentation with interactive components like accordions, tabs, and code samples.
</Card>
<Card title="Set up API references" icon="code" href="/api-playground/overview" horizontal>
Create interactive API references with OpenAPI and AsyncAPI specifications.
</Card>
<CardGroup cols={2}>
<Card title="Customize your theme" icon="paintbrush" href="/themes">
Brand your docs with custom colors, fonts, and styling
</Card>
<Card title="Structure navigation" icon="map" href="/navigation">
Organize pages with groups, tabs, and hierarchical navigation
</Card>
<Card title="Add components" icon="puzzle" href="/components/accordions">
Enhance content with interactive elements and rich media
</Card>
<Card title="API documentation" icon="code" href="/api-playground/overview">
Generate interactive API references from OpenAPI specs
</Card>
</CardGroup>

## Troubleshooting

If you encounter issues during the setup process, check these common troubleshooting solutions:
## Need help?

<AccordionGroup>
<Accordion title="Local preview not working">
Make sure you have Node.js v19+ installed and that you run the `mint dev` command from the directory containing your `docs.json` file.
<Accordion title="Local preview isn't working">
Ensure you have Node.js v19+ and run `mint dev` from your project root directory containing `docs.json`.
</Accordion>

<Accordion title="Changes aren't appearing on my live site">
Check your GitHub Actions tab for build errors. Deployments typically take 1-3 minutes.
</Accordion>
<Accordion title="Changes not reflecting on live site">
Deployment can take upwards to a few minutes. Check your GitHub Actions (for code-based workflow) or deployment logs in the Mintlify dashboard to ensure there are no build errors.

<Accordion title="Custom domain won't connect">
Verify your CNAME record is correct and allow time for DNS propagation. Use [DNSChecker](https://dnschecker.org) to verify.
</Accordion>
<Accordion title="Custom domain not connecting">
Verify that your DNS records are set up correctly and allow sufficient time for DNS propagation (up to 48 hours). You can use tools like [DNSChecker](https://dnschecker.org) to verify your CNAME record.

<Accordion title="Still stuck?">
Contact our support team through the dashboard or check our [troubleshooting guides](/contact-support).
</Accordion>
</AccordionGroup>
</AccordionGroup>