OFF0
36327f6151
this creates a kind 3 event that includes a list of profiles that the user is following. the feed is still the public global feed and individual feed with only events from followed pubkeys will be added in the next commit. also added proper primary and secondary button styles. |
1 year ago | |
---|---|---|
src | 1 year 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 | 1 year ago | |
package.json | 1 year ago | |
tsconfig.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.