Skip to content

bitwebs/dns

 
 

Repository files navigation

@web4/dns

Advanced resolving of decentralized web links using different name systems such as DNS Txt entries and .well-known https lookups locations. It implements various naming systems such as dat, bit and cabal but is extensible to support other systems as well.

🚀 Basic API

After installing it through [npm][@web4], you can simply run it like this:

const { resolveProtocol, resolve, resolveURL } = require('@web4/dns')
const protocol = 'bit'
const domain = 'social.x'
const key = await resolveProtocol(protocol, domain)

Note: You may need to wrap it in a async function until top level async/await lands.

That's it! 🎉 - in the key variable you will get the bit key or null, if it can't be found.

🧙‍♀️ What is this magic?

Different decentralized web systems have different means to resolve "names" to a decentralized document.

@web4/dns contains a variety of implementations. Many are using DNS TXT records that contain a key of specified pattern, but other means are possible as well. − (more in the Protocol Guide)

The power of @web4/dns in comparison to other, protocol-specific implementations is that it has a shared cache for all protocols, it works in he browser and does a list of things well. − (more in the Architecture Overview)

👩‍🎓 Further reading

📜 License

MIT License

About

DNS lookup for bit archives

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 100.0%