Skip to content

Commit b424a32

Browse files
committed
sync docs
1 parent 978f7a5 commit b424a32

File tree

8 files changed

+1102
-4
lines changed

8 files changed

+1102
-4
lines changed

docs/index.mdx

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ A single, universal signing interface for any network. Birthed from the intercha
4646
- [Supported Networks](#supported-networks)
4747
- [Cosmos Network](#cosmos-network)
4848
- [Injective Network](#injective-network)
49+
- [Solana Network](#solana-network)
4950
- [Ethereum Network](#ethereum-network)
5051
- [Interchain JavaScript Stack ⚛️](#interchain-javascript-stack-️)
5152
- [Credits](#credits)
@@ -61,7 +62,7 @@ At its core, InterchainJS provides a **flexible adapter pattern** that abstracts
6162

6263
InterchainJS sits at the foundation of the **[Interchain JavaScript Stack](https://hyperweb.io/stack)**, a set of tools that work together like nested building blocks:
6364

64-
- **[InterchainJS](https://hyperweb.io/stack/interchainjs)** → Powers signing across Cosmos, Ethereum (EIP-712), and beyond.
65+
- **[InterchainJS](https://hyperweb.io/stack/interchainjs)** → Powers signing across Cosmos, Solana, Ethereum (EIP-712), and beyond.
6566
- **[Interchain Kit](https://hyperweb.io/stack/interchain-kit)** → Wallet adapters that connect dApps to multiple blockchain networks.
6667
- **[Interchain UI](https://hyperweb.io/stack/interchain-ui)** → A flexible UI component library for seamless app design.
6768
- **[Create Interchain App](https://hyperweb.io/stack/create-interchain-app)** → A developer-friendly starter kit for cross-chain applications.
@@ -76,6 +77,7 @@ The diagram below illustrates how InterchainJS connects different signer types t
7677
graph LR
7778
signers --> cosmos_signer["Cosmos Network"]
7879
signers --> injective_signer["Injective Network"]
80+
signers --> solana_signer["Solana Network"]
7981
signers --> ethereum_signer["Ethereum Network"]
8082
signers --> implement_signer["ANY Network"]
8183
@@ -88,6 +90,8 @@ graph LR
8890
injective_signer --> injective_amino["Amino Signer"]
8991
injective_signer --> injective_direct["Direct Signer"]
9092
93+
solana_signer --> solana_std["Standard Signer"]
94+
9195
implement_signer --> any_signer["Any Signer"]
9296
9397
style signers fill:#f9f,stroke:#333,stroke-width:2px
@@ -236,6 +240,17 @@ Then an authz example website will be created and users can take a look how sign
236240

237241
---
238242

243+
### Solana Network
244+
245+
Build on the request-object query client with automatic protocol detection and wallet-aware workflows.
246+
247+
| Feature | Package |
248+
| ---------------------------- | -------------------------------------------------------- |
249+
| **Query & Transactions** | [@interchainjs/solana](https://docs.hyperweb.io/interchain-js/networks/solana) |
250+
| **Standard Signer (`solana_std`)** | [Solana Signer Guide](./libs/interchainjs/README.md#solana-signers-solana_std) |
251+
252+
---
253+
239254
### Ethereum Network
240255

241256
| Feature | Package |

docs/libs/interchainjs/index.mdx

Lines changed: 57 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,7 @@ npm install interchainjs
7373
- [Supported Networks](#supported-networks)
7474
- [Cosmos Network](#cosmos-network)
7575
- [Injective Network](#injective-network)
76+
- [Solana Network](#solana-network)
7677
- [Ethereum Network](#ethereum-network)
7778
- [Developing](#developing)
7879
- [Codegen](#codegen)
@@ -90,7 +91,7 @@ At its core, InterchainJS provides a **flexible adapter pattern** that abstracts
9091

9192
InterchainJS sits at the foundation of the **[Interchain JavaScript Stack](https://hyperweb.io/stack)**, a set of tools that work together like nested building blocks:
9293

93-
- **[InterchainJS](https://hyperweb.io/stack/interchainjs)** → Powers signing across Cosmos, Ethereum (EIP-712), and beyond.
94+
- **[InterchainJS](https://hyperweb.io/stack/interchainjs)** → Powers signing across Cosmos, Solana, Ethereum (EIP-712), and beyond.
9495
- **[Interchain Kit](https://hyperweb.io/stack/interchain-kit)** → Wallet adapters that connect dApps to multiple blockchain networks.
9596
- **[Interchain UI](https://hyperweb.io/stack/interchain-ui)** → A flexible UI component library for seamless app design.
9697
- **[Create Interchain App](https://hyperweb.io/stack/create-interchain-app)** → A developer-friendly starter kit for cross-chain applications.
@@ -105,6 +106,7 @@ The diagram below illustrates how InterchainJS connects different signer types t
105106
graph LR
106107
signers --> cosmos_signer["Cosmos Network"]
107108
signers --> injective_signer["Injective Network"]
109+
signers --> solana_signer["Solana Network"]
108110
signers --> ethereum_signer["Ethereum Network"]
109111
signers --> implement_signer["ANY Network"]
110112
@@ -117,6 +119,8 @@ graph LR
117119
injective_signer --> injective_amino["Amino Signer"]
118120
injective_signer --> injective_direct["Direct Signer"]
119121
122+
solana_signer --> solana_std["Standard Signer"]
123+
120124
implement_signer --> any_signer["Any Signer"]
121125
122126
style signers fill:#f9f,stroke:#333,stroke-width:2px
@@ -150,6 +154,7 @@ The following resources provide comprehensive guidance for developers working wi
150154
| **Create Interchain App** | [Create Interchain App](https://github.com/hyperweb-io/create-interchain-app) |
151155
| **Building a Custom Signer** | [Building a Custom Signer](/docs/building-a-custom-signer.md) |
152156
| **Advanced Documentation** | [View Docs](/docs/) |
157+
| **Solana Network Guide** | [@interchainjs/solana](/networks/solana/README.md) |
153158

154159
### RPC Clients
155160

@@ -666,6 +671,8 @@ interface CosmosSignerOptions {
666671

667672
Solana signers require an `ISolanaQueryClient` and either a Solana `Keypair` or an `IWallet` implementation that exposes Solana-compatible accounts. Configuration options include:
668673

674+
Pair the signer with the request-object query clients created via `createSolanaQueryClient` for consistent RPC typing. See the full Solana workflows in `/networks/solana/README.md`.
675+
669676
```typescript
670677
interface SolanaSignerOptions {
671678
// Required
@@ -766,6 +773,44 @@ const signer = getSigner<DirectSigner>(offlineSigner, {
766773
});
767774
```
768775

776+
#### Solana Standard Signer
777+
778+
```typescript
779+
import { getSigner, SOLANA_STD } from '@interchainjs/interchain/core';
780+
import {
781+
createSolanaQueryClient,
782+
DEVNET_ENDPOINT,
783+
Keypair,
784+
PublicKey,
785+
SolanaSigner,
786+
SystemProgram,
787+
solToLamports
788+
} from '@interchainjs/solana';
789+
790+
const queryClient = await createSolanaQueryClient(DEVNET_ENDPOINT);
791+
const wallet = Keypair.generate();
792+
793+
const solanaSigner = getSigner<SolanaSigner>(wallet, {
794+
preferredSignType: SOLANA_STD,
795+
signerOptions: {
796+
queryClient,
797+
commitment: 'confirmed'
798+
}
799+
});
800+
801+
const result = await solanaSigner.signAndBroadcast({
802+
instructions: [
803+
SystemProgram.transfer({
804+
fromPubkey: wallet.publicKey,
805+
toPubkey: new PublicKey('11111111111111111111111111111112'),
806+
lamports: solToLamports(0.05)
807+
})
808+
]
809+
});
810+
811+
console.log('Transaction signature:', result.signature);
812+
```
813+
769814
#### Ethereum Legacy Signer
770815

771816
```typescript
@@ -1097,6 +1142,17 @@ The `@interchainjs/pubkey` package provides utilities for working with pubkeys.
10971142

10981143
---
10991144

1145+
### Solana Network
1146+
1147+
Leverage the request-object query client with automatic protocol detection and the `solana_std` signer for wallet-friendly workflows.
1148+
1149+
| Feature | Package |
1150+
| ---------------------------- | -------------------------------------------------------- |
1151+
| **Query & Transactions** | [@interchainjs/solana](/networks/solana/README.md) |
1152+
| **Standard Signer (`solana_std`)** | [Solana Signer Guide](#solana-signers-solana_std) |
1153+
1154+
---
1155+
11001156
### Ethereum Network
11011157

11021158
| Feature | Package |

docs/networks/solana/_meta.json

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
11
{
2-
"index": "Overview"
2+
"index": "Overview",
3+
"rpc": "Rpc",
4+
"starship": "Starship"
35
}

0 commit comments

Comments
 (0)