Nostr & Decentralized Social

ShugurA High-Performance Nostr Relay for Self-Hosters

Shugur is a free, MIT-licensed Nostr relay written in Go. See its NIP support, requirements and setup steps.

Free Open source Windows: Likely v1.3.5 Updated 22 Oct 2025
8 min read Last update 22 Oct 2025 github.com/Shugur-Network/relay

Shugur is an open-source Nostr relay, a server that receives, stores and forwards signed events between Nostr clients. It is aimed at developers, community operators and anyone who wants to run their own relay rather than depend on a public one. The project is written in Go and uses CockroachDB as its storage layer, which is a deliberate choice for a system meant to be high-performance and scalable.

Because a relay is a server rather than a desktop app, Shugur is best understood as infrastructure. Its natural habitat is a Linux machine or a container, not a Windows desktop. Windows users can still work with it, but the practical path is to build or run it in a Linux environment such as WSL or Docker and point their Nostr clients at the resulting relay address.

02

What Is a Nostr Relay and Why Run One?

Nostr works differently from most social networks. There is no central server holding all the data. Users sign messages with cryptographic keys and publish them to relays, which are independent servers that store and forward those messages. A client reads a user's posts by asking one or more relays for them.

Running your own relay means you decide what gets stored, how long it stays, and who can reach it. Communities sometimes run a relay for their members, and individuals run one for reliability or privacy. Shugur is built for the operator side of that arrangement.

03

Who Is Shugur For?

The most natural users are developers building Nostr clients or services who need a relay to test against, and operators who want a dependable relay for a community. It also suits people who already know their way around Linux servers, firewalls and container tools.

Casual users who only want to post and read on Nostr usually do not need a relay of their own. For them, a client app connected to public relays is the simpler route.

04

How Storage Works Under the Hood

Shugur uses CockroachDB, a distributed SQL database designed to keep data consistent across several nodes. For a relay this matters because events arrive continuously and must be retrieved quickly by filters such as author, kind and time range.

A distributed database adds operational complexity compared with a single-file store. Operators should expect to think about database nodes, storage growth and backups as the relay fills up. The project documentation is the place to confirm the current deployment layout.

05

Real-World Scenarios for a Self-Hosted Relay

A small community might run a relay so its members have a shared, predictable place to publish. A developer might run one locally to test how a client handles reactions, deletions and long-form posts without touching public infrastructure. An organization might use one to keep internal discussions on its own servers.

In each case the relay's job is the same: accept valid events, check their signatures, store them and answer subscriptions. Choosing sensible limits on event size and rate is part of running it responsibly.

06

Key features

Broad NIP support

Shugur implements a wide set of Nostr Implementation Possibilities, the specifications that define optional protocol behavior. The list covers private direct messages, reactions, public chat, long-form content, delegated signing and wallet connection, giving clients a fuller feature set to work with.

Private direct messages (NIP-17)

Support for NIP-17 lets clients exchange private direct messages through the relay. The relay carries encrypted content it cannot read, so the privacy of the conversation depends on the client implementing the scheme correctly.

Nostr Wallet Connect (NIP-47)

NIP-47 allows a client to request payments from a separate wallet service over the relay. This is the piece that links Nostr accounts to Lightning Network payments in many apps, and it is one reason relay operators pay attention to this standard.

Addressable and replaceable events (NIP-33)

Addressable events let a single logical item, such as a profile-like record or article, be updated in place rather than duplicated. This keeps stored data tidy when users edit content they have already published.

Long-form content (NIP-23)

Support for long-form content covers articles and other extended posts, which need different handling from short notes. Relays that carry this kind of content must store and return it reliably.

Delegated event signing (NIP-26)

Delegation lets one key sign events on behalf of another under defined conditions. It is useful for bots, shared accounts and workflows where the signing key should stay separate from the main identity.
07

Supported coins

Shugur's documentation mentions the Lightning Network and Nostr in connection with wallet-related features. Because it is a relay rather than a wallet, it does not hold funds itself; payment flows run between clients and external wallet services that the relay merely carries messages for.

08

How to install Shugur on Windows

  1. 1

    Get the source or a release

    Download the project from the official source code repository on GitHub, or use the Releases page to fetch a packaged build. Only download from the official website or the GitHub repository linked from the project's documentation.

  2. 2

    Prepare a Linux environment

    On Windows, the simplest route is Windows Subsystem for Linux with an Ubuntu distribution, or a Docker setup. Update the system packages before continuing so dependencies install cleanly.

  3. 3

    Verify the download

    Compare the SHA-256 checksum of the file against the value published with the release, or check the signature if one is provided. A mismatch means the file should not be used.

  4. 4

    Open the required port

    The requirements list shows opening port 8080 for TCP with ufw on Linux. Adjust this to match the port your configuration uses, and make sure only the ports you need are exposed.

  5. Build or run the relay

    Follow the build or container instructions in the project documentation. Start the relay, then confirm it is reachable from a Nostr client by adding its WebSocket address to the client's relay list.

09

System requirements

  • Linux server, with Ubuntu 20.04 or newer recommended
  • Minimum of 2 GB RAM, 2 CPU cores and 10 GB of storage
  • Recommended of 8 GB RAM, 4 or more CPU cores, SSD storage and a 1 Gbps network connection
  • Open TCP port for incoming connections, such as 8080 by default
10

How to use Shugur

Once the relay is running, you use it through Nostr clients rather than a dedicated interface. The relay itself simply listens for connections and handles events.

A typical first session looks like this:

  1. Start the relay and confirm it is listening on the port you opened.
  2. Note its public WebSocket address, including the domain or IP and port.
  3. In a Nostr client that lets you edit relay settings, add that address to your list of relays.
  4. Publish a test note and confirm it appears when you query the relay from another client.
  5. Try a reaction and a direct message to check that the relevant NIPs work end to end.
  6. Watch the logs and storage usage over the first few days to learn how the relay behaves under your real traffic.
11

Pros & cons

Pros
  • Written in Go, a language well suited to network servers
  • Uses CockroachDB for a scalable storage design
  • Broad coverage of Nostr NIPs, including messaging and wallet connection
  • Open source under the MIT license
  • Free to use, with the source code publicly available
Cons
  • Built for server operators, not for casual users
  • Requires comfort with Linux, firewalls and container tools
  • Distributed database adds operational overhead for small setups
  • Windows is not a native target, so a Linux environment is needed
12

Is Shugur safe?

Shugur is open source under the MIT license, which means you can read the code before you run it. Download it only from the official GitHub repository or the links given in the project documentation, and do not trust copies hosted on unfamiliar sites. Verify the SHA-256 checksum or signature of any packaged release before installing it.

A relay handles signed events rather than private keys, so it should never ask you for a seed phrase or wallet secret. If any page or tool claims otherwise, treat it as a scam. Keep your server updated, expose only the ports you need, and restrict administrative access. Check the project's latest release notes before deploying, since the code changes over time.

  • Official source only. Download from github.com/Shugur-Network/relay. Ignore ads and lookalike domains.
  • Check the SHA-256. Compare the installer hash with the value the developer publishes before running it.
  • Never share your seed phrase. No developer, support agent or website — including CryptApps — will ever ask for it.
13

Alternatives

Most of the other programs in this catalog are Nostr clients: apps such as Amethyst, Vega, Nostrid, Nostrmo and Notedeck let you read and post. Shugur sits on the other side of the protocol. It does not give you a timeline; it gives your clients somewhere to store and fetch events. Prettygood and Blockcore Notes are also user-facing tools, while Shugur is aimed at operators.

If you want to participate in Nostr, a client is the right starting point. If you want to host infrastructure for a community or for development, Shugur is the one to look at. Many people use both: a client on their desktop pointed at a relay they run themselves.

14

Specifications

Price
Free
Type
Open source
License
MIT
Latest version
v1.3.5
Last update
22 Oct 2025
Windows support
Likely (builds for Windows; check releases)
Source code
github.com/Shugur-Network/relay
15

Frequently asked questions

No. Shugur is a relay, meaning a server that stores and forwards Nostr events. To post and read, you need a separate Nostr client app that connects to a relay such as Shugur or a public one.

The project is designed for Linux servers. Windows users typically run it through Windows Subsystem for Linux or Docker. Check the official documentation and releases for current build options before you start.

Shugur uses CockroachDB for storage. It is a distributed SQL database, which suits a relay that needs to handle many events and queries, but it also means you should plan for database administration.

It implements a range of NIPs, including private direct messages (NIP-17), reactions (NIP-25), public chat (NIP-28), long-form content (NIP-23), delegated signing (NIP-26) and Nostr Wallet Connect (NIP-47).

The documentation lists a minimum of 2 GB RAM, 2 CPU cores and 10 GB of storage, with 8 GB RAM, 4 or more cores and SSD storage recommended for heavier use. A small personal relay can start on the lower end.

Yes, it is free and released under the MIT license, which allows you to use, modify and redistribute the code under its terms.

Shugur carries messages, including those for Nostr Wallet Connect. It does not hold funds. Payments happen between your client and a separate wallet service on the Lightning Network.

A relay operator can see the events it stores, although private messages remain encrypted. Running your own relay gives you control over retention and access, which is one reason people choose a self-hosted option.

16

Verdict

Shugur is a solid choice for developers and operators who want a high-performance, open-source Nostr relay with broad protocol coverage. It is not a consumer app, and it does not run as a simple Windows program. If you are comfortable with Linux servers and want to host your own relay, it deserves a look. If you only want to post and read on Nostr, pair a Nostr client with an existing public relay instead.

Download now