OFF0
b65a1b5d95
convert pubkey to npub and event id to note and store for later. use npub and note for uri's so that we dont need to guess what the view of a specific uri has to render. this is only the first step that changes uri's, next step is for the view to react to npub or note and render the correct view accordingly. |
2 years ago | |
---|---|---|
src | 2 years ago | |
tools | 2 years ago | |
.gitignore | 2 years ago | |
.woodpecker.yml | 2 years ago | |
LICENSE | 2 years ago | |
README.md | 2 years ago | |
esbuildconf.js | 2 years ago | |
package-lock.json | 2 years ago | |
package.json | 2 years ago |
README.md
nostr web client
this is a web interface to nostr. a live instance is hosted at https://nostr.ch/
some useful resources:
- JS library used in this project: https://github.com/fiatjaf/nostr-tools
- NIPs: https://github.com/nostr-protocol/nips
- relays registry: https://nostr-registry.netlify.app
- event inspector: https://nostr.guru
- a list of nostr projects and resources: https://nostr.net
dev
nodejs v18.x and npm v8.x are recommended.
after npm install
, start by running a dev server with:
npm run serve
and point a browser to http://127.0.0.1:8001/
the serve
command injects a live reload snippet. to build a "production" copy,
execute
npm run build
the build is done using esbuild, with a config in
esbuildconf.js. the result is placed in dist
directory.
release
- make sure
version
field in package.json as seen by remote git on master branch matches the tag created in the next step. - tag a commit on master branch with a
git tag v<vesion>
. - push the tag to the remote:
git push --tags
.
the CI then receives a git tag event, executes npm run build
, creates
a tar.gz with all the files found in dist
directory and uploads it as a new
release artifact. the release is named after the tag name.
the idea is that nostr web instances are then notified about a new release, download the tar.gz archive and update their local copies. this is not yet implemented. at the moment, the CI symply rsync's dist/ with a remote on https://nostr.ch.