Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
98f3c4b
chore: add Phase 1 setup for Palm redesign
patcapulong Jan 29, 2026
25a3640
feat: switch documentation theme from Mint to Palm
patcapulong Jan 30, 2026
d16ffad
feat: add Central Icons build script and export icons
patcapulong Jan 30, 2026
ec2af2b
feat: add sidebar icons to Platform Overview navigation
patcapulong Jan 30, 2026
d9be2f2
feat: add sidebar icons to all navigation tabs
patcapulong Jan 30, 2026
de6a618
feat: redesign homepage with enhanced sections
patcapulong Jan 30, 2026
cd6f633
feat: restructure navigation for Palm theme sidebar
patcapulong Jan 30, 2026
3a11bca
feat: implement Figma 1:1 design with CSS hacks and components
patcapulong Jan 30, 2026
28080b6
fix: simplify navigation structure and add page icons properly
patcapulong Jan 30, 2026
01009e8
fix: update hero image and title to match Figma
patcapulong Jan 30, 2026
4a1c857
fix: remove double icons and add homepage-specific styling
patcapulong Jan 30, 2026
2dbe279
feat: switch sidebar icons to Central Icons library
patcapulong Jan 30, 2026
65b4453
feat: redesign homepage with Figma 1:1 implementation
patcapulong Jan 31, 2026
8bedcf1
feat: update partner brand logos
patcapulong Jan 31, 2026
d2df640
feat: add new icons and homepage images
patcapulong Jan 31, 2026
f916b55
refactor: split and clean up CSS into base and homepage files
patcapulong Jan 31, 2026
5bf4a93
refactor: clean up navbar and layout styles
patcapulong Jan 31, 2026
f8f1a75
feat: add sidebar icons to documentation pages
patcapulong Jan 31, 2026
0b47038
feat: style API Reference sidebar and add Plaid icon
patcapulong Jan 31, 2026
2d3a4a2
fix: adjust Suisse Intl font metrics to fix vertical alignment
patcapulong Jan 31, 2026
0852de6
feat: update sidebar icons for consistency and add new icons
patcapulong Jan 31, 2026
3cd822a
feat: update homepage trusted section label
patcapulong Feb 1, 2026
8ca3fe8
Remove footer from all pages
patcapulong Feb 1, 2026
ba188c8
feat: style inner page content layout and TOC width
patcapulong Feb 1, 2026
fda27e4
feat: add hero placeholder images to introduction pages
patcapulong Feb 1, 2026
c21085d
feat: style card components with 8px radius and custom icons
patcapulong Feb 1, 2026
f91e040
feat: add vertical indentation line to API reference sidebar groups
patcapulong Feb 1, 2026
299724a
feat: widen API reference pages to 1600px max-width
patcapulong Feb 1, 2026
e8ba777
feat: style API reference pages with design system tokens
patcapulong Feb 2, 2026
9f61734
feat: style page context menu and add light/dark favicons
patcapulong Feb 2, 2026
c1e6f39
feat: add hero images and improve page layout
patcapulong Feb 2, 2026
5e8a672
feat: add comprehensive dark mode styling
patcapulong Feb 2, 2026
e8ff363
feat: replace CardGroup with custom FeatureCard component
patcapulong Feb 3, 2026
6bac465
feat: style internal page elements with design system
patcapulong Feb 3, 2026
2939c0f
feat: add squircle corner-shape for smoother rounded corners
patcapulong Feb 4, 2026
77755f0
feat: add Figma-matched squircle radii with progressive enhancement
patcapulong Feb 4, 2026
ed8904a
feat: add ImageCard component for use cases page
patcapulong Feb 4, 2026
58070f6
feat: add use case images and update hero assets
patcapulong Feb 4, 2026
e597cde
feat: add hover state to capability cards
patcapulong Feb 4, 2026
2811432
feat: update styles and homepage layout
patcapulong Feb 4, 2026
017a7aa
merge: resolve openapi conflicts with main
patcapulong Feb 4, 2026
d6cbcd6
fix: move central-icons to optionalDependencies
patcapulong Feb 4, 2026
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
8 changes: 8 additions & 0 deletions .env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Grid Docs Environment Variables
# Copy this file to .env and fill in the values
# DO NOT commit .env to the repository

# Central Icons React Library License
# Get your license key from https://www.npmjs.com/package/@central-icons-react/all
# Required for npm run build:icons
CENTRAL_LICENSE_KEY=your-license-key-here
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -32,3 +32,9 @@ local.properties
# Figma design tokens (local reference only)
mintlify/tokens/

# Development reference files
refs/
figma-*.md

# Cursor IDE rules (personal config)
.cursor/rules/
26 changes: 26 additions & 0 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -155,6 +155,32 @@ Webhooks use **P-256 ECDSA signatures** in the `X-Grid-Signature` header for ver
- Use relative paths for internal links
- The mintlify subdirectory has its own CLAUDE.md with additional guidance

### Mintlify CLI Version (Important)

**Use Mintlify CLI version 4.2.284** for local development. Newer versions (e.g., 4.2.312) have a bug where the API reference pages render blank when using the palm theme with OpenAPI auto-generation.

```bash
# Check current version
mintlify --version

# If needed, install the working version
npm install -g mintlify@4.2.284 --force
```

### Troubleshooting: API Reference Not Showing

If the API reference pages appear blank (only showing title and navigation, no endpoint details):

1. **Restart the dev server** - hot reload sometimes fails:
```bash
pkill -f "mint.*dev"
cd mintlify && mint dev
```

2. **Check CLI version** - ensure you're on 4.2.284 (see above)

3. **Verify OpenAPI spec** - run `mint openapi-check openapi.yaml` in the mintlify folder

### Documentation Philosophy

- **Document just enough** for user success - balance between too much and too little
Expand Down
1 change: 1 addition & 0 deletions mintlify/api-reference/authentication.mdx
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
---
title: "Authentication"
icon: "/images/icons/key2.svg"
---
import { topLevelProductName } from '/snippets/variables.mdx'

Expand Down
1 change: 1 addition & 0 deletions mintlify/api-reference/environments.mdx
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
---
title: 'Environments'
icon: "/images/icons/globe.svg"
---
import { topLevelProductName } from '/snippets/variables.mdx'

Expand Down
1 change: 1 addition & 0 deletions mintlify/api-reference/terminology.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
title: "Core Concepts"
description: "Core concepts and terminology for the Grid API"
icon: "/images/icons/file-text.svg"
---

import Terminology from '/snippets/terminology.mdx';
Expand Down
3 changes: 2 additions & 1 deletion mintlify/developer-resources/samples.mdx
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
---
title: "Samples"
icon: "/images/icons/github.svg"
---

<Note>
Explore end-to-end sample apps and snippets in our public repository.
</Note>

<Card title="Grid Samples on GitHub" icon="github" href="https://github.com/lightsparkdev/grid-api/tree/main/samples">
<Card title="Grid Samples on GitHub" icon="/images/icons/github.svg" href="https://github.com/lightsparkdev/grid-api/tree/main/samples">
Browse runnable examples for quickstarts and integrations.
</Card>

Expand Down
120 changes: 71 additions & 49 deletions mintlify/docs.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"$schema": "https://mintlify.com/docs.json",
"theme": "mint",
"theme": "palm",
"name": "Grid API Documentation",
"description": "The Grid API enables modern financial institutions to easily send and receive global payments. The following documentation helps developers understand the Grid API and how to integrate with it.",
"colors": {
Expand All @@ -17,53 +17,65 @@
"fonts": {
"heading": {
"family": "Suisse Intl",
"source": "/fonts/suisse-intl/SuisseIntl-Medium.woff2",
"format": "woff2",
"weight": 500
},
"body": {
"family": "Suisse Intl",
"source": "/fonts/suisse-intl/SuisseIntl-Regular.woff2",
"format": "woff2",
"weight": 400
}
},
"favicon": "/favicon.svg",
"favicon": {
"light": "/favicon-dark.svg",
"dark": "/favicon-light.svg"
},
"navigation": {
"tabs": [
{
"tab": "Home",
"pages": ["index"]
},
{
"tab": "Platform Overview",
"pages": [
"tab": "Get started",
"groups": [
{
"group": "Introduction",
"group": "Overview",
"pages": [
"index",
"platform-overview/introduction/what-is-grid",
"platform-overview/capabilities",
"platform-overview/use-cases",
"platform-overview/introduction/faq"
]
},
{
"group": "Core Concepts",
"group": "Quickstart",
"pages": [
"platform-overview/quickstart/payouts",
"platform-overview/quickstart/ramps",
"platform-overview/quickstart/rewards",
"platform-overview/quickstart/p2p"
]
},
{
"group": "Core concepts",
"pages": [
"platform-overview/core-concepts/entities",
"platform-overview/core-concepts/quote-system",
"platform-overview/core-concepts/account-model",
"platform-overview/core-concepts/transaction-lifecycle",
"platform-overview/core-concepts/currencies-and-rails"
"platform-overview/core-concepts/currencies-and-rails",
"platform-overview/configuration"
]
}
]
},
{
"tab": "Payouts & B2B",
"pages": [
"payouts-and-b2b/index",
"payouts-and-b2b/terminology",
"payouts-and-b2b/onboarding/implementation-overview",
"payouts-and-b2b/quickstart",
"groups": [
{
"group": "Overview",
"pages": [
"payouts-and-b2b/index",
"payouts-and-b2b/terminology",
"payouts-and-b2b/onboarding/implementation-overview"
]
},
{
"group": "Onboarding",
"pages": [
Expand Down Expand Up @@ -101,11 +113,15 @@
},
{
"tab": "Ramps",
"pages": [
"ramps/index",
"ramps/terminology",
"ramps/onboarding/implementation-overview",
"ramps/quickstart",
"groups": [
{
"group": "Overview",
"pages": [
"ramps/index",
"ramps/terminology",
"ramps/onboarding/implementation-overview"
]
},
{
"group": "Onboarding",
"pages": [
Expand Down Expand Up @@ -141,11 +157,15 @@
},
{
"tab": "Rewards",
"pages": [
"rewards/index",
"rewards/terminology",
"rewards/developer-guides/implementation-overview",
"rewards/quickstart",
"groups": [
{
"group": "Overview",
"pages": [
"rewards/index",
"rewards/terminology",
"rewards/developer-guides/implementation-overview"
]
},
{
"group": "Onboarding",
"pages": [
Expand Down Expand Up @@ -179,11 +199,15 @@
},
{
"tab": "Global P2P",
"pages": [
"global-p2p/index",
"global-p2p/terminology",
"global-p2p/getting-started/implementation-overview",
"global-p2p/quickstart",
"groups": [
{
"group": "Overview",
"pages": [
"global-p2p/index",
"global-p2p/terminology",
"global-p2p/getting-started/implementation-overview"
]
},
{
"group": "Onboarding",
"pages": [
Expand Down Expand Up @@ -247,28 +271,26 @@
"navbar": {
"links": [
{
"label": "Github",
"label": "GitHub",
"href": "https://github.com/lightsparkdev/grid-api",
"icon": "github"
},
{
"label": "Contact sales",
"href": "https://lightspark.com/grid#signup"
}
],
"primary": {
"type": "button",
"label": "Contact Sales",
"href": "https://lightspark.com/grid#signup"
}
]
},
"modeToggle": {
"default": "light",
"isHidden": false
},
"contextual": {
"options": ["copy", "view", "chatgpt", "claude"]
},
"footer": {
"socials": {
"x": "https://x.com/lightspark",
"github": "https://github.com/lightsparkdev",
"linkedin": "https://linkedin.com/company/lightspark-group"
}
},
"footer": {},
"head": {
"raw": "<style>#header:empty,#page-title:empty{display:none!important}</style><script>if(location.pathname==='/'||location.pathname==='/index'||location.pathname===''){document.write('<style>header#header,#page-title,#page-context-menu-button,#page-context-menu,.eyebrow,#pagination,[class*=\"space-y-2\"]>*{display:none!important;visibility:hidden!important;height:0!important;overflow:hidden!important;margin:0!important;padding:0!important}</style>');document.documentElement.classList.add('is-homepage');}</script><style>html.is-homepage #pagination,body.is-homepage #pagination,html.is-homepage #footer,body.is-homepage #footer,html.is-homepage header#header,body.is-homepage header#header,html.is-homepage #page-title,body.is-homepage #page-title,html.is-homepage #page-context-menu-button,body.is-homepage #page-context-menu-button,html.is-homepage #page-context-menu,body.is-homepage #page-context-menu,html.is-homepage .eyebrow,body.is-homepage .eyebrow{display:none!important;visibility:hidden!important;height:0!important;overflow:hidden!important}</style>",
"links": [
{
"rel": "preload",
Expand Down
4 changes: 4 additions & 0 deletions mintlify/favicon-dark.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 4 additions & 0 deletions mintlify/favicon-light.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
3 changes: 0 additions & 3 deletions mintlify/favicon.svg

This file was deleted.

1 change: 1 addition & 0 deletions mintlify/global-p2p/country-support.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
title: "Supported Countries"
description: "Grid availability and payment support"
icon: "/images/icons/globe.svg"
---
import CountrySupport from '/snippets/country-support.mdx';

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
title: "Implementation Overview"
description: "High-level implementation plan for configuring, onboarding, funding, and moving money"
icon: "/images/icons/code.svg"
---
This page gives you a 10,000‑ft view of an end‑to‑end implementation. It is intentionally generalized because the flow supports multiple customer types and external account types (e.g., CLABE, IBAN, US accounts, UPI). The detailed guides that follow provide concrete fields, edge cases, and step‑by‑step instructions.

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
title: "Platform Configuration"
description: "Configuring credentials, webhooks and currencies for your platform global P2P payments"
icon: "/images/icons/settings-gear2.svg"
---
import PlatformConfigAPI from '/snippets/platform-config-currency-api-webhooks.mdx';
import { topLevelProductName } from '/snippets/variables.mdx';
Expand Down
31 changes: 20 additions & 11 deletions mintlify/global-p2p/index.mdx
Original file line number Diff line number Diff line change
@@ -1,23 +1,32 @@
---
title: "Introduction"
description: "Overview of Global P2P: capabilities, flows"
title: "Global P2P"
sidebarTitle: "Introduction"
icon: "/images/icons/at.svg"
mode: "wide"
---
import { remittanceProductName, topLevelProductName } from '/snippets/variables.mdx';
import PaymentFlow from '/snippets/payment-flow.mdx';
import { FeatureCard, FeatureCardGrid } from '/snippets/feature-card.mdx';

<img
src="/images/heroes/hero-globalp2p.jpg"
alt="Global P2P hero"
style={{ width: '100%', borderRadius: '8px' }}
/>

With {remittanceProductName}, you can send and receive low cost real-time payments to bank accounts and UMA addresses worldwide through a single, simple API. {topLevelProductName} automatically routes each payment across its network of Grid switches, handling FX, blockchain settlement, and instant banking off-ramps for you.

<CardGroup cols={3}>
<Card title="Single API, global reach" icon="bolt">
{remittanceProductName} interacts with the Money Grid to route your payments globally.
</Card>
<Card title="No Crypto Handling" icon="shield-check">
<FeatureCardGrid cols={3}>
<FeatureCard icon="/images/icons/globe.svg" title="Single API, global reach">
{remittanceProductName} interacts with the Money Grid to route your payments globally.
</FeatureCard>
<FeatureCard icon="/images/icons/shield.svg" title="No Crypto Handling">
Leverages local instant banking rails and global low latency crypto rails to settle payments in real-time.
</Card>
<Card title="Instant Delivery" icon="rocket">
</FeatureCard>
<FeatureCard icon="/images/icons/paper-plane-top-right.svg" title="Instant Delivery">
Leverages local instant banking rails and global low latency crypto rails to settle payments in real-time.
</Card>
</CardGroup>
</FeatureCard>
</FeatureCardGrid>

<Note>For background on the UMA protocol itself, see the UMA Standard documentation: [UMA Standard—Introduction](https://docs.uma.me/uma-standard/introduction).</Note>

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
title: "External Accounts"
description: "Register and manage beneficiary bank accounts"
icon: "/images/icons/bank.svg"
---

import ExternalAccounts from '/snippets/external-accounts.mdx';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
title: "Internal Accounts"
description: "Create and manage internal accounts"
icon: "/images/icons/wallet1.svg"
---

import InternalAccounts from '/snippets/internal-accounts.mdx';
Expand Down
1 change: 1 addition & 0 deletions mintlify/global-p2p/managing-accounts/plaid.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
title: "External Accounts with Plaid"
description: "Simplify bank account linking with Plaid"
icon: "/images/icons/IconPlaid.svg"
---

import PlaidIntegration from '/snippets/plaid-integration.mdx';
Expand Down
Loading