diff --git a/packages/docs/Examples/chat.md b/packages/docs/Examples/chat.md
index 495f8d14d..cacf93546 100644
--- a/packages/docs/Examples/chat.md
+++ b/packages/docs/Examples/chat.md
@@ -37,7 +37,7 @@ class Chat extends Contract {
## Usage
-A new chat can be created using the [`new`](./API/new.md) function. Note that Bob can initially post to the chat and read it's state as Bob's public key was added by Alice to the `_owners` array and to the `_readers` array upon creation of the chat.
+A new chat can be created using the [`new`](../Lib/Computer/new.md) function. Note that Bob can initially post to the chat and read it's state as Bob's public key was added by Alice to the `_owners` array and to the `_readers` array upon creation of the chat.
Later, Alice called the `remove` function removing Bob's public key from these arrays. After this point Bob cannot read or write anymore.
diff --git a/packages/docs/Examples/non-fungible-token.md b/packages/docs/Examples/non-fungible-token.md
index da2956b5e..a9e5e91a7 100644
--- a/packages/docs/Examples/non-fungible-token.md
+++ b/packages/docs/Examples/non-fungible-token.md
@@ -25,7 +25,7 @@ export class NFT extends Contract {
## Usage
-To create an on-chain object of class `NFT`, you can use the [`new`](./API/new.md) function of the `Computer` class. The [`faucet`](./API/faucet.md) function funds the `sender` object on `regtest`. The `sender.new` function mints a new NFT and the `transfer` function send the NFT to another user.
+To create an on-chain object of class `NFT`, you can use the [`new`](../Lib/Computer/new.md) function of the `Computer` class. The [`faucet`](../Lib/Computer/faucet.md) function funds the `sender` object on `regtest`. The `sender.new` function mints a new NFT and the `transfer` function send the NFT to another user.
```ts
import { Computer } from '@bitcoin-computer/lib'
diff --git a/packages/docs/Lib/Computer/broadcast.md b/packages/docs/Lib/Computer/broadcast.md
index d3fdd83dc..e30de9552 100644
--- a/packages/docs/Lib/Computer/broadcast.md
+++ b/packages/docs/Lib/Computer/broadcast.md
@@ -21,3 +21,5 @@ If the broadcast is successful, it returns the transaction id. Otherwise, an err
## Example
:::code source="../../../lib/test/lib/computer/broadcast.test.ts" :::
+
+Sources
diff --git a/packages/docs/Lib/Computer/constructor.md b/packages/docs/Lib/Computer/constructor.md
index 9998a6040..5cbdcb699 100644
--- a/packages/docs/Lib/Computer/constructor.md
+++ b/packages/docs/Lib/Computer/constructor.md
@@ -46,3 +46,5 @@ An instance of the `Computer` class
## Examples
:::code source="../../../lib/test/lib/computer/constructor.test.ts" :::
+
+Sources
diff --git a/packages/docs/Lib/Computer/decode.md b/packages/docs/Lib/Computer/decode.md
index 9801224ec..eaf7b2f3a 100644
--- a/packages/docs/Lib/Computer/decode.md
+++ b/packages/docs/Lib/Computer/decode.md
@@ -37,3 +37,5 @@ The function `decode` is the inverse of `encode` when the latter is called with
## Example
:::code source="../../../lib/test/lib/computer/decode.test.ts" :::
+
+Sources
diff --git a/packages/docs/Lib/Computer/deploy.md b/packages/docs/Lib/Computer/deploy.md
index 69f9e7623..ed0a11aa8 100644
--- a/packages/docs/Lib/Computer/deploy.md
+++ b/packages/docs/Lib/Computer/deploy.md
@@ -55,3 +55,5 @@ import { c2 } from '5530cfcc89fde62c2cfab4eea56e3aa2d41071480b7b094d7a0131677671
import { c3 } from 'dc63fbf200595012b239d69936ac63e4155040042ef7d2e6dff4ca49dec3f51e:0' // stores '0'
export const s = c0 + c1 + c2 + c3
```
+
+Sources
diff --git a/packages/docs/Lib/Computer/encode.md b/packages/docs/Lib/Computer/encode.md
index ca61b3372..262e83ccc 100644
--- a/packages/docs/Lib/Computer/encode.md
+++ b/packages/docs/Lib/Computer/encode.md
@@ -57,11 +57,11 @@ An object with a specification to build a transaction according to the Bitcoin C
### Return Value
-It returns an object `{ tx, effect }` where `tx` is a [NakamotJS](../../NakamotoJs/) transaction and `effect` is an object with keys `res` and `env`. The `res` object contains the result of the evaluation. The `env` object has the same keys as the blockchain environment. However, whereas the values of the blockchain environment are revision strings, the values of `env` and the smart object at these revisions _after_ evaluating the expression.
+It returns an object `{ tx, effect }` where `tx` is a [NakamotoJS](../../NakamotoJs/) transaction and `effect` is an object with keys `res` and `env`. The `res` object contains the result of the evaluation. The `env` object has the same keys as the blockchain environment. However, whereas the values of the blockchain environment are revision strings, the values of `env` and the smart object at these revisions _after_ evaluating the expression.
## Description
-The `encode` function builds a Bitcoin transaction from a JavaScript expression. It returns a transaction and an object `effect` containing the result of the evaluation in a property `res`. If the expression contains undefined variables a blockchain environment `env` must be passed into `encode`. A _blockchain environment_ maps the named of the undefined variable to UTXOs containing on-chain objects. A [module specifier](#modules) can be provided in order to make the exports of that module are available to the evaluation. Other options can customize the funding and signing process. It is also to pass in an object specifying [mocked](../../tutorial.md#mocking) objects.
+The `encode` function builds a Bitcoin transaction from a JavaScript expression. It returns a transaction and an object `effect` containing the result of the evaluation in a property `res`. If the expression contains undefined variables a blockchain environment `env` must be passed into `encode`. A _blockchain environment_ maps the named of the undefined variable to UTXOs containing on-chain objects. A [module specifier](../../tutorial.md#module-system) can be provided in order to make the exports of that module are available to the evaluation. Other options can customize the funding and signing process. It is also to pass in an object specifying [mocked](../../tutorial.md#mocking) objects.
It is important to note that `encode` does not broadcast the transaction. Nonetheless the `effect` object reflects the on-chain state that will emerge once the transaction is broadcast.
@@ -75,3 +75,5 @@ The state update effected by a Bitcoin Computer transaction is completely predic
## Example
:::code source="../../../lib/test/lib/computer/encode.test.ts" :::
+
+Sources
diff --git a/packages/docs/Lib/Computer/encodeCall.md b/packages/docs/Lib/Computer/encodeCall.md
index 447bb53fd..773162d6f 100644
--- a/packages/docs/Lib/Computer/encodeCall.md
+++ b/packages/docs/Lib/Computer/encodeCall.md
@@ -44,3 +44,5 @@ See [`encode`](./encode.md).
## Example
:::code source="../../../lib/test/lib/computer/encode-call.test.ts" :::
+
+Sources
diff --git a/packages/docs/Lib/Computer/encodeNew.md b/packages/docs/Lib/Computer/encodeNew.md
index 431b8f3a3..5e7099bf1 100644
--- a/packages/docs/Lib/Computer/encodeNew.md
+++ b/packages/docs/Lib/Computer/encodeNew.md
@@ -38,3 +38,5 @@ See [`encode`](./encode.md).
## Example
:::code source="../../../lib/test/lib/computer/encode-new.test.ts" :::
+
+Sources
diff --git a/packages/docs/Lib/Computer/faucet.md b/packages/docs/Lib/Computer/faucet.md
index 37842c7cb..70725b90c 100644
--- a/packages/docs/Lib/Computer/faucet.md
+++ b/packages/docs/Lib/Computer/faucet.md
@@ -29,3 +29,5 @@ Funds a `Computer` object on regtest. A second parameter can provide an address
## Example
:::code source="../../../lib/test/lib/computer/faucet.test.ts" :::
+
+Sources
diff --git a/packages/docs/Lib/Computer/fund.md b/packages/docs/Lib/Computer/fund.md
index 4c97a5cc6..cc13ce2ff 100644
--- a/packages/docs/Lib/Computer/fund.md
+++ b/packages/docs/Lib/Computer/fund.md
@@ -40,3 +40,5 @@ If the wallet does not have sufficient funds, an error is thrown.
## Example
:::code source="../../../lib/test/lib/computer/fund.test.ts" :::
+
+Sources
diff --git a/packages/docs/Lib/Computer/getAddress.md b/packages/docs/Lib/Computer/getAddress.md
index 8c0a31dc5..6ac6d4ce8 100644
--- a/packages/docs/Lib/Computer/getAddress.md
+++ b/packages/docs/Lib/Computer/getAddress.md
@@ -21,3 +21,5 @@ computer.getAddress()
## Example
:::code source="../../../lib/test/lib/computer/get-address.test.ts" :::
+
+Sources
diff --git a/packages/docs/Lib/Computer/getBalance.md b/packages/docs/Lib/Computer/getBalance.md
index 6c0d03be2..8c6172869 100644
--- a/packages/docs/Lib/Computer/getBalance.md
+++ b/packages/docs/Lib/Computer/getBalance.md
@@ -19,3 +19,5 @@ Returns the confirmed balance in Satoshi, the unconfirmed balance, and the total
## Example
:::code source="../../../lib/test/lib/computer/get-balance.test.ts" :::
+
+Sources
diff --git a/packages/docs/Lib/Computer/getChain.md b/packages/docs/Lib/Computer/getChain.md
index 0e1a61e5a..d39821c43 100644
--- a/packages/docs/Lib/Computer/getChain.md
+++ b/packages/docs/Lib/Computer/getChain.md
@@ -17,3 +17,5 @@ Returns a string encoding the chain.
## Example
:::code source="../../../lib/test/lib/computer/get-chain.test.ts" :::
+
+Sources
diff --git a/packages/docs/Lib/Computer/getMnemonic.md b/packages/docs/Lib/Computer/getMnemonic.md
index 4ada150ce..fbc42e68d 100644
--- a/packages/docs/Lib/Computer/getMnemonic.md
+++ b/packages/docs/Lib/Computer/getMnemonic.md
@@ -19,3 +19,5 @@ You can set the mnemonic in the constructor of the `Computer` class. The mnemoni
## Example
:::code source="../../../lib/test/lib/computer/get-mnemonic.test.ts" :::
+
+Sources
diff --git a/packages/docs/Lib/Computer/getNetwork.md b/packages/docs/Lib/Computer/getNetwork.md
index 21f91ef12..ebaad77d9 100644
--- a/packages/docs/Lib/Computer/getNetwork.md
+++ b/packages/docs/Lib/Computer/getNetwork.md
@@ -15,3 +15,5 @@ Returns a string encoding the network.
## Example
:::code source="../../../lib/test/lib/computer/get-network.test.ts" :::
+
+Sources
diff --git a/packages/docs/Lib/Computer/getPassphrase.md b/packages/docs/Lib/Computer/getPassphrase.md
index 95d053fa9..c659ffc90 100644
--- a/packages/docs/Lib/Computer/getPassphrase.md
+++ b/packages/docs/Lib/Computer/getPassphrase.md
@@ -19,3 +19,5 @@ The passphrase can be set in the `Computer` constructor. It defaults to an empty
## Example
:::code source="../../../lib/test/lib/computer/get-passphrase.test.ts" :::
+
+Sources
diff --git a/packages/docs/Lib/Computer/getPrivateKey.md b/packages/docs/Lib/Computer/getPrivateKey.md
index 8ddacb246..a645f40eb 100644
--- a/packages/docs/Lib/Computer/getPrivateKey.md
+++ b/packages/docs/Lib/Computer/getPrivateKey.md
@@ -15,3 +15,5 @@ Returns a string encoded BIP32 private key.
## Example
:::code source="../../../lib/test/lib/computer/get-private-key.test.ts" :::
+
+Sources
diff --git a/packages/docs/Lib/Computer/getPublicKey.md b/packages/docs/Lib/Computer/getPublicKey.md
index 50d150218..c0cec1896 100644
--- a/packages/docs/Lib/Computer/getPublicKey.md
+++ b/packages/docs/Lib/Computer/getPublicKey.md
@@ -15,3 +15,5 @@ A string encoding BIP32 public key.
## Example
:::code source="../../../lib/test/lib/computer/get-public-key.test.ts" :::
+
+Sources
diff --git a/packages/docs/Lib/Computer/getUtxos.md b/packages/docs/Lib/Computer/getUtxos.md
index 2674d369a..c21e54797 100644
--- a/packages/docs/Lib/Computer/getUtxos.md
+++ b/packages/docs/Lib/Computer/getUtxos.md
@@ -25,3 +25,5 @@ The UTXOs returned are guaranteed to not contain any on-chain objects. This make
## Example
:::code source="../../../lib/test/lib/computer/get-utxos.test.ts" :::
+
+Sources
diff --git a/packages/docs/Lib/Computer/getVersion.md b/packages/docs/Lib/Computer/getVersion.md
index a59e00028..a0a1686f3 100644
--- a/packages/docs/Lib/Computer/getVersion.md
+++ b/packages/docs/Lib/Computer/getVersion.md
@@ -15,3 +15,5 @@ The current version
## Example
:::code source="../../../lib/test/lib/computer/get-version.test.ts" :::
+
+Sources
diff --git a/packages/docs/Lib/Computer/load.md b/packages/docs/Lib/Computer/load.md
index 142dfd572..1a018ac0a 100644
--- a/packages/docs/Lib/Computer/load.md
+++ b/packages/docs/Lib/Computer/load.md
@@ -21,3 +21,5 @@ A JavaScript module.
## Example
:::code source="../../../lib/test/lib/computer/load.test.ts" :::
+
+Sources
diff --git a/packages/docs/Lib/Computer/new.md b/packages/docs/Lib/Computer/new.md
index cfefff7c8..6ea32d982 100644
--- a/packages/docs/Lib/Computer/new.md
+++ b/packages/docs/Lib/Computer/new.md
@@ -52,3 +52,5 @@ On-chain objects can be freely combines: you can pass an on-chain object as a pa
## Example
:::code source="../../../lib/test/lib/computer/new.test.ts" :::
+
+Sources
diff --git a/packages/docs/Lib/Computer/next.md b/packages/docs/Lib/Computer/next.md
index 5a2fdf981..39c8e48fe 100644
--- a/packages/docs/Lib/Computer/next.md
+++ b/packages/docs/Lib/Computer/next.md
@@ -25,3 +25,5 @@ Given the revision of an on-chain object, the function returns the next revision
## Example
:::code source="../../../lib/test/lib/computer/next.test.ts" :::
+
+Sources
diff --git a/packages/docs/Lib/Computer/prev.md b/packages/docs/Lib/Computer/prev.md
index 24e0a627c..40ee32ce4 100644
--- a/packages/docs/Lib/Computer/prev.md
+++ b/packages/docs/Lib/Computer/prev.md
@@ -25,3 +25,5 @@ Given the revision of an on-chain object, the function returns the previous revi
## Example
:::code source="../../../lib/test/lib/computer/prev.test.ts" :::
+
+Sources
diff --git a/packages/docs/Lib/Computer/query.md b/packages/docs/Lib/Computer/query.md
index 123391b18..ad093a418 100644
--- a/packages/docs/Lib/Computer/query.md
+++ b/packages/docs/Lib/Computer/query.md
@@ -49,3 +49,5 @@ Conditions can be passed in to determine the on-chain objects. When multiple con
## Example
:::code source="../../../lib/test/lib/computer/query.test.ts" :::
+
+Sources
diff --git a/packages/docs/Lib/Computer/rpcCall.md b/packages/docs/Lib/Computer/rpcCall.md
index eb542bcf4..6f87c5aca 100644
--- a/packages/docs/Lib/Computer/rpcCall.md
+++ b/packages/docs/Lib/Computer/rpcCall.md
@@ -25,3 +25,5 @@ A JSON object with the result of the rpc method call.
## Example
:::code source="../../../lib/test/lib/computer/rpc-call.test.ts" :::
+
+Sources
diff --git a/packages/docs/Lib/Computer/send.md b/packages/docs/Lib/Computer/send.md
index 682a8edf8..63b48d671 100644
--- a/packages/docs/Lib/Computer/send.md
+++ b/packages/docs/Lib/Computer/send.md
@@ -25,3 +25,5 @@ If successful, it returns the id of the transaction broadcast.
## Example
:::code source="../../../lib/test/lib/computer/send.test.ts" :::
+
+Sources
diff --git a/packages/docs/Lib/Computer/sign.md b/packages/docs/Lib/Computer/sign.md
index 2c922286c..646d53ee9 100644
--- a/packages/docs/Lib/Computer/sign.md
+++ b/packages/docs/Lib/Computer/sign.md
@@ -45,3 +45,5 @@ This is useful in the case of partially signed transactions, where a user can en
## Example
:::code source="../../../lib/test/lib/computer/sign.test.ts" :::
+
+Sources
diff --git a/packages/docs/Lib/Computer/subscribe.md b/packages/docs/Lib/Computer/subscribe.md
index 5644a8180..19fa1baf0 100644
--- a/packages/docs/Lib/Computer/subscribe.md
+++ b/packages/docs/Lib/Computer/subscribe.md
@@ -37,3 +37,5 @@ The function enables real-time updates via Server-Sent Events (SSEs). The functi
## Example
:::code source="../../../lib/test/lib/computer/subscribe.test.ts" :::
+
+Sources
diff --git a/packages/docs/Lib/Computer/sync.md b/packages/docs/Lib/Computer/sync.md
index 232b53c66..ce8f58b79 100644
--- a/packages/docs/Lib/Computer/sync.md
+++ b/packages/docs/Lib/Computer/sync.md
@@ -44,3 +44,5 @@ If the function is called with a transaction id, it returns an object of type `{
## Example
:::code source="../../../lib/test/lib/computer/sync.test.ts" :::
+
+Sources
diff --git a/packages/docs/Lib/index.md b/packages/docs/Lib/index.md
index 8c1875afe..5fbda7ffa 100644
--- a/packages/docs/Lib/index.md
+++ b/packages/docs/Lib/index.md
@@ -1,6 +1,7 @@
---
order: -40
icon: book
+expanded: false
---
# Lib
@@ -10,7 +11,7 @@ The Bitcoin Computer Library has the exports below.
{.compact}
| Class | Description |
|-----------------------|-----------------------------------------|
-| [Computer](./Computer) | Read and write smart contracts |
+| [Computer](./Computer/) | Read and write smart contracts |
| [Transaction](./Transaction/) | Parse Bitcoin Computer transactions |
| [Contract](./Contract//) | Extend from this class to create smart contracts |
| [Mock](./Mock/) | Mock on-chain objects |
diff --git a/packages/docs/Lib/index.yml b/packages/docs/Lib/index.yml
deleted file mode 100644
index a5193d3a9..000000000
--- a/packages/docs/Lib/index.yml
+++ /dev/null
@@ -1,3 +0,0 @@
-order: -60
-icon: book
-expanded: false
diff --git a/packages/docs/Node/index.md b/packages/docs/Node/index.md
index 654b92a2c..46d9b4683 100644
--- a/packages/docs/Node/index.md
+++ b/packages/docs/Node/index.md
@@ -287,17 +287,7 @@ The variables `CHAIN` and `NETWORK` are used to define the chain and network tha
{.compact}
| Method | Description |
|-------------------------------------|----------------------------------------------------|
-| [height](./height.md) | Get the height of an specific block. |
-| [mine](./mine.md) | Mine an specific number of blocks to a random address. |
-| [rpc](./height.md) | Call a Bitcoin RPC method. |
-
-#### Regtest Faucet
-
-{.compact}
-| Method | Description |
-|-------------------------------------|----------------------------------------------------|
-| [faucet](./faucet.md) | Get coins from the faucet. |
-| [faucetScript](./faucetScript.md) | Get coins from the faucet using a script. |
+| [rpc](./rpc.md) | Call a Bitcoin RPC method. |
#### Query revisions
@@ -310,14 +300,6 @@ The variables `CHAIN` and `NETWORK` are used to define the chain and network tha
| [revs](./revs.md) | Get the revisions of a list of transactions. |
| [revToId](./revtoid.md) | Given a revision, get the id of the smart contract. |
-#### OffChain
-
-{.compact}
-| Method | Description |
-|-------------------------------------|----------------------------------------------------|
-| [id](./faucet.md) | Get the data stored in the offchain storage. |
-| [store](./faucetScript.md) | Stores the hex of the data in the offchain storage. |
-