The scope of your relay framework is larger than my https://github.com/BlowaterNostr/relayed from a first glance.
It feels like you want to build some sort of web middleware framework but for nostr where an event is akin to a http request.
Then, people can build generic backend software on top of it.
Am I right?
nostr-relay is an extensible relay implementation with complete NIP-01 support. It allows for the replacement of underlying database implementations and can be extended with plugins for additional functionality such as adding blacklists/whitelists, becoming paid relay, and setting up relay clusters, etc
What do you think about https://github.com/CodyTseng/nostr-relay 🫡
This is really fast! 🤯 How many events are there? And how much memory does it require?
Suno AI is really awesome 😲
https://github.com/CodyTseng/nostr-relay-sqlite is the GUI-less version of nostr-relay-tray. It is very easily easy to run and with very fast query speeds. It's perfect for use as a #personal relay, and for developing and debugging relay.
To run your own #nostr #relay, only the following few commands are needed:
```
git clone https://github.com/CodyTseng/nostr-relay-sqlite.git
cd nostr-relay-sqlite
npm install
npm run build
npm run start
```

To add more functionalities to nostr-relay-tray, it requires a control panel. So, I am currently learning front-end knowledge. 📖🧑💻🤯
Can you see a gecko? #animal 
Big thanks to nostr:npub1rw7hlhmgat6ur9zxcw40vweem49guv6530yk767j8xjpynv0y20q6qsl3w for spotting the bug in parameterized replaceable event updates! 🙌 I've fixed it, so make sure to download the latest nostr-relay-tray for better experiences. 🚀 https://github.com/CodyTseng/nostr-relay-tray/releases
This bug also existed in https://github.com/CodyTseng/nostr-relay-nestjs and has been fixed as well.
#bugfix #nostr #relay #devstr
https://github.com/CodyTseng/nostr-relay-tray was originally just a simple demo designed to showcase how to easily create your own relay using https://github.com/CodyTseng/nostr-relay . I whipped up the first version in less than ten minutes and fewer than 100 lines of code. I'm glad that so many people have been using it, but it's very rudimentary and difficult to maintain. In order to easily add more features in the future, I plan to rewrite it! #devstr #nostr #relay
https://github.com/CodyTseng/nostr-relay now supports extension through plugins. Welcome everyone to try developing plugins for nostr-relay. Currently, only two aspects, message handling and broadcasting, are exposed. If more aspects are needed, please raise an issue. Below is a simple example of a logger plugin.
#nostr #relay

I'm also working on a plugin-supported relay implementation https://github.com/CodyTseng/nostr-relay (the plugin system is still in development), and it can replace the database implementation. It's currently being used in my personal relay (wss://nostr-relay.app) and the nostr-relay-tray application. They respectively use PostgreSQL and SQLite as the databases.
My #relay is very small 🌝 wss://nostr-relay.app 
Very insightful points! We really should have the right to choose whether or not to use TLS. We need decentralization at a much lower level.
Due to browser limitations, wss must be used, so web clients won't work properly. But nostrudel has a special treatment that allows it to be used as a cache relay.
Sorry, I don't really understand your question. Are you unable to connect to nostr-relay-tray over the public network? If you want to expose your service to the public network, you need to modify your firewall rules to expose port 4869, or forward the request to port 4869 through a proxy (nginx, etc). And it is advisable to use it only on the local network.
They are event.created_at limitations. https://github.com/nostr-protocol/nips/pull/897
Thank you very much for your feedback. I'll take some time to test with nostr-rs-bench to what the issue is.
The way nostr_relay sets up whitelists and blacklists through filters is cool, and I'm thinking of adding this feature. If you want to set some basic limitations now, you can check if there's what you want in https://github.com/CodyTseng/nostr-relay-nestjs/blob/master/example.env. Actually, I think the best way to resist spam is POW, but most clients don't support it.
