-
Notifications
You must be signed in to change notification settings - Fork 23
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
121 additions
and
5 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,9 +1,125 @@ | ||
# Solana Co Learn | ||
|
||
> Prower by Docusaurus | ||
## Solana 入门 | ||
|
||
## Content | ||
Rust 速览、Solana Local Node、Solana CLI Tools、Network Wallet 交互 | ||
|
||
- [Awesome solana zh](./docs/awesome-solana-zh/README.mdx) | ||
- [Solana-Co-Learn](./docs/Solana-Co-Learn/README.mdx) | ||
- [Solana Cookbook Zh](./docs/cookbook-zh/README.md) | ||
### 1. Rust 速览 | ||
|
||
🔗 [Rust 共学文档](https://github.com/CreatorsDAO/rust-co-learn/blob/main/rust-co-learn.md) | ||
|
||
- **环境安装** | ||
- **Cargo 使用配置** | ||
- **Rust 语法基础** | ||
- 变量(可变量、类型、复合类型、引用、集合、结构体、枚举) | ||
- 函数、闭包 | ||
- 泛型 | ||
- 控制流 | ||
- 模式匹配 | ||
- 注释 | ||
|
||
### 2. Solana Local Node | ||
|
||
🔗 [CLI 安装指南](https://solana.com/zh/developers/guides/getstarted/setup-local-development) | ||
|
||
- **CLI 安装** | ||
- **操作指南** | ||
- 初始化账户,秘钥对,获得 airdrop | ||
- 导入导出秘钥,切换网络 | ||
- 启动本地节点,监控 logs | ||
|
||
### 3. Network Wallet交互 | ||
|
||
- **浏览器扩展安装** | ||
- Backpack | ||
- Phantom | ||
- **账户操作** | ||
- 初始化账户,导入导出秘钥 | ||
- 网络浏览器查看账户、交易 | ||
|
||
## Solana Native | ||
|
||
使用Solana Native开发、读写 Account Data、Account 数据传输序列化,数据检查(TypeScript SDK基本使用) | ||
|
||
### 1. Solana Native | ||
|
||
[Hello world](https://solana.com/zh/developers/guides/getstarted/local-rust-hello-world) | ||
|
||
- 编译合约、部署合约、调用合约 | ||
- 区块浏览器查看合约 | ||
|
||
### 2. Account 数据基本读写 | ||
|
||
[实例实现数据读写](https://creatorsdao.github.io/solana-co-learn/Solana-Co-Learn/module3/native-solana-development/build-a-movie-review-program/) | ||
|
||
[状态管理和序列化](https://creatorsdao.github.io/solana-co-learn/Solana-Co-Learn/module3/native-solana-development/state-management/) | ||
|
||
- 合约读取数据 | ||
- 合约使用PDA 账户 | ||
- 迭代用户 | ||
- 序列化反序列化数据 | ||
|
||
### 3. TypeScript SDK | ||
|
||
[https://solana.com/docs/clients/javascript](https://solana.com/docs/clients/javascript) | ||
[https://solana.com/docs/clients/javascript-reference](https://solana.com/docs/clients/javascript-reference) | ||
|
||
- 生成账户 | ||
- 获取 airdrop | ||
- 读取account 数据 | ||
- 通过指令调用合约 | ||
|
||
## Anchor Framework | ||
|
||
[https://www.anchor-lang.com/](https://www.anchor-lang.com/) | ||
|
||
### 1. 合约部分 | ||
|
||
- 安装 anchor [https://www.anchor-lang.com/docs/installation](https://www.anchor-lang.com/docs/installation) | ||
- anchor 程序基本结构 [https://www.anchor-lang.com/docs/high-level-overview](https://www.anchor-lang.com/docs/high-level-overview) | ||
- account 数据传递 [https://www.anchor-lang.com/docs/the-accounts-struct](https://www.anchor-lang.com/docs/the-accounts-struct) | ||
- 不同的调用 [https://www.anchor-lang.com/docs/the-program-module](https://www.anchor-lang.com/docs/the-program-module) | ||
|
||
### 2. 客户端部分 | ||
|
||
[https://creatorsdao.github.io/solana-co-learn/Solana-Co-Learn/module5/anchor-on-the-front-end/anchor-into-typescript/](https://creatorsdao.github.io/solana-co-learn/Solana-Co-Learn/module5/anchor-on-the-front-end/anchor-into-typescript/) | ||
|
||
- 连接钱包 | ||
- 获取合约的 IDL 数据,初始化 program 对象 | ||
- 调用合约方法 | ||
- 发送交易 | ||
- 构建一个完整的Anchor的Solana应用 | ||
|
||
## Solana 进阶 | ||
|
||
### 1. PDA 生命周期 | ||
|
||
[https://solanacookbook.com/zh/core-concepts/pdas.html#%E7%BB%BC%E8%BF%B0](https://solanacookbook.com/zh/core-concepts/pdas.html#%E7%BB%BC%E8%BF%B0) | ||
|
||
- 生成 PDA 地址 (合约部分,客户端) | ||
- 创建 PDA 账户 (合约创建) | ||
- 写入 数据 到 PDA | ||
|
||
### 2. CPI 调用 | ||
|
||
[https://solana.com/docs/core/cpi](https://solana.com/docs/core/cpi) | ||
|
||
- 合约内部如何调用其他程序 | ||
|
||
### 3. SPL Token | ||
|
||
[https://spl.solana.com/token](https://spl.solana.com/token) | ||
[https://www.quicknode.com/guides/solana-development/spl-tokens/how-to-create-a-fungible-spl-token-with-the-new-metaplex-token-standard](https://www.quicknode.com/guides/solana-development/spl-tokens/how-to-create-a-fungible-spl-token-with-the-new-metaplex-token-standard) | ||
|
||
- 创建 Token | ||
- mint Token | ||
- 添加 Metadata | ||
|
||
### 4. NFT | ||
|
||
[https://creatorsdao.github.io/solana-co-learn/Solana-Co-Learn/module2/nfts-and-minting-with-metaplex/](https://creatorsdao.github.io/solana-co-learn/Solana-Co-Learn/module2/nfts-and-minting-with-metaplex/) | ||
|
||
[https://creatorsdao.github.io/solana-co-learn/Solana-Co-Learn/module2/displayings-nfts-in-a-ui/displaying-nfts/](https://creatorsdao.github.io/solana-co-learn/Solana-Co-Learn/module2/displayings-nfts-in-a-ui/displaying-nfts/) | ||
|
||
- Metaplex SDK 发布 NFT | ||
- 获取不同的NFT |