Awesome
███████╗██╗ ██╗██████╗ ███████╗██████╗ ██████╗ ██████╗ ███╗ ██╗██████╗ ██╗ ██╗ ██████╗████████╗ ██████╗ ██████╗
██╔════╝██║ ██║██╔══██╗██╔════╝██╔══██╗██╔════╝██╔═══██╗████╗ ██║██╔══██╗██║ ██║██╔════╝╚══██╔══╝██╔═══██╗██╔══██╗
███████╗██║ ██║██████╔╝█████╗ ██████╔╝██║ ██║ ██║██╔██╗ ██║██║ ██║██║ ██║██║ ██║ ██║ ██║██████╔╝
╚════██║██║ ██║██╔═══╝ ██╔══╝ ██╔══██╗██║ ██║ ██║██║╚██╗██║██║ ██║██║ ██║██║ ██║ ██║ ██║██╔══██╗
███████║╚██████╔╝██║ ███████╗██║ ██║╚██████╗╚██████╔╝██║ ╚████║██████╔╝╚██████╔╝╚██████╗ ██║ ╚██████╔╝██║ ██║
╚══════╝ ╚═════╝ ╚═╝ ╚══════╝╚═╝ ╚═╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═══╝╚═════╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝
Java Nostr-Relay Framework & Web Application
Supported Nips
- NIP-01 (Basic protocol & Standard Tags)
- NIP-02 (Contact List and Petnames)
- NIP-03 (OpenTimestamps Attestations for Events)
- NIP-04 (Encrypted Direct Message)
- NIP-05 (DNS-based internet identifiers)
- NIP-06 (Basic key derivation from mnemonic seed phrase)
- NIP-07 (window.nostr capability for web browsers)
- NIP-08 (Handling Mentions)
- NIP-10 (Marked "e" tags)
- NIP-11 (Relay Information Document)
- NIP-12 (Generic Tag Queries)
- NIP-14 (Subject tag in Text events)
- NIP-16 (Event treatment)
- NIP-18 (Reposts)
- NIP-19 (Bech-32 encoded entities)
- NIP-20 (Command Results)
- NIP-21 (URI scheme)
- NIP-22 (Event "created_at" limits)
- NIP-25 (Reactions)
- NIP-27 (Text Note References)
- NIP-28 (Public Chat)
- NIP-30 (Custom Emoji)
- NIP-31 (Unknown event kinds)
- NIP-33 (Parameterized Replaceable Events)
- NIP-36 (Sensitive Content / Content Warning)
- NIP-38 (User Statuses)
- NIP-39 (External Identities in Profiles)
- NIP-42 (Authentication of clients to relays)
- NIP-46 (Nostr Connect)
- NIP-48 (Proxy Tags)
- NIP-52 (Calendar Events)
- NIP-53 (Live Activities)
- NIP-56 (Reporting)
- NIP-57 (Lightning Zaps)
- NIP-58 (Badges)
- NIP-89 (Recommended Application Handlers)
- NIP-99 (Classified Listings)
- used by Barchetta Smart-Contract Negotiation Protocol (in progress) atop Bitcoin Lightning-Network RGB
In-Progress
- NIP-15 (Nostr Marketplace)
- used by Barchetta Smart-Contract Negotiation Protocol (in progress) atop Bitcoin Lightning-Network RGB
Normal/Production Mode (for most users) Instructions:
Confirm minimal docker requirements
$ docker --version
Docker version 27.0.3
$ docker compose version
Docker Compose version v2.28.1
(Download links for the above)
- Docker 27.0.3
- Docker Compose v2.28.1
Download Superconductor Docker Image from hub.docker
$ docker pull avlo/superconductor:1.9.0
Download Docker-Compose configuration file (and optionally edit various parameters as desired):
Configure SuperConductor security, 3 options:
SecurityLevel | Specification | Details |
---|---|---|
Highest | SSL Certificate WSS/HTTPS<br>(industry standard secure encrypted) | 1. Obtain an SSL certificate.<br>2. Install the certificate<br>3. Enable SSL configuration options in application-prod.properties file. |
Medium | Self-Signed Certificate WSS/HTTPS (locally created secure encrypted) | 1. Create a Self-Signed Certificate.<br>2. Install the certificate<br>3. Enable SSL configuration options in application-prod.properties file. |
None/Default | WS/HTTP<br>non-secure / non-encrypted | For expedient/immediate use without need for an SSL/TLS certificate, SuperConductor WebSockets default to WS/HTTP (non-secure/non-encrypted) mode. |
Run SuperConductor
$ docker compose -f /<path>/<to>/docker-compose-prod.yml up -d
Superconductor is now ready to use.
Stop docker containers
$ docker compose -f docker-compose-prod.yml stop superconductor superconductor-db
Remove docker containers
$ docker compose -f docker-compose-prod.yml down --remove-orphans
<hr style="border:2px solid grey">