An Nostr relay, built using Elixir.
- NIP-01: Basic protocol flow description
- NIP-02: Contact List and Petnames
- NIP-03: OpenTimestamps Attestations for Events
- NIP-05: Mapping Nostr keys to DNS-based internet identifiers
- NIP-09: Event Deletion
- NIP-11: Relay Information Document
- NIP-12: Generic Tag Queries
- NIP-15: End of Stored Events Notice
- NIP-16: Event Treatment
- NIP-20: Command Results
- NIP-22: Event created_at limits (future-dated events only)
- NIP-26: Event Delegation (implemented, but currently disabled)
- NIP-28: Public Chat
- NIP-33: Parameterized Replaceable Events
You can setup your own development / production environment of Astro easily by grabbing your dependencies, creating your database, and running the server.
- Install dependencies with
mix deps.get - Create and migrate your database with
mix ecto.setup - Start Phoenix endpoint with
mix phx.serveror inside IEx withiex -S mix phx.server
Now you can visit localhost:4000 from your browser.
Ready to run in production? Please check out the deployment guides.
- Fork it!
- Create your feature branch (
git checkout -b feature/my-new-feature) - Commit your changes (
git commit -am 'Add some feature') - Push to the branch (
git push origin feature/my-new-feature) - Create new Pull Request
Astro includes a comprehensive and very fast test suite, so you should be encouraged to run tests as frequently as possible.
mix testIf you need help with anything, please feel free to open a GitHub Issue.
WebSubHub is licensed under the MIT License.