a nostr web interface in vanilla JS
https://nostr.ch/
You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
OFF0
e7ad8e468b
Added support for starring. Stores recation events in a reactionMap, so rendering can use it later. Improved reply to replies, by keeping a separate replyDomMap. Changed from heart to star, reason: thumbsup or a heart are good for positive events, but not so suitable to react to a bad event. So currently negavtive votes are just counted as a star as well. Did not add another dom map, but just querySelector in case an existing star needs to be updated later. |
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 sandbox
a playground for a web interface to nostr. 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.com/
- a working web interface in vue.js: https://astral.ninja/
- https://github.com/aljazceru/awesome-nostr
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.