arxiv-sanity.com Documentation

Official TypeScript developer resources and documentation for dipakkr/arxiv-sanity.com. Verified technical context for AI.

0 stars TypeScript TypeScript 1 file ยท ~9,656 tokens
RAW Doc

1. Project Overview & Quickstart (dipakkr/arxiv-sanity.com)

1. Project Overview & Quickstart (dipakkr/arxiv-sanity.com)

1. Project Overview & Quickstart (dipakkr/arxiv-sanity.com)

arxiv-sanity.com

Open-source repository dipakkr/arxiv-sanity.com

Repository Details

Note: High-volume repository documentation is actively indexed and synchronized by YakaAI.

2. Official Technical Reference & Guides (dipakkr/docs)

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 to preview the documentation changes locally. To install, use the following command

text
npm i mintlify

Run the following command at the root of your documentation (where mint.json is)

text
mintlify dev

Publishing Changes

Install our Github App to autopropagate changes from youre 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

2. Official Technical Reference & Guides (dipakkr/docs)

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 to preview the documentation changes locally. To install, use the following command

text
npm i mintlify

Run the following command at the root of your documentation (where mint.json is)

text
mintlify dev

Publishing Changes

Install our Github App to autopropagate changes from youre 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

2. Official Technical Reference & Guides (dipakkr/docs)

File: README.md

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 to preview the documentation changes locally. To install, use the following command

text
npm i -g mintlify

Run the following command at the root of your documentation (where mint.json is)

text
mintlify dev

Publishing Changes

Install our Github App to autopropagate changes from youre 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

File: development.mdx


title: 'Development'

Prerequisite You should have installed Node.js (version 18.10.0 or
higher).

Step 1. Install Mintlify on your OS:

bash npm
npm i -g mintlify
bash yarn
yarn global add mintlify

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.

bash npm
npm i -g mintlify@latest
bash yarn
yarn global upgrade mintlify

Deployment

