# Example of Manifest (JSON format)

## Example for the “Lido” application:

```json copy
{
  "id": "lido",
  "name": "Lido",
  "url": "https://stake.lido.fi/?embed=true",
  "dapp": {
    "nanoApp": "Lido",
    "networks": [
      {
        "currency": "ethereum",
        "chainID": 1,
        "nodeURL": "https://eth-dapps.api.live.ledger.com"
      },
      {
        "currency": "bsc",
        "chainID": 56,
        "nodeURL": "https://bsc-dataseed.binance.org/"
      },
      {
        "currency": "polygon",
        "chainID": 137,
        "nodeURL": "https://polygon-mainnet.g.alchemy.com/v2/xxx"
      },
      {
        "currency": "arbitrum",
        "chainID": 42161,
        "nodeURL": "https://arb1.arbitrum.io/rpc"
      },
      {
        "currency": "optimism",
        "chainID": 10,
        "nodeURL": "https://mainnet.optimism.io"
      }
    ]
  },
  "homepageUrl": "https://lido.fi/",
  "icon": "https://cdn.live.ledger.com/icons/platform/lido.png",
  "platform": "all",
  "apiVersion": "^2.0.0",
  "manifestVersion": "2",
  "branch": "stable",
  "categories": ["staking", "defi"],
  "currencies": ["ethereum", "bsc", "polygon", "arbitrum", "optimism"],
  "content": {
    "shortDescription": {
      "en": "Stake your ETH with Lido to earn daily staking rewards."
    },
    "description": {
      "en": "Stake your ETH with Lido to earn daily staking rewards."
    }
  },
  "permissions": [],
  "domains": ["https://"]
}
```

## List of the mandatory fields required in the Manifest file

| Field             | Description                                                                                                                                                                                                                                                                                                                                                                                                                                 | Type         |
| ----------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------ |
| `id`              | The identification of your application. Must be in lowercase.                                                                                                                                                                                                                                                                                                                                                                               | String       |
| `name`            | The name of your application ("Lido" in this example).                                                                                                                                                                                                                                                                                                                                                                                      | String       |
| `url`             | The url of your dApp, either running locally or at the production version                                                                                                                                                                                                                                                                                                                                                                   | String       |
| `dapp`            | `nanoApp` is [the plugin](../../../device-app/explanation/plugin/) needed to clear sign your dApp, if your dApp doesn't require a plugin set the value to Ethereum `networks` is the list of networks supported by your dApp,  currently only support mainnet, BSC, arbitrum, optimism, base, fantom and Polygon, the nodeURL param will be set by Ledger in prod to use your node, for testing purposes, you can replace it with your own. | Object       |
| `homepageUrl`     | This for information only. It is is non-critial. For instance, "[https://lido.fi/](https://lido.fi/)".                                                                                                                                                                                                                                                                                                                                      | String       |
| `icon`            | A link to the icon displayed in the Discover Section of . Will be hosted on Ledger CDN before being released in production.                                                                                                                                                                                                                                                                                                                 | URL          |
| `platform`        | To set the platform (desktop, mobile, iOS, Android) on which your service is available. By default, you should set the value to "all".                                                                                                                                                                                                                                                                                                      | String       |
| `apiVersion`      | The API version. By default "^2.0.0".                                                                                                                                                                                                                                                                                                                                                                                                       | String       |
| `manifestVersion` | The manifest version. By default should be "2".                                                                                                                                                                                                                                                                                                                                                                                             | String       |
| `branch`          | The specific branch used by Ledger to deploy the changes. Can take the values stable `experimental`, `debug`, `soon`. By default, you should set it to `stable`. The value `soon` will mark your app as "Coming soon" and it won't be usable.                                                                                                                                                                                               | String       |
| `categories`      | A JSON array of metadata information about your application. For instance: \["staking","defi" ]. You can add as many as you want. It is not used for the moment but will be used for filtering in the future.                                                                                                                                                                                                                               | List(string) |
| `currencies`      | A JSON array of the currency/network being used by your application. For instance \["ethereum",”polygon”]. Leave blank if the App does not require any currency.                                                                                                                                                                                                                                                                            | List(string) |
| `content`         | A description of your service. It will be displayed on the entry card of your application.                                                                                                                                                                                                                                                                                                                                                  | L18n strings |
| `permissions`     | Leave empty for now.                                                                                                                                                                                                                                                                                                                                                                                                                        | List(string) |
| `domains`         | List of allowed domains to navigate to, if a domain doesn't match it will open in the default browser. By default \["http\://", "https\://"]                                                                                                                                                                                                                                                                                                | List(string) |
