Skip to content

docs(website): add Use Cases section with Light Wallets, Bridges; add Case Studies section with Daedalus#3200

Open
dalibran wants to merge 20 commits into
mainfrom
docs/use-cases
Open

docs(website): add Use Cases section with Light Wallets, Bridges; add Case Studies section with Daedalus#3200
dalibran wants to merge 20 commits into
mainfrom
docs/use-cases

Conversation

@dalibran
Copy link
Copy Markdown
Collaborator

Summary

  • Adds a Use Cases dropdown to the navbar, positioned between Manual and Protocol
  • Renames navbar labels: "User manual" → "Manual", "About Mithril" → "Protocol"
  • Adds a Wallets use case page (/use-cases/wallets) covering two audiences:
    • Wallet developers: value prop, how Mithril fits existing stack, integration guide, Discord CTA
    • Wallet users: plain-language explanation of what Mithril-enabled wallets mean for them
  • Includes a caution admonition noting protocol security scales with SPO participation — the client is production-ready but full production wallet deployment should wait for sufficient stake coverage
  • Adds useCasesSideBar to sidebars.js and version-maintained-sidebars.json
  • Mirrors new docs into versioned_docs/version-maintained/ to support the version dropdown

Notes for reviewers

  • The caution admonition wording around stake participation thresholds is intentionally vague — flagging for technical review to sharpen the specific threshold language
  • The version dropdown label/ordering is a separate open question flagged for future discussion

Test plan

  • Verify Use Cases dropdown appears in navbar and links correctly
  • Verify Wallets page renders correctly in both current and maintained versions
  • Verify caution and note admonitions render correctly
  • Verify Discord button opens correct channel
  • Check right-side TOC shows correct heading hierarchy

🤖 Generated with Claude Code

- Add Use Cases dropdown to navbar (between Manual and Protocol)
- Rename navbar labels: "User manual" → "Manual", "About Mithril" → "Protocol"
- Add Wallets use case page covering developer and end-user audiences
- Add useCasesSideBar to sidebars.js and versioned sidebars
- Wallet page includes: security caution admonition, integration guide,
  Discord CTA button, and note on server membership

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@dalibran dalibran self-assigned this Apr 14, 2026
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Apr 14, 2026

Test Results

     5 files  ±  0     203 suites  +4   54m 12s ⏱️ - 25m 40s
 3 058 tests +128   3 058 ✅ +128  0 💤 ±0  0 ❌ ±0 
10 457 runs  +161  10 457 ✅ +161  0 💤 ±0  0 ❌ ±0 

Results for commit 1166231. ± Comparison against base commit c064115.

This pull request removes 157 and adds 285 tests. Note that renamed tests count towards both.
mithril-aggregator ‑ database::query::signed_entity::get_signed_entity::tests::test_get_record_by_id
mithril-client ‑ file_downloader::http::tests::test_download_http_file_send_feedback
mithril-client ‑ file_downloader::http::tests::test_download_local_file_send_feedback
mithril-common ‑ crypto_helper::merkle_map::tests::get_keys
mithril-common ‑ crypto_helper::merkle_map::tests::test_mk_map_replace_should_accept_replacement_with_same_root_value
mithril-common ‑ crypto_helper::merkle_map::tests::test_mk_map_replace_should_reject_replacement_if_key_doesnt_exist
mithril-common ‑ crypto_helper::merkle_map::tests::test_mk_map_replace_should_reject_replacement_with_different_root_value
mithril-common ‑ crypto_helper::merkle_map::tests::test_mk_map_should_accept_replacement_with_same_root_value
mithril-common ‑ crypto_helper::merkle_map::tests::test_mk_map_should_clone_and_compute_same_root
mithril-common ‑ crypto_helper::merkle_map::tests::test_mk_map_should_compress_correctly
…
mithril-aggregator ‑ database::query::signed_entity::get_signed_entity::tests::test_get_record_by_id_and_signed_entity_type
mithril-aggregator ‑ database::query::signed_entity::get_signed_entity::tests::test_get_record_by_id_and_signed_entity_type_must_return_none_if_signed_entity_type_does_not_match
mithril-client ‑ file_downloader::http::tests::downloading_http_file_handle_early_unpack_receiver_closure
mithril-client ‑ file_downloader::http::tests::downloading_http_file_send_feedback
mithril-client ‑ file_downloader::http::tests::downloading_local_file_handle_early_unpack_receiver_closure
mithril-client ‑ file_downloader::http::tests::downloading_local_file_send_feedback
mithril-client-cli ‑ commands::tools::utxo_hd::snapshot_converter::tests::calculate_number_of_steps::returns_1_when_local_bin_mode_is_true_and_commit_is_false
mithril-client-cli ‑ commands::tools::utxo_hd::snapshot_converter::tests::calculate_number_of_steps::returns_2_when_local_bin_mode_is_true_and_commit_is_true
mithril-client-cli ‑ commands::tools::utxo_hd::snapshot_converter::tests::calculate_number_of_steps::returns_3_when_local_bin_mode_is_false_and_commit_is_false
mithril-client-cli ‑ commands::tools::utxo_hd::snapshot_converter::tests::calculate_number_of_steps::returns_4_when_local_bin_mode_is_false_and_commit_is_true
…