Unlimited editors available under the [Startup Plan](https://mintlify.com/pricing)

You should see the following if the deploy successfully went through:

Troubleshooting

Here's how to solve some common problems when working with the CLI.

Update to Node v18. Run `mintlify install` and try again. 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.

Try navigating to the root of your device and delete the ~/.mintlify folder. Then run `mintlify dev` again.

Curious about what changed in a CLI version? Check out the CLI changelog.


File: introduction.mdx


title: Introduction

Setting up

The first step to world-class documentation is setting up your editing environnments.

Get your docs set up locally for easy development Preview your changes before you push to make sure they're perfect

Make it yours

Update your docs to your brand and add valuable content for the best user conversion.

Customize your docs to your company's colors and brands Automatically generate endpoints from an OpenAPI spec Build interactive features and designs to guide your users Check out our showcase of our favorite documentation

File: mint.json

{
"$schema": "https://mintlify.com/schema.json",
"name": "Starter Kit",
"logo": {
"dark": "/logo/dark.svg",
"light": "/logo/light.svg"
},
"favicon": "/favicon.png",
"colors": {
"primary": "#9563FF",
"light": "#AE87FF",
"dark": "#0D001D",
"background": {
"dark": "#090014"
},
"anchors": {
"from": "#FF7F57",
"to": "#9563FF"
}
},
"topbarLinks": [
{
"name": "Support",
"url": "mailto:[email protected]"
}
],
"topbarCtaButton": {
"name": "Dashboard",
"url": "https://dashboard.mintlify.com"
},
"tabs": [
{
"name": "API Reference",
"url": "api-reference"
}
],
"anchors": [
{
"name": "Documentation",
"icon": "book-open-cover",
"url": "https://mintlify.com/docs"
},
{
"name": "Community",
"icon": "slack",
"url": "https://mintlify.com/community"
},
{
"name": "Blog",
"icon": "newspaper",
"url": "https://mintlify.com/blog"
}
],
"navigation": [
{
"group": "Get Started",
"pages": ["introduction", "quickstart", "development"]
},
{
"group": "Essentials",
"pages": ["essentials/markdown", "essentials/code", "essentials/images", "essentials/settings", "essentials/navigation"]
},
{
"group": "API Documentation",
"pages": ["api-reference/authentication"]
},
{
"group": "Endpoint Examples",
"pages": [
"api-reference/endpoint/get",
"api-reference/endpoint/create",
"api-reference/endpoint/update",
"api-reference/endpoint/delete"
]
}
],
"footerSocials": {
"twitter": "https://twitter.com/mintlify",
"github": "https://github.com/mintlify",
"linkedin": "https://www.linkedin.com/company/mintsearch"
}
}


File: quickstart.mdx


title: 'Quickstart'

Setup your development

Learn how to update your docs locally and and deploy them to the public.

Edit and preview

During the onboarding process, we created a repository on your Github with your docs content. You can find this repository on our [dashboard](https://dashboard.mintlify.com). To clone the repository locally, follow these [instructions](https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository) in your terminal. Previewing helps you make sure your changes look as intended. We built a command line interface to render these changes locally. 1. Install the [Mintlify CLI](https://www.npmjs.com/package/mintlify) to preview the documentation changes locally with this command: ``` npm i -g mintlify ``` 2. Run the following command at the root of your documentation (where `mint.json` is): ``` mintlify dev ```

Deploy your changes

Our Github app automatically deploys your changes to your docs site, so you don't need to manage deployments yourself. You can find the link to install on your [dashboard](https://dashboard.mintlify.com). Once the bot has been successfully installed, there should be a check mark next to the commit hash of the repo. [Commit and push your changes to Git](https://docs.github.com/en/get-started/using-git/pushing-commits-to-a-remote-repository#about-git-push) for your changes to update in your docs site. If you push and don't see that the Github app successfully deployed your changes, you can also manually update your docs through our [dashboard](https://dashboard.mintlify.com).

Update your docs

Add content directly in your files with MDX syntax and React components. You can use any of our components, or even build your own.

Add flair to your docs with personalized branding.

<Card
title="Add API Endpoints"
icon="square-code"
href="/api-playground/configuration"

Implement your OpenAPI spec and enable API user interaction.

<Card
title="Integrate Analytics"
icon="chart-mixed"
href="/analytics/supported-integrations"

Draw insights from user interactions with your documentation.

<Card
title="Host on a Custom Domain"
icon="browser"
href="/settings/custom-domain/subdomain"

Keep your docs on your own website's subdomain.


File: _snippets/snippet-example.mdx

My Snippet

This is an example of a reusable snippet


File: api-reference/authentication.mdx


title: "Authentication"

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas et eros iaculis tortor dapibus cursus. Curabitur quis sapien nec tortor dictum gravida.

bash
'Authorization': 'Token <team_token>'

API Tokens

Nullam convallis mauris at nunc consectetur, ac imperdiet leo rutrum. Maecenas cursus purus a pellentesque blandit. Pellentesque vitae lacinia libero, non mollis metus.

Nam id ullamcorper urna, at rutrum enim. Maecenas vulputate vehicula libero, vitae sodales augue pretium nec. Quisque a magna tempor, semper risus vel, fermentum nunc. Pellentesque fermentum interdum ex, eu convallis massa blandit sed. Aliquam bibendum ipsum vel laoreet auctor.

Permissions

Etiam lobortis ut odio ut fermentum. Nunc odio velit, sollicitudin at consectetur id, tristique eget turpis. Aliquam at risus vitae dolor sodales venenatis. In hac habitasse platea dictumst.

Aenean consequat diam eget mollis fermentum. Quisque eu malesuada felis, non dignissim libero.


File: api-reference/endpoint/create.mdx


title: "Create User" api: "POST https://api.mintlify.com/api/user"

Body

This is the current user group token you have for the user group that you want
to rotate.

Response

Indicates whether the call was successful. 1 if successful, 0 if not.

The contents of the user group

This is the internal ID for this user group. You don't need to record this information, since you will not need to use it. This is the user group token (userGroupToken or USER_GROUP_TOKEN) that will be used to identify which user group is viewing the dashboard. You should save this on your end to use when rendering an embedded dashboard. This is the name of the user group provided in the request body. This is the user_group_id provided in the request body. This is the environment tag of the user group. Possible values are 'Customer' and 'Testing'. User group id's must be unique to each environment, so you can not create multiple user groups with with same id. If you have a production customer and a test user group with the same id, you will be required to label one as 'Customer' and another as 'Testing'
bash example request
curl --location --request POST 'https://api.mintlify.com/api/user' \
--header 'Content-Type: application/json' \
--header 'Authorization: Token <token>' \
--data-raw '{
    "current_token": ""
}'
json response
{
  "success": 1,
  "user_group": {
    "team_id": 3,
    "token": "<user_group_token_to_auth_dashboard>",
    "name": "Example 1",
    "provided_id": "example_1"
  }
}

File: api-reference/endpoint/delete.mdx


title: "Delete User" api: "DELETE https://api.mintlify.com/api/user"

Body

The data source ID provided in the data tab may be used to identify the data
source for the user group

This is the current user group token you have for the user group you want to
delete

Response

Indicates whether the call was successful. 1 if successful, 0 if not.
bash example request
curl --location --request DELETE 'https://api.mintlify.com/api/user' \
--header 'Content-Type: application/json' \
--header 'Authorization: Token <token>' \
--data-raw '{
		"user_group_id": "example_1"
		"current_token": "abcdef"
}'
json response
{
  "success": 1
}

File: api-reference/endpoint/get.mdx


title: "Get User" api: "GET https://api.mintlify.com/api/user"

Body

This is the name of the user group.

This is the ID you use to identify this user group in your database.

This is a JSON mapping of schema id to either the data source that this user group should be
associated with or id of the datasource you provided when creating it.

This is a JSON object for properties assigned to this user group. These will be accessible through
variables in the dashboards and SQL editor

Response

Indicates whether the call was successful. 1 if successful, 0 if not. Indicates whether a new user group was created.

The contents of the user group

This is the internal ID for this user group. You don't need to record this information, since you will not need to use it. This is the user group token (userGroupToken or USER_GROUP_TOKEN) that will be used to identify which user group is viewing the dashboard. You should save this on your end to use when rendering an embedded dashboard. This is the name of the user group provided in the request body. This is the user_group_id provided in the request body. This is the properties object if it was provided in the request body
bash example request
curl --location --request GET 'https://api.mintlify.com/api/user' \
--header 'Content-Type: application/json' \
--header 'Authorization: Token <token>' \
--data-raw '{
    "user_group_id": "example_1",
    "name": "Example 1",
    "mapping": {"40": "213", "134": "386"},
    "properties": {"filterValue": "value"}
}'
json response
{
  "success": 1,
  "new_user_group": true,
  "user_group": {
    "team_id": 3,
    "token": "<user_group_token_to_auth_dashboard>",
    "name": "Example 1",
    "provided_id": "example_1"
  }
}

