From 6e75905653c1b7681340a5860931de29b4be805a Mon Sep 17 00:00:00 2001 From: Filip Stoyanov Date: Wed, 11 Dec 2024 17:56:58 +0000 Subject: [PATCH 1/2] filip(fix): add config for trailing slashes --- docs/docusaurus.config.js | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/docusaurus.config.js b/docs/docusaurus.config.js index 1b19eb322e0..5adcb21903d 100644 --- a/docs/docusaurus.config.js +++ b/docs/docusaurus.config.js @@ -24,6 +24,7 @@ const config = { projectName: "Hydra", staticDirectories: ["static", customFields.apiSpecDir], customFields, + trailingSlash: false, scripts: [ { From 3f7dc685f02e21142522f27d7d733445469caecb Mon Sep 17 00:00:00 2001 From: Noon van der Silk Date: Wed, 18 Dec 2024 10:37:35 +0000 Subject: [PATCH 2/2] Fix some links --- docs/docs/dev/architecture/hydra-components.svg | 2 +- docs/docs/dev/architecture/index.md | 2 +- docs/docs/dev/index.md | 2 +- docs/docs/index.md | 4 ++-- docs/docs/tutorial/index.md | 2 +- docs/topologies/managed/index.mdx | 4 ++-- 6 files changed, 8 insertions(+), 8 deletions(-) diff --git a/docs/docs/dev/architecture/hydra-components.svg b/docs/docs/dev/architecture/hydra-components.svg index e90a61e48f6..9a1de784238 100644 --- a/docs/docs/dev/architecture/hydra-components.svg +++ b/docs/docs/dev/architecture/hydra-components.svg @@ -1 +1 @@ -Hydra ComponentsHydra Node[Container]«component»Persistence[JSON/FS] Persists state of the head ondisk«component»Head Logic Maintains internal Head stateand processes events«component»API Server Handle client commands &queries and serves outputs«component»Chain Connection to CardanoObserve txs on-chain andpost tx to chain«component»Wallet Embedded Wallet to signtransactions and pay fees«component»Network Manages connections topeers«component»Logging Dump JSON to stdout«component»Monitoring Exposes Prometheusmetrics«external»«component»Cardano Ledger Maintains Layer 2 State«container»Hydra Node (peer)[Local cardano-node]«container»Cardano Node[Local cadano-node]«container»Cardano Node (peer)[Local cardano-node]«container»Hydra Client«component»Hydra SmartContracts[Plutus] On-chain smart contractscontrolling the behaviour ofthe protocol on-chainHydra ProtocolMessagesClientInput &ServerOutputObservation &OnChainTxApply TxSign transactionsUse.[N2C protocol].[N2N protocol].[N2C protocol].[Hydra Networkprotocol].[JSON/Websocket] \ No newline at end of file +Hydra ComponentsHydra ComponentsHydra Node[container]«component»Persistence[JSON/FS] Persists state of the headon disk«component»Head Logic Maintains internal Headstate and processes events«component»API Server Handle client commands &queries and serves outputs«component»Chain Connection to CardanoObserve txs on-chain andpost tx to chain«component»Wallet Embedded Wallet to signtransactions and pay fees«component»Network Manages connections topeers«component»Logging Dump JSON to stdout«component»Monitoring Exposes Prometheusmetrics«external»«component»Cardano Ledger Maintains Layer 2 State«container»Hydra Node (peer)[Local cardano-node]«container»Cardano Node[Local cadano-node]«container»Cardano Node (peer)[Local cardano-node]«container»Hydra Client«component»Hydra SmartContracts[Plutus] On-chain smart contractscontrolling the behaviour ofthe protocol on-chainHydra ProtocolMessagesClientInput &ServerOutputObservation &OnChainTxApply TxSign transactionsUse.[N2C protocol].[N2N protocol].[N2C protocol].[Hydra Networkprotocol].[JSON/Websocket] \ No newline at end of file diff --git a/docs/docs/dev/architecture/index.md b/docs/docs/dev/architecture/index.md index acec9ea71ba..784d34498ae 100644 --- a/docs/docs/dev/architecture/index.md +++ b/docs/docs/dev/architecture/index.md @@ -23,7 +23,7 @@ $ plantuml -Tsvg architecture-c4.puml ### Network -The _network_ component is responsible for communication between Hydra nodes related to the off-chain part of the Hydra protocol. See [Networking](./networking) for details. +The _network_ component is responsible for communication between Hydra nodes related to the off-chain part of the Hydra protocol. See [Networking](./architecture/networking) for details. ### Chain interaction diff --git a/docs/docs/dev/index.md b/docs/docs/dev/index.md index 054fa349b47..9835ee68c8e 100644 --- a/docs/docs/dev/index.md +++ b/docs/docs/dev/index.md @@ -4,4 +4,4 @@ If you've read the [user manual](../index.md) and want to learn more about the H The developer documentation provides detailed materials that move beyond just _using_ Hydra to _understanding_ it. This section is for anyone looking to gain a comprehensive understanding of the Hydra protocol, including protocol architects interested in developing their own variants and developers contributing to the [reference implementation](https://github.com/input-output-hk/hydra) of Hydra. -The following sections are more technical and may be less cohesive than the user manual. However, the [architecture](./architecture) and the [specification](./specification) sections are good starting points. +The following sections are more technical and may be less cohesive than the user manual. However, the [architecture](./dev/architecture) and the [specification](./dev/specification) sections are good starting points. diff --git a/docs/docs/index.md b/docs/docs/index.md index 5640f776602..4c69743b4a2 100644 --- a/docs/docs/index.md +++ b/docs/docs/index.md @@ -4,7 +4,7 @@ This section is a manual for users interested in running a Hydra node. Hydra node is an implementation of the Hydra Head protocol, designed to enable fast and low-cost transactions by operating off-chain while leveraging the security of the main Cardano blockchain. -Decentralized applications (DApps), exchanges, and enterprise-level services can choose to run a Hydra node to participate in forming Hydra heads – mini-ledgers that process transactions independently and in parallel, significantly enhancing throughput and reducing latency. +Decentralized applications (DApps), exchanges, and enterprise-level services can choose to run a Hydra node to participate in forming Hydra heads – mini-ledgers that process transactions independently and in parallel, significantly enhancing throughput and reducing latency. The `hydra-node` interfaces with the Cardano blockchain, connects to other `hydra-nodes` on a dedicated overlay network, runs a simplified (coordinated) Hydra Head protocol, and provides an API for clients. @@ -32,7 +32,7 @@ implied terms are excluded to the fullest extent permitted by law. For details, see also sections 7, 8 and 9 of the [Apache 2.0 License][license]. ::: -Now, without further ado, you can learn more about the protocol by visiting the [protocol overview page](./protocol-overview) or directly dive into [getting started using a local devnet](./getting-started). +Now, without further ado, you can learn more about the protocol by visiting the [protocol overview page](./docs/protocol-overview) or directly dive into [getting started using a local devnet](./docs/getting-started). [known-issues]: ./known-issues.md [license]: https://github.com/cardano-scaling/hydra/blob/master/LICENSE diff --git a/docs/docs/tutorial/index.md b/docs/docs/tutorial/index.md index 648f6afde7c..c819eeb60f9 100644 --- a/docs/docs/tutorial/index.md +++ b/docs/docs/tutorial/index.md @@ -386,7 +386,7 @@ In summary, the Hydra head participants exchanged and agreed on: ## Step 3. Start the Hydra node -Scripts are pre-published for all [released](https://github.com/cardano-scaling/hydra/releases) HYDRA_VERSIONs of the `hydra-node` and common Cardano networks. Consult the [user manual](../configuration#reference-scripts) for guidance on publishing your own scripts. +Scripts are pre-published for all [released](https://github.com/cardano-scaling/hydra/releases) HYDRA_VERSIONs of the `hydra-node` and common Cardano networks. Consult the [user manual](../docs/configuration#reference-scripts) for guidance on publishing your own scripts. Start the `hydra-node` using these parameters: diff --git a/docs/topologies/managed/index.mdx b/docs/topologies/managed/index.mdx index 8da6cc501ad..02780390135 100644 --- a/docs/topologies/managed/index.mdx +++ b/docs/topologies/managed/index.mdx @@ -21,7 +21,7 @@ This document outlines the _managed Hydra head_ topology, which could also be de />

-The [basic Hydra head setup](../basic) requires each participant to host an instance of a `hydra-node`, similar to how `cardano-node`s operate on the Cardano network. In contrast, 'light node' setups allow users to access the blockchain through a hosted API, with light wallets being a common example. +The [basic Hydra head setup](./basic) requires each participant to host an instance of a `hydra-node`, similar to how `cardano-node`s operate on the Cardano network. In contrast, 'light node' setups allow users to access the blockchain through a hosted API, with light wallets being a common example. In this topology, clients do not need to run their own `hydra-node`s but instead access a `hydra-node` provided by a _service provider_. Client applications, such as light wallets, do not need to be aware of individual `hydra-node` instances. Instead, logical _Hydra heads_ are accessible via an API. @@ -30,6 +30,6 @@ For this setup to be feasible, it is crucial that the _Hydra keys_ remain on the As a result, the client must be online for any progress to occur within a Hydra head. This requirement can be cumbersome in multi-party Hydra heads, as they may stall if a lightweight mobile client is offline for a period. However, this setup aligns well with _two-party Hydra heads_, where a transaction is only completed if both parties are online to send, receive, and acknowledge it. -An example use case for two-party Hydra heads includes payment channels between two [machines](../../use-cases/payments/pay-per-use-api) or [individuals](../../use-cases/payments/inter-wallet-payments), especially if such multiple channels are logically interconnected, similar to the Lightning Network. +An example use case for two-party Hydra heads includes payment channels between two [machines](./../use-cases/payments/pay-per-use-api) or [individuals](./../use-cases/payments/inter-wallet-payments), especially if such multiple channels are logically interconnected, similar to the Lightning Network. Although access to Hydra heads is facilitated by the service provider, this does not centralize the system. A client can always close a head and recover funds with an alternative provider or even use a transaction created out-of-band (eg, by the client application using another service to submit the transaction).