-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
add development docs (mintlify) (#283)
- Loading branch information
Showing
26 changed files
with
4,713 additions
and
257 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
# Mintlify Starter Kit | ||
|
||
Click on `Use this template` to copy the Mintlify starter kit. The starter kit contains examples including | ||
|
||
- Guide pages | ||
- Navigation | ||
- Customizations | ||
- API Reference pages | ||
- Use of popular components | ||
|
||
### Development | ||
|
||
Install the [Mintlify CLI](https://www.npmjs.com/package/mintlify) to preview the documentation changes locally. To install, use the following command | ||
|
||
``` | ||
npm i -g mintlify | ||
``` | ||
|
||
Run the following command at the root of your documentation (where mint.json is) | ||
|
||
``` | ||
mintlify dev | ||
``` | ||
|
||
### Publishing Changes | ||
|
||
Install our Github App to auto propagate changes from your repo to your deployment. Changes will be deployed to production automatically after pushing to the default branch. Find the link to install on your dashboard. | ||
|
||
#### Troubleshooting | ||
|
||
- Mintlify dev isn't running - Run `mintlify install` it'll re-install dependencies. | ||
- Page loads as a 404 - Make sure you are running in a folder with `mint.json` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
--- | ||
title: 'Create Plant' | ||
openapi: 'POST /plants' | ||
--- |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
--- | ||
title: 'Delete Plant' | ||
openapi: 'DELETE /plants/{id}' | ||
--- |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
--- | ||
title: 'Get Plants' | ||
openapi: 'GET /plants' | ||
--- |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
--- | ||
title: 'Introduction' | ||
description: 'Example section for showcasing API endpoints' | ||
--- | ||
|
||
<Note> | ||
If you're not looking to build API reference documentation, you can delete | ||
this section by removing the api-reference folder. | ||
</Note> | ||
|
||
## Welcome | ||
|
||
There are two ways to build API documentation: [OpenAPI](https://mintlify.com/docs/api-playground/openapi/setup) and [MDX components](https://mintlify.com/docs/api-playground/mdx/configuration). For the starter kit, we are using the following OpenAPI specification. | ||
|
||
<Card | ||
title="Plant Store Endpoints" | ||
icon="leaf" | ||
href="https://github.com/mintlify/starter/blob/main/api-reference/openapi.json" | ||
> | ||
View the OpenAPI specification file | ||
</Card> | ||
|
||
## Authentication | ||
|
||
All API endpoints are authenticated using Bearer tokens and picked up from the specification file. | ||
|
||
```json | ||
"security": [ | ||
{ | ||
"bearerAuth": [] | ||
} | ||
] | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,188 @@ | ||
{ | ||
"openapi": "3.0.1", | ||
"info": { | ||
"title": "OpenAPI Plant Store", | ||
"description": "A sample API that uses a plant store as an example to demonstrate features in the OpenAPI specification", | ||
"license": { | ||
"name": "MIT" | ||
}, | ||
"version": "1.0.0" | ||
}, | ||
"servers": [ | ||
{ | ||
"url": "http://sandbox.mintlify.com" | ||
} | ||
], | ||
"security": [ | ||
{ | ||
"bearerAuth": [] | ||
} | ||
], | ||
"paths": { | ||
"/plants": { | ||
"get": { | ||
"description": "Returns all plants from the system that the user has access to", | ||
"parameters": [ | ||
{ | ||
"name": "limit", | ||
"in": "query", | ||
"description": "The maximum number of results to return", | ||
"schema": { | ||
"type": "integer", | ||
"format": "int32" | ||
} | ||
} | ||
], | ||
"responses": { | ||
"200": { | ||
"description": "Plant response", | ||
"content": { | ||
"application/json": { | ||
"schema": { | ||
"type": "array", | ||
"items": { | ||
"$ref": "#/components/schemas/Plant" | ||
} | ||
} | ||
} | ||
} | ||
}, | ||
"400": { | ||
"description": "Unexpected error", | ||
"content": { | ||
"application/json": { | ||
"schema": { | ||
"$ref": "#/components/schemas/Error" | ||
} | ||
} | ||
} | ||
} | ||
} | ||
}, | ||
"post": { | ||
"description": "Creates a new plant in the store", | ||
"requestBody": { | ||
"description": "Plant to add to the store", | ||
"content": { | ||
"application/json": { | ||
"schema": { | ||
"$ref": "#/components/schemas/NewPlant" | ||
} | ||
} | ||
}, | ||
"required": true | ||
}, | ||
"responses": { | ||
"200": { | ||
"description": "plant response", | ||
"content": { | ||
"application/json": { | ||
"schema": { | ||
"$ref": "#/components/schemas/Plant" | ||
} | ||
} | ||
} | ||
}, | ||
"400": { | ||
"description": "unexpected error", | ||
"content": { | ||
"application/json": { | ||
"schema": { | ||
"$ref": "#/components/schemas/Error" | ||
} | ||
} | ||
} | ||
} | ||
} | ||
} | ||
}, | ||
"/plants/{id}": { | ||
"delete": { | ||
"description": "Deletes a single plant based on the ID supplied", | ||
"parameters": [ | ||
{ | ||
"name": "id", | ||
"in": "path", | ||
"description": "ID of plant to delete", | ||
"required": true, | ||
"schema": { | ||
"type": "integer", | ||
"format": "int64" | ||
} | ||
} | ||
], | ||
"responses": { | ||
"204": { | ||
"description": "Plant deleted", | ||
"content": {} | ||
}, | ||
"400": { | ||
"description": "unexpected error", | ||
"content": { | ||
"application/json": { | ||
"schema": { | ||
"$ref": "#/components/schemas/Error" | ||
} | ||
} | ||
} | ||
} | ||
} | ||
} | ||
} | ||
}, | ||
"components": { | ||
"schemas": { | ||
"Plant": { | ||
"required": ["name"], | ||
"type": "object", | ||
"properties": { | ||
"name": { | ||
"description": "The name of the plant", | ||
"type": "string" | ||
}, | ||
"tag": { | ||
"description": "Tag to specify the type", | ||
"type": "string" | ||
} | ||
} | ||
}, | ||
"NewPlant": { | ||
"allOf": [ | ||
{ | ||
"$ref": "#/components/schemas/Plant" | ||
}, | ||
{ | ||
"required": ["id"], | ||
"type": "object", | ||
"properties": { | ||
"id": { | ||
"description": "Identification number of the plant", | ||
"type": "integer", | ||
"format": "int64" | ||
} | ||
} | ||
} | ||
] | ||
}, | ||
"Error": { | ||
"required": ["error", "message"], | ||
"type": "object", | ||
"properties": { | ||
"error": { | ||
"type": "integer", | ||
"format": "int32" | ||
}, | ||
"message": { | ||
"type": "string" | ||
} | ||
} | ||
} | ||
}, | ||
"securitySchemes": { | ||
"bearerAuth": { | ||
"type": "http", | ||
"scheme": "bearer" | ||
} | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,98 @@ | ||
--- | ||
title: 'Development' | ||
description: 'Learn how to preview changes locally' | ||
--- | ||
|
||
<Info> | ||
**Prerequisite** You should have installed Node.js (version 18.10.0 or | ||
higher). | ||
</Info> | ||
|
||
Step 1. Install Mintlify on your OS: | ||
|
||
<CodeGroup> | ||
|
||
```bash npm | ||
npm i -g mintlify | ||
``` | ||
|
||
```bash yarn | ||
yarn global add mintlify | ||
``` | ||
|
||
</CodeGroup> | ||
|
||
Step 2. Go to the docs are located (where you can find `mint.json`) and run the following command: | ||
|
||
```bash | ||
mintlify dev | ||
``` | ||
|
||
The documentation website is now available at `http://localhost:3000`. | ||
|
||
### Custom Ports | ||
|
||
Mintlify uses port 3000 by default. You can use the `--port` flag to customize the port Mintlify runs on. For example, use this command to run in port 3333: | ||
|
||
```bash | ||
mintlify dev --port 3333 | ||
``` | ||
|
||
You will see an error like this if you try to run Mintlify in a port that's already taken: | ||
|
||
```md | ||
Error: listen EADDRINUSE: address already in use :::3000 | ||
``` | ||
|
||
## Mintlify Versions | ||
|
||
Each CLI is linked to a specific version of Mintlify. Please update the CLI if your local website looks different than production. | ||
|
||
<CodeGroup> | ||
|
||
```bash npm | ||
npm i -g mintlify@latest | ||
``` | ||
|
||
```bash yarn | ||
yarn global upgrade mintlify | ||
``` | ||
|
||
</CodeGroup> | ||
|
||
## Deployment | ||
|
||
<Tip> | ||
Unlimited editors available under the [Startup | ||
Plan](https://mintlify.com/pricing) | ||
</Tip> | ||
|
||
You should see the following if the deploy successfully went through: | ||
|
||
<Frame> | ||
<img src="/images/checks-passed.png" style={{ borderRadius: '0.5rem' }} /> | ||
</Frame> | ||
|
||
## Troubleshooting | ||
|
||
Here's how to solve some common problems when working with the CLI. | ||
|
||
<AccordionGroup> | ||
<Accordion title="Mintlify is not loading"> | ||
Update to Node v18. Run `mintlify install` and try again. | ||
</Accordion> | ||
<Accordion title="No such file or directory on Windows"> | ||
Go to the `C:/Users/Username/.mintlify/` directory and remove the `mint` | ||
folder. Then Open the Git Bash in this location and run `git clone | ||
https://github.com/mintlify/mint.git`. | ||
|
||
Repeat step 3. | ||
|
||
</Accordion> | ||
<Accordion title="Getting an unknown error"> | ||
Try navigating to the root of your device and delete the ~/.mintlify folder. | ||
Then run `mintlify dev` again. | ||
</Accordion> | ||
</AccordionGroup> | ||
|
||
Curious about what changed in a CLI version? [Check out the CLI changelog.](/changelog/command-line) |
Oops, something went wrong.