♻️ This comment has been updated with latest results.

@dalibran dalibran temporarily deployed to testing-preview April 14, 2026 18:59 — with GitHub Actions Inactive
Wrap button text in a span to prevent MDX from injecting a paragraph
element with inherited margin-bottom, and use explicit height on the
anchor for reliable vertical centering.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Comment thread docs/website/root/use-cases/wallets.mdx Outdated
Comment thread docs/website/root/use-cases/wallets.mdx Outdated
Comment thread docs/website/root/use-cases/wallets.mdx Outdated
Comment thread docs/website/root/use-cases/wallets.mdx Outdated
Comment thread docs/website/root/use-cases/wallets.mdx Outdated
Comment thread docs/website/root/use-cases/wallets.mdx Outdated
Comment thread docs/website/root/use-cases/wallets/light-wallets.mdx
Comment thread docs/website/root/use-cases/wallets.mdx Outdated
Comment thread docs/website/root/use-cases/wallets.mdx Outdated
Comment thread docs/website/root/use-cases/wallets.mdx Outdated
Comment thread docs/website/root/use-cases/wallets.mdx Outdated
Comment thread docs/website/root/use-cases/wallets.mdx Outdated
Comment thread docs/website/root/use-cases/wallets.mdx Outdated
Comment thread docs/website/root/use-cases/wallets.mdx Outdated
Comment thread docs/website/root/use-cases/wallets.mdx Outdated
Comment thread docs/website/root/use-cases/wallets.mdx Outdated
Comment thread docs/website/versioned_docs/version-maintained/use-cases/wallets.mdx Outdated
dalibran and others added 11 commits April 17, 2026 12:03
Co-authored-by: Jean-Philippe Raynaud <jp.raynaud@gmail.com>
Co-authored-by: Jean-Philippe Raynaud <jp.raynaud@gmail.com>
Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>
Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>
Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>
Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>
Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>
Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>
Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>
Co-authored-by: olgahryniuk <67585499+olgahryniuk@users.noreply.github.com>
- Rename page/sidebar label to "Light wallets" (sentence case)
- Move Use Cases dropdown to end of left navbar
- Remove unused spoCta note about IOG Discord membership
- Update browser support paragraph with compatibility link, example, and Rust crate link
- Remove "For wallet developers" title casing

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@dalibran dalibran linked an issue Apr 17, 2026 that may be closed by this pull request
@dalibran dalibran temporarily deployed to testing-preview April 17, 2026 19:59 — with GitHub Actions Inactive
Remove specific security caveat content from the caution admonition,
replacing it with a neutral info admonition pointing to the Protocol
security page. Drop the Swift/Kotlin mobile bindings paragraph.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe we just need a .md file here as this is only static content?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If we want to keep the styled discord button, then we need .mdx. I can remove the button if you don't think it adds much.

dalibran and others added 2 commits May 13, 2026 15:08
Adds a Bridges page under Use Cases following the same structure as
Light wallets. Wires it into the Use Cases navbar dropdown and mirrors
the page into the maintained docs version.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Introduce a Case Studies docs section with a Daedalus entry covering
Mithril-based initial sync, including navbar dropdown, sidebar, and
wordmark styling.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@dalibran dalibran changed the title docs(website): add Use Cases section with Wallet integration guide docs(website): add Use Cases section with Light Wallets, Bridges; add Case Studies section with Daedalus May 13, 2026
Comment on lines +37 to +43
The easiest path for most bridge teams to integrate is using the official WASM package:

