Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/studiokaiji/nostr-webhost
Web hosting solution using nostr.
https://github.com/studiokaiji/nostr-webhost
Last synced: 24 days ago
JSON representation
Web hosting solution using nostr.
- Host: GitHub
- URL: https://github.com/studiokaiji/nostr-webhost
- Owner: studiokaiji
- License: mit
- Created: 2023-08-21T01:20:36.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-11-12T00:21:17.000Z (about 1 year ago)
- Last Synced: 2024-04-18T12:12:04.700Z (8 months ago)
- Language: Go
- Homepage: https://hostr.cc
- Size: 9.08 MB
- Stars: 82
- Watchers: 5
- Forks: 9
- Open Issues: 8
-
Metadata Files:
- Readme: readme.md
- License: LICENSE
Awesome Lists containing this project
- awesome-nostr - hostr - nostr-webhost is a tool for hosting SPA on nostr (Tools / Client reviews and/or comparisons)
README
# Nostr Webhost (hostr)
Example webpage: https://h.hostr.cc/p/2d417bce8c10883803bc427703e3c4c024465c88e7063ed68f9dfeecf56911ac/d/hostr-lp
## 🌐 Overview
Nostr Webhost (hostr) is a command-line tool designed for hosting Single Page Applications (SPAs) using the Nostr protocol and its distributed network of relay servers. This tool provides a seamless way to deploy and access your SPA on the Nostr network.
## ⚠️ Caution
Domain-based authorization mechanisms such as NIP-7 should not currently be used. This is because the event is identified based on the path, so it will authorize other events as well.### 📦 Installation
To get started with hostr, follow these steps:
1. `go install github.com/studiokaiji/nostr-webhost/hostr@latest`
### ⌨️ Commands
```bash
COMMANDS:
deploy 🌐 Deploy nostr website
add-relay 📌 Add nostr relay
remove-relay 🗑 Remove nostr relay
list-relay 📝 List added nostr relays
set-private 🔐 Set private key
show-public 📛 Show public key
generate-key 🗝 Generate key
start 🕺 Wake up web server
help, h Shows a list of commands or help for one command
```### 🚀 Getting Started
1. Install Nostr Webhost as mentioned above.
2. Set or generate private key
If you set private key: `hostr set-private "nsec or hex private key"`
Or if you want to generate private key: `hostr generate-key`
3. Add relay
`hostr add-relay wss://r.hostr.cc`
4. Deploy
`hostr deploy --path /BUILT/SPA/DIR/PATH --identifier=test`
- The `--identifier` option is the identifier (d-tag) for Replaceable Events based on NIP-33. When you update this site, please specify the same identifier. If you want to create a non-replaceable site, you can achieve that by specifying `--replaceable=false`.
- The event id of index.html will be output after deploy. Please make a copy of it.
5. Start test web server
`hostr start`
6. Access the `http://localhost:3000/d/{pubkey_or_npub}e/{nevent-of-index.html}`For detailed information on how to use each command, you can use the `help` command followed by the specific command name.
## 👍 Feedback and Contributions
If you encounter any issues or have suggestions for improvement, feel free to contribute to the project on GitHub.
## 📃 License
This project is licensed under the MIT. See the LICENSE file for more details.