File: api-reference/endpoint/update.mdx


title: "Update User" api: "PUT https://api.mintlify.com/api/user"

Body

This is the name of the user group.

This is the ID you use to identify this user group in your database.

This is a JSON mapping of schema id to either the data source that this user
group should be associated with or id of the datasource you provided when
creating it.

This is a JSON object for properties assigned to this user group. These will
be accessible through variables in the dashboards and SQL editor

Response

Indicates whether the call was successful. 1 if successful, 0 if not.

The contents of the user group

Indicates whether a new user group was created. This is the user group token (userGroupToken or USER_GROUP_TOKEN) that will be used to identify which user group is viewing the dashboard. You should save this on your end to use when rendering an embedded dashboard. This is the name of the user group provided in the request body. This is the user_group_id provided in the request body. This is the properties object if it was provided in the request body This is the environment tag of the user group. Possible values are 'Customer' and 'Testing'
bash example request
curl --location --request PUT 'https://api.mintlify.com/api/user' \
--header 'Content-Type: application/json' \
--header 'Authorization: Token <token>' \
--data-raw '{
    "user_group_id": "example_1",
    "name": "Example 1",
    "mapping": {"40": "213", "134": "386"},
    "properties": {"filterValue": "value"}
}'
json response
{
  "success": 1,
  "user_group": {
    "team_id": 113,
    "token": "<user_group_token_to_auth_dashboard>",
    "name": "ok",
    "provided_id": "6"
  }
}

File: essentials/code.mdx


title: 'Code Blocks' icon: 'code'

Basic

Inline Code

To denote a word or phrase as code, enclose it in backticks (`).

text
To denote a `word` or `phrase` as code, enclose it in backticks (`).

Code Block

Use fenced code blocks by enclosing code in three backticks and follow the leading ticks with the programming language of your snippet to get syntax highlighting. Optionally, you can also write the name of your code after the programming language.

java helloworld.java
class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello, World!");
    }
}
md
```java HelloWorld.java
class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello, World!");
    }
}
```

File: essentials/images.mdx


title: 'Images and Embeds' icon: 'image'

Image

Using Markdown

The markdown syntax lets you add images using the following code

md
![title](/path/image.jpg)

Note that the image file size must be less than 5MB. Otherwise, we recommend hosting on a service like Cloudinary or S3. You can then use that URL and embed.

Using Embeds

To get more customizability with images, you can also use embeds to add images

html
<img height="200" src="/path/image.jpg" />

Embeds and HTML elements

Mintlify supports HTML tags in Markdown. This is helpful if you prefer HTML tags to Markdown syntax, and lets you create documentation with infinite flexibility.

iFrames

Loads another HTML page within the document. Most commonly used for embedding videos.

html
<iframe src="https://www.youtube.com/embed/4KzFe50RQkQ"> </iframe>

File: essentials/markdown.mdx


title: 'Markdown Syntax' icon: 'text-size'

Titles

Best used for section headers.

md
## Titles

Subtitles

Best use to subsection headers.

md
### Subtitles

Each title and subtitle creates an anchor and also shows up on the table of contents on the right.

Text Formatting

We support most markdown formatting. Simply add **, _, or ~ around text to format it.

Style How to write it Result
Bold **bold** bold
Italic _italic_ italic
Strikethrough ~strikethrough~ strikethrough

You can combine these. For example, write **_bold and italic_** to get bold and italic text.

You need to use HTML to write superscript and subscript text. That is, add <sup> or <sub> around your text.

Text Size How to write it Result
Superscript <sup>superscript</sup> superscript
Subscript <sub>subscript</sub> subscript

Linking to Pages

You can add a link by wrapping text in [](). You would write [link to google](https://google.com) to link to google.

Links to pages in your docs need to be root-relative. Basically, you should include the entire folder path. For example, [link to text](/writing-content/text) links to the page "Text" in our components section.

Relative links like [link to text](../text) will open slower because we cannot optimize them as easily.

Blockquotes

Singleline

To create a blockquote, add a > in front of a paragraph.

Dorothy followed her through many of the beautiful rooms in her castle.

md
> Dorothy followed her through many of the beautiful rooms in her castle.

Multiline

Dorothy followed her through many of the beautiful rooms in her castle.

The Witch bade her clean the pots and kettles and sweep the floor and keep the fire fed with wood.

md
> Dorothy followed her through many of the beautiful rooms in her castle.
>
> The Witch bade her clean the pots and kettles and sweep the floor and keep the fire fed with wood.

LaTeX

Mintlify supports LaTeX through the Latex component.

8 x (vk x H1 - H2) = (0,1)

md
<Latex>8 x (vk x H1 - H2) = (0,1)</Latex>

File: essentials/navigation.mdx


title: 'Navigation' icon: 'map'

The navigation menu is the list of links on every website.

You will likely update mint.json every time you add a new page. Pages do not show up automatically.

Our navigation syntax is recursive which means you can make nested navigation groups. You don't need to include .mdx in page names.

json regular navigation
"navigation": [
    {
        "group": "Getting Started",
        "pages": ["quickstart"]
    }
]
json nested navigation
"navigation": [
    {
        "group": "Getting Started",
        "pages": [
            "quickstart",
            {
                "group": "Nested Reference Pages",
                "pages": ["nested-reference-page"]
            }
        ]
    }
]

Folders

Simply put your MDX files in folders and update the paths in mint.json.

For example, to have a page at https://yoursite.com/your-folder/your-page you would make a folder called your-folder containing an MDX file called your-page.mdx.

You cannot use api for the name of a folder unless you nest it inside another folder. Mintlify uses Next.js which reserves the top-level api folder for internal server calls. A folder name such as api-reference would be accepted.

json navigation with folder
"navigation": [
    {
        "group": "Group Name",
        "pages": ["your-folder/your-page"]
    }
]

Hidden Pages

MDX files not included in mint.json will not show up in the sidebar but are accessible through the search bar and by linking directly to them.


File: essentials/settings.mdx


title: 'Global Settings' icon: 'gear'

Every Mintlify site needs a mint.json file with the core configuration settings. Learn more about the properties below.

Properties

Name of your project. Used for the global title.

Example: mintlify

An array of groups with all the pages within that group The name of the group.
text
Example: `Settings`

</ResponseField>
<ResponseField name="pages" type="string[]">
The relative paths to the markdown files that will serve as pages.

Example: `["customization", "page"]`

</ResponseField>
Path to logo image or object with path to "light" and "dark" mode logo images Path to the logo in light mode Path to the logo in dark mode Where clicking on the logo links you to Path to the favicon image Hex color codes for your global theme The primary color. Used for most often for highlighted content, section headers, accents, in light mode The primary color for dark mode. Used for most often for highlighted content, section headers, accents, in dark mode The primary color for important buttons The color of the background in both light and dark mode The hex color code of the background in light mode The hex color code of the background in dark mode Array of `name`s and `url`s of links you want to include in the topbar The name of the button.
text
Example: `Contact us`
</ResponseField>
<ResponseField name="url" type="string">
The url once you click on the button. Example: `https://mintlify.com/contact`
</ResponseField>
Link shows a button. GitHub shows the repo information at the url provided including the number of GitHub stars. If `link`: What the button links to.
text
If `github`: Link to the repository to load GitHub information from.
</ResponseField>
<ResponseField name="name" type="string">
Text inside the button. Only required if `type` is a `link`.
</ResponseField>
Array of version names. Only use this if you want to show different versions of docs with a dropdown in the navigation bar. An array of the anchors, includes the `icon`, `color`, and `url`. The [Font Awesome](https://fontawesome.com/search?s=brands%2Cduotone) icon used to feature the anchor.
text
Example: `comments`
</ResponseField>
<ResponseField name="name" type="string">
The name of the anchor label.

Example: `Community`
</ResponseField>
<ResponseField name="url" type="string">
  The start of the URL that marks what pages go in the anchor. Generally, this is the name of the folder you put your pages in.
</ResponseField>
<ResponseField name="color" type="string">
  The hex color of the anchor icon background. Can also be a gradient if you pass an object with the properties `from` and `to` that are each a hex color.
</ResponseField>
<ResponseField name="version" type="string">
  Used if you want to hide an anchor until the correct docs version is selected.
</ResponseField>
<ResponseField name="isDefaultHidden" type="boolean" default="false">
  Pass `true` if you want to hide the anchor until you directly link someone to docs inside it.
</ResponseField>
<ResponseField name="iconType" default="duotone" type="string">
  One of: "brands", "duotone", "light", "sharp-solid", "solid", or "thin"
</ResponseField>
Override the default configurations for the top-most anchor. The name of the top-most anchor Font Awesome icon. One of: "brands", "duotone", "light", "sharp-solid", "solid", or "thin" An array of navigational tabs. The name of the tab label. The start of the URL that marks what pages go in the tab. Generally, this is the name of the folder you put your pages in. Configuration for API settings. Learn more about API pages at [API Components](/api-playground/demo). The base url for all API endpoints. If `baseUrl` is an array, it will enable for multiple base url options that the user can toggle.
text
<ResponseField name="auth" type="Auth">
  <Expandable title="Auth">
    <ResponseField name="method" type='"bearer" | "basic" | "key"'>
      The authentication strategy used for all API endpoints.
    </ResponseField>
    <ResponseField name="name" type="string">
    The name of the authentication parameter used in the API playground.

    If method is `basic`, the format should be `[usernameName]:[passwordName]`
    </ResponseField>
    <ResponseField name="inputPrefix" type="string">
    The default value that's designed to be a prefix for the authentication input field.

    E.g. If an `inputPrefix` of `AuthKey` would inherit the default input result of the authentication field as `AuthKey`.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="playground" type="Playground">
  Configurations for the API playground

  <Expandable title="Playground">
    <ResponseField name="mode" default="show" type='"show" | "simple" | "hide"'>
      Whether the playground is showing, hidden, or only displaying the endpoint with no added user interactivity `simple`

      Learn more at the [playground guides](/api-playground/demo)
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="maintainOrder" type="boolean">
  Enabling this flag ensures that key ordering in OpenAPI pages matches the key ordering defined in the OpenAPI file.

  <Warning>This behavior will soon be enabled by default, at which point this field will be deprecated.</Warning>
</ResponseField>
A string or an array of strings of URL(s) or relative path(s) pointing to your OpenAPI file.

Examples:

json Absolute "openapi": "https://example.com/openapi.json"
json Relative "openapi": "/openapi.json"
json Multiple "openapi": ["https://example.com/openapi1.json", "/openapi2.json", "/openapi3.json"]

An object of social media accounts where the key:property pair represents the social media platform and the account url.

Example:

json
{
  "twitter": "https://twitter.com/mintlify",
  "website": "https://mintlify.com"
}
One of the following values `website`, `facebook`, `twitter`, `discord`, `slack`, `github`, `linkedin`, `instagram`, `hacker-news`
text
Example: `twitter`
</ResponseField>
<ResponseField name="property" type="string">
The URL to the social platform.

Example: `https://twitter.com/mintlify`
</ResponseField>
Configurations to enable feedback buttons Enables a button to allow users to suggest edits via pull requests Enables a button to allow users to raise an issue about the documentation Customize the dark mode toggle. Set if you always want to show light or dark mode for new users. When not set, we default to the same mode as the user's operating system. Set to true to hide the dark/light mode toggle. You can combine `isHidden` with `default` to force your docs to only use light or dark mode. For example:
text
<CodeGroup>
  ```json Only Dark Mode
  "modeToggle": {
    "default": "dark",
    "isHidden": true
  }
  ```

  ```json Only Light Mode
  "modeToggle": {
    "default": "light",
    "isHidden": true
  }
  ```
  </CodeGroup>

</ResponseField>
A background image to be displayed behind every page. See example with [Infisical](https://infisical.com/docs) and [FRPC](https://frpc.io).