Skip to content
Draft
Show file tree
Hide file tree
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
350 changes: 33 additions & 317 deletions docs/website/openapi.current.yaml

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ sidebar_label: "Case Study: Daedalus Wallet"

## The problem

Daedalus runs a full Cardano node locally. On first install, that node must sync the entire Cardano blockchain from genesis, replaying every block. Even on modern hardware, this takes many hours and significant bandwidth, historically a major friction point for users picking up a full-node wallet.
Daedalus runs a full Cardano node locally. On first install, that node must sync the entire Cardano blockchain from genesis, replaying every block. Even on modern hardware, this usually takes more than 24-36 hours, historically a major friction point for users picking up a full-node wallet.

## How Mithril helps

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -451,20 +451,6 @@ If you wish to delve deeper and access several levels of logs from the Mithril a

<CompiledBinaries node="mithril-aggregator"/>

## Build and run the Docker container

Build a local Docker image:

```bash
make docker-build
```

Run a local Docker container:

```bash
make docker-run
```

## Subcommands

Here are the available subcommands:
Expand Down Expand Up @@ -527,7 +513,7 @@ Here is a list of the available parameters for the serve command:
| `era_reader_adapter_type` | `--era-reader-adapter-type` | - | `ERA_READER_ADAPTER_TYPE` | Era reader adapter type that can be `cardano-chain`, `file` or `bootstrap`. | `bootstrap` | - | - |
| `era_reader_adapter_params` | `--era-reader-adapter-params` | - | `ERA_READER_ADAPTER_PARAMS` | Era reader adapter params that is an optional JSON encoded parameters structure that is expected depending on the `era_reader_adapter_type` parameter | - | - | - |
| `ancillary_files_signer_config` | - | - | `ANCILLARY_FILES_SIGNER_CONFIG` | Configuration of the ancillary files signer<br/><br/>Can either be a secret key or a key stored in a Google Cloud Platform KMS account.<br/><br/>**IMPORTANT**: The cryptographic scheme used is ED25519 | - | - secret-key:<br/>`{ "type": "secret-key", "secret_key": "136372c3138312c3138382c3130352c3233312c3135" }`<br/>- Gcp kms:<br/>`{ "type": "gcp-kms", "resource_name": "projects/project_name/locations/_location_name/keyRings/key_ring_name/cryptoKeys/key_name/cryptoKeyVersions/key_version" }` | - |
| `signed_entity_types` | `--signed-entity-types` | - | `SIGNED_ENTITY_TYPES` | Signed entity types parameters (discriminants names in an ordered comma separated list) | - | `MithrilStakeDistribution,CardanoImmutableFilesFull,CardanoStakeDistribution,CardanoDatabase,CardanoTransactions` | - |
| `signed_entity_types` | `--signed-entity-types` | - | `SIGNED_ENTITY_TYPES` | Signed entity types parameters (discriminants names in an ordered comma separated list) | - | `MithrilStakeDistribution,CardanoStakeDistribution,CardanoDatabase,CardanoTransactions` | - |
| `snapshot_compression_algorithm` | `--snapshot-compression-algorithm` | - | `SNAPSHOT_COMPRESSION_ALGORITHM` | Compression algorithm of the snapshot archive | `zstandard` | `gzip` or `zstandard` | - |
| `zstandard_parameters` | - | - | `ZSTANDARD_PARAMETERS__LEVEL` and `ZSTANDARD_PARAMETERS__NUMBER_OF_WORKERS` | Zstandard specific parameters | - | `{ level: 9, number_of_workers: 4 }` | - |
| `blockfrost_parameters` | - | - | `BLOCKFROST_PARAMETERS` | Optional parameters to connect to the Blockfrost API. Used to fetch the ticker and name of<br/>the registered stake pools.<br/><br/>`base_url` (optional) allows you to override the default URL, which is otherwise automatically determined from the project ID. | - | `{ "project_id": "preprodWuV1ICdtOWfZYfdcxpZ0tsS1N9rVZomQ" }`<br/>or `{ "project_id": "preprodWuV1ICdtOWfZYfdcxpZ0tsS1N9rVZomQ", "base_url": "https://your-custom-blockfrost-server.io/api/v0/" }` | - |
Expand Down Expand Up @@ -582,6 +568,7 @@ Here is a list of the available parameters for the serve command:
| -------------------------- | ---------------------------- | :------------------: | -------------------------- | ------------------------------------------------------------------ | ------------- | ---------------------------------- | :----------------: |
| `signed_payload_path` | `--signed-payload-path` | - | - | Path of the payload to import. | - | - | :heavy_check_mark: |
| `genesis_verification_key` | `--genesis-verification-key` | - | - | Genesis verification key | - | - | :heavy_check_mark: |
| `mithril_era` | `--mithril-era` | - | - | Mithril era to use for the genesis certificate | - | - | - |
| `data_stores_directory` | - | - | `DATA_STORES_DIRECTORY` | Directory to store aggregator databases | - | `./mithril-aggregator/stores` | :heavy_check_mark: |
| `cardano_node_socket_path` | - | - | `CARDANO_NODE_SOCKET_PATH` | Path of the socket opened by the Cardano node | - | `/ipc/node.socket` | :heavy_check_mark: |
| `cardano_cli_path` | - | - | `CARDANO_CLI_PATH` | Cardano CLI tool path | - | `cardano-cli` | - |
Expand All @@ -591,11 +578,12 @@ Here is a list of the available parameters for the serve command:

`genesis sign` command:

| Parameter | Command line (long) | Command line (short) | Environment variable | Description | Default value | Example | Mandatory |
| ---------------------------- | ------------------------------ | :------------------: | -------------------- | ------------------------------------- | ------------- | ------- | :-------: |
| `to_sign_payload_path` | `--to-sign-payload-path` | - | - | Path of the payload to sign. | - | - | - |
| `target_signed_payload_path` | `--target-signed-payload-path` | - | - | Path of the signed payload to export. | - | - | - |
| `genesis_secret_key_path` | `--genesis-secret-key-path` | - | - | Path of the genesis secret key. | - | - | - |
| Parameter | Command line (long) | Command line (short) | Environment variable | Description | Default value | Example | Mandatory |
| ---------------------------- | ------------------------------ | :------------------: | -------------------- | ---------------------------------------------- | ------------- | ------- | :-------: |
| `to_sign_payload_path` | `--to-sign-payload-path` | - | - | Path of the payload to sign. | - | - | - |
| `target_signed_payload_path` | `--target-signed-payload-path` | - | - | Path of the signed payload to export. | - | - | - |
| `genesis_secret_key_path` | `--genesis-secret-key-path` | - | - | Path of the genesis secret key. | - | - | - |
| `mithril_era` | `--mithril-era` | - | - | Mithril era to use for the genesis certificate | - | - | - |

`genesis generate-keypair` command:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -468,38 +468,6 @@ mithril_client cardano-stake-distribution list
mithril_client cardano-stake-distribution download $UNIQUE_IDENTIFIER
```

### Local image

Build a local Docker image:

<Tabs groupId="system" queryString>
<TabItem value="linux-mac" label="Linux / Mac">
```bash
make docker-build
```
</TabItem>
<TabItem value="windows" label="Windows">
```powershell
pushd ..\; docker build -t mithril/mithril-client -f mithril-client-cli\Dockerfile . ; popd
```
</TabItem>
</Tabs>

Run a local Docker container:

<Tabs groupId="system" queryString>
<TabItem value="linux-mac" label="Linux / Mac">
```bash
make docker-run
```
</TabItem>
<TabItem value="windows" label="Windows">
```powershell
docker run --rm --name='mithril-client' mithril/mithril-client
```
</TabItem>
</Tabs>

## Subcommands

Here are the subcommands available:
Expand Down Expand Up @@ -861,7 +829,9 @@ This command is not compatible with **Linux ARM environments**.
| `db_directory` | `--db-directory` | - | - | Path to the Cardano node database directory | - | - | :heavy_check_mark: |
| `cardano_node_version` | `--cardano-node-version` | - | - | Cardano node version of the Mithril signed snapshot (`latest` and `pre-release` are also supported to download the latest or pre-release distribution). | - | - | :heavy_check_mark: |
| `cardano_network` | `--cardano-network` | - | - | Cardano network | - | - | - |
| `utxo_hd_flavor` | `--utxo-hd-flavor` | - | - | UTxO-HD flavor to convert the ledger snapshot to (`Legacy` or `LMDB`) | - | - | :heavy_check_mark: |
| `binary-path` | `--binary-path` | - | - | Path to the Cardano snapshot converter binary | - | - | - |
| `config-path` | `--config-path` | - | - | Path to JSON configuration file for the Cardano snapshot converter | - | - | - |
| `utxo_hd_flavor` | `--utxo-hd-flavor` | - | - | UTxO-HD flavor to convert the ledger snapshot to (`Legacy`, `LMDB` or `LSM`) | - | - | :heavy_check_mark: |
| `commit` | `--commit` | - | - | Replaces the current ledger state in the `db_directory`. | `false` | - | - |
| `github_token` | `--github-token` | - | `GITHUB_TOKEN` | GitHub token for authenticated API calls | - | - | - |
| `run_mode` | `--run-mode` | - | `RUN_MODE` | Run Mode | `dev` | - | - |
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -208,20 +208,6 @@ If you wish to delve deeper and access several levels of logs from the Mithril s

<CompiledBinaries node="mithril-signer"/>

## Build and run a Docker container

Build a local Docker image:

```bash
make docker-build
```

Run a local Docker container:

```bash
make docker-run
```

## Configuration parameters

The configuration parameters can be set in either of the following ways:
Expand Down
Loading