```bash
npm install @mithril-dev/mithril-client-wasm
```

It works in Node.js and in the browser, making it suitable for relayers, monitoring services, and validator software. All major browsers are supported — see the [Browser Compatibility](https://www.npmjs.com/package/@mithril-dev/mithril-client-wasm#browser-compatibility) section of the npm package for details. A [Rust crate](https://crates.io/crates/mithril-client) is also available for native services.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should primarily be the Rust client library or the Client CLI.

Comment thread docs/website/root/case-studies/daedalus.mdx
Comment thread docs/website/root/case-studies/daedalus.mdx Outdated

## How Mithril helps

Fresh installations of Daedalus now download a Mithril-certified snapshot of the Cardano node database and restore it locally, rather than replaying the chain. The snapshot's integrity is verified against the Mithril certificate chain, anchored in Cardano's stake distribution — so users get the same trust guarantees as a chain-replayed node, without the wait.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe you can specify how long it takes with Mithril: usually 30min to 1h depending on hardware and internet connection.

sidebar_label: Bridges
---

# Using Mithril for bridges
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This can also be applied to other layer 2 solutions I guess.


When a user locks assets on Cardano, the bridge needs to confirm that the lock transaction was included on-chain before authorizing the corresponding action on the destination chain. With Mithril, the bridge can verify this using a Merkle proof linked to a certificate signed by a stake-weighted quorum of SPOs. The proof can be checked locally, without trusting the source of the data.

This changes the bridge's security posture. The integrity of cross-chain transfers no longer depends on the honesty of any single data provider or on the operational security of any one node. A compromised API, a misconfigured indexer, or a hostile relayer cannot produce a valid Mithril proof — and a bridge that verifies proofs will reject anything that fails verification.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This part is not very clear: "and a bridge that verifies proofs will reject anything that fails verification."


### How it fits into existing bridge architectures

Most bridges have an off-chain component — relayers, validators, or watchers — that observes events on the source chain and submits attestations to the destination chain. Mithril does not replace this component. It strengthens it: instead of trusting whatever endpoint the relayer happens to query, the relayer verifies a Mithril proof against the current certificate chain before treating a Cardano transaction as final.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"final": it'd be better to say "certified".

Comment thread docs/website/root/use-cases/bridges.mdx Outdated
1. Observe the lock or burn transaction on Cardano
2. Query the Mithril aggregator for a transaction proof once the tx hash is known
3. Verify the proof against the current Mithril certificate chain
4. Treat the transaction as final and authorize the corresponding action on the destination chain.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Finality is a bit more complex:

  • with the legacy certification the transcactions are considered very likely final after 100 blocks. This may be enough for small transactions but not for bigger ones
  • with the upcoming certification, the criterion to determine if a transaction is considered final is left to the end user (who can use the depth from the tip of the chain at snapshot time to make a choice).

This also applies to the next paragraph.


## For bridge users

When a bridge supports Mithril, cross-chain transfers from Cardano are more secure. Whether you interact with the bridge directly, or through a wallet or aggregator that abstracts the swap behind a simpler interface, the underlying assertion is the same: that your Cardano transaction was actually included on-chain before the bridge took action on the other side.
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The term aggregator is ambiguous here.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

By aggregator I meant something like Jumper / Li.Fi that is aggregating different routes across various exchanges, bridges, etc. I will update the language

dalibran and others added 3 commits May 14, 2026 15:56
Co-authored-by: Jean-Philippe Raynaud <jp.raynaud@gmail.com>
Co-authored-by: Jean-Philippe Raynaud <jp.raynaud@gmail.com>
Replace the standalone Light Wallets page with a Wallets landing that
introduces both wallet shapes and surfaces the Light wallets integration
guide and the Daedalus case study as cards. Merge the separate Case
Studies section into Use Cases so the Daedalus study lives under
Wallets in the sidebar.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Improving Mithril Documentation

3 participants