0af400efd4a3ccd13aad06aa701d26c0740a5466
Welshman
A nostr toolkit focused on creating highly a configurable client system, extracted from the Coracle nostr client.
This is a monorepo which is split into several different packages:
- @welshman/app - a framework for building nostr apps
- @welshman/content - utilities for parsing and rendering notes.
- @welshman/dvm - utilities for creating and making request against dvms.
- @welshman/feeds - an interpreter for custom nostr feeds.
- @welshman/lib - generic utility functions.
- @welshman/net - framework for interacting with relays.
- @welshman/signer - signers and utilities for signing/encryption/decryption
- @welshman/store - utilities for building svelte stores for welshman apps
- @welshman/util - various nostr-specific utilities.
Linking
If you're developing an application which requires changes to welshman, you'll need to use npm link to link the two. This is an annoying process, and is only supported if using npm.
- Clone welshman and the repository that depends on it
- Within each
packagedirectory in welshman, runnpm link - Within your application directory, link all welshman dependencies simultaneously (or else only one will get linked. A command that does this is:
rm -rf node_modules; npm i; cat package.json|js '.depedencies|keys[]'|grep welshman|xargs npm link.
If you run npm install in your application directory, you'll need to repeat the final step above.
Languages
TypeScript
99.4%
CSS
0.3%
JavaScript
0.3%