This is a very basic guide, just to understand what's needed to set it up.
If you have any questions you can find me at https://nostr.com/8355095016fddbe31fcf1453b26f613553e9758cf2263e190eac8fd96a3d3de9
- a webserver with a domain under your control
- nostr account with private and public key setup on https://nostr.com, preferably set up with nos2x: https://github.com/fiatjaf/nos2x
Create a file that resolves to <domain>/.well-known/nostr.json, and fill it out like this (enter the name you want to use, and input your own public key, make sure its the HEX-key):
{
"names": {
"<name>": "<pubkey>"
}
}
For branle to be able to execute the file, you have to allow CORS on your webserver.
On nginx you just have to put this in the config:
add_header 'Access-Control-Allow-Origin' '*';
In branle, go to settings and fill inn your <name>@<your topdomain> in the "NIP-05 Identifier" field.
Go you your profile. If everything worked out, you will see a checkmark next to your name (based on your domain).
- NIP-05 Creation Tool: Use this to generate the .well-known/nostr.json file, and also a .htaccess file for Apache if you don't use Nginx
- CORS: Make sure CORS is correctly set up. You can test it here: https://www.test-cors.org/
- Pub-key: Only use the HEX-key. Npub-key won't work.
@Dielan it isn't that simple, because the protocol doesn't support it, my point is it could be that simple if this was adopted. I think it works better than using a well-known file URL because you need the extra level of indirection in there for changes and for people who have no control over their webserver.
If you're going to use name@example.com as the identifier, then the best place to put NIP05 validation is under example.com because the user has ultimate control over that.