Add nostrlib to agents stuff
This commit is contained in:
@@ -0,0 +1,7 @@
|
|||||||
|
Refer to @book/SUMMARY.md for a table of contents. Find a chapter that has not yet been written, then execute your /research-chapter, /plan-chapter, and /write-chapter skills for the chapter.
|
||||||
|
|
||||||
|
Validation after this process is complete:
|
||||||
|
|
||||||
|
- Make sure the chapter is concise, correct, and makes sense in context of the book
|
||||||
|
- Add tests to the tests directory
|
||||||
|
- Make sure that the project compiles and the tests complete
|
||||||
@@ -33,8 +33,6 @@ Draw on the research to make your questions specific and informed. Areas to expl
|
|||||||
introduced? What prior knowledge can we assume from earlier chapters?
|
introduced? What prior knowledge can we assume from earlier chapters?
|
||||||
- **Code Organization**: Which crate(s) should this code live in? How should modules be
|
- **Code Organization**: Which crate(s) should this code live in? How should modules be
|
||||||
structured?
|
structured?
|
||||||
- **Teaching Approach**: Are there concepts that need careful explanation? Diagrams?
|
|
||||||
Worked examples?
|
|
||||||
|
|
||||||
Ask questions in batches of 2-3 at a time. After each round of answers, follow up on
|
Ask questions in batches of 2-3 at a time. After each round of answers, follow up on
|
||||||
anything that needs clarification before moving on. Continue until you have enough detail
|
anything that needs clarification before moving on. Continue until you have enough detail
|
||||||
|
|||||||
@@ -40,10 +40,11 @@ Each sub-agent should:
|
|||||||
3. Return a detailed summary focusing **only on functionality relevant to the chapter topic**
|
3. Return a detailed summary focusing **only on functionality relevant to the chapter topic**
|
||||||
— ignore unrelated parts of the library
|
— ignore unrelated parts of the library
|
||||||
|
|
||||||
The six code reference implementations to analyze:
|
The seven code reference implementations to analyze:
|
||||||
- `ref/applesauce` (TypeScript — noStrudel ecosystem)
|
- `ref/applesauce` (TypeScript — noStrudel ecosystem)
|
||||||
- `ref/ndk` (TypeScript — Nostr Development Kit)
|
- `ref/ndk` (TypeScript — Nostr Development Kit)
|
||||||
- `ref/nostr-gadgets` (TypeScript — high-level utilities, JSR)
|
- `ref/nostr-gadgets` (TypeScript — high-level utilities, JSR)
|
||||||
|
- `ref/nostrlib` (Go — fiatjaf's comprehensive Go library)
|
||||||
- `ref/nostr-tools` (TypeScript — low-level tools, minimal deps)
|
- `ref/nostr-tools` (TypeScript — low-level tools, minimal deps)
|
||||||
- `ref/rust-nostr` (Rust — full implementation, multiple crates)
|
- `ref/rust-nostr` (Rust — full implementation, multiple crates)
|
||||||
- `ref/welshman` (TypeScript — extracted from Coracle client)
|
- `ref/welshman` (TypeScript — extracted from Coracle client)
|
||||||
@@ -77,6 +78,9 @@ The research file should have this structure:
|
|||||||
### nostr-gadgets
|
### nostr-gadgets
|
||||||
<detailed findings>
|
<detailed findings>
|
||||||
|
|
||||||
|
### nostrlib
|
||||||
|
<detailed findings>
|
||||||
|
|
||||||
### nostr-tools
|
### nostr-tools
|
||||||
<detailed findings>
|
<detailed findings>
|
||||||
|
|
||||||
|
|||||||
@@ -75,6 +75,7 @@ of chapters, but is not a source of implementation patterns.
|
|||||||
| `ref/applesauce` | TypeScript | Libraries for building nostr web clients (noStrudel) |
|
| `ref/applesauce` | TypeScript | Libraries for building nostr web clients (noStrudel) |
|
||||||
| `ref/ndk` | TypeScript | Nostr Development Kit with framework integrations |
|
| `ref/ndk` | TypeScript | Nostr Development Kit with framework integrations |
|
||||||
| `ref/nostr-gadgets` | TypeScript | High-level nostr client utilities (JSR) |
|
| `ref/nostr-gadgets` | TypeScript | High-level nostr client utilities (JSR) |
|
||||||
|
| `ref/nostrlib` | Go | Comprehensive Go library for relays, clients, and hybrid apps (fiatjaf) |
|
||||||
| `ref/nostr-tools` | TypeScript | Low-level nostr tools, minimal dependencies |
|
| `ref/nostr-tools` | TypeScript | Low-level nostr tools, minimal dependencies |
|
||||||
| `ref/rust-nostr` | Rust | Full Rust implementation with multiple crates |
|
| `ref/rust-nostr` | Rust | Full Rust implementation with multiple crates |
|
||||||
| `ref/welshman` | TypeScript | Nostr toolkit extracted from the Coracle client |
|
| `ref/welshman` | TypeScript | Nostr toolkit extracted from the Coracle client |
|
||||||
@@ -96,7 +97,7 @@ Chapters are developed in three phases using slash commands:
|
|||||||
## Code Style
|
## Code Style
|
||||||
|
|
||||||
- Rust code should be idiomatic and well-documented
|
- Rust code should be idiomatic and well-documented
|
||||||
- Prefer clarity over cleverness — this is a teaching resource
|
- Prefer clarity over cleverness
|
||||||
- Keep dependencies minimal
|
- Keep dependencies minimal
|
||||||
- All public items need doc comments that explain the *why*
|
- All public items need doc comments that explain the *why*
|
||||||
- Code must compile and pass `just all` before a chapter is considered complete
|
- Code must compile and pass `just all` before a chapter is considered complete
|
||||||
|
|||||||
Reference in New Issue
Block a user