DCALL is a decentralized contact directory application that leverages domains to fetch and manage contact information stored in DNS TXT records. It allows users to save, update, and organize contacts with support for various communication platforms and cryptocurrency wallets. The application is designed to be user-friendly, privacy-focused, and compatible with both Handshake (HNS) and ICANN domains.
- Light/Dark Mode: Toggle between light and dark themes for a comfortable user experience.
- Export/Import Contact Lists: Backup your contacts to a JSON file (
dcall-contacts-backup.json) and restore them as needed. - Clear All Data: A dedicated button to wipe all stored contacts and data (with confirmation).
- Auto-Update on Import: Contacts are automatically updated with the latest TXT records when imported.
- Update All Contacts: Refresh all contacts to fetch the latest TXT records with a single click.
- Auto-Fetching Input Field: Enter a domain to automatically fetch TXT records; the input field lights up green when valid data is found. (Note: Sometimes, adding a space after the domain is required to trigger fetching.)
- HNS & ICANN Compatibility: Supports both Handshake (HNS) and traditional ICANN domains.
- Subdomain-Specific Contact Lists: Maintain separate contact lists for different subdomains (e.g., work.dcall, friends.dcall, sidechicks.dcall).
- Progressive Web App (PWA): Save DCALL as an app on mobile or desktop.
- Shareable Contact Links: Share your contact info easily using URLs like https://dcall/hackbase or https://dcall.hns.to/hackbase, which autofill the input field in DCALL.
DCALL stores contact data and timestamps in the browser's localStorage using the keys dcall-contacts (for contact data) and dcall-last-update (for the last update timestamp).
Data is stored in SQLite databases in the leveldb folder or as .localstorage files, depending on the browser.
- Device & Browser Specific: Contact lists are stored locally in the browser, making them specific to the device and browser used. Use the export/import feature to transfer contacts across devices or browsers.
- Storage Limit: In Brave, Chrome, and Firefox, the storage limit for
localStorageis approximately 10 MB (around 5 million characters in UCS-2 encoding). Opera also defaults to 10 MB but allows users to set unlimited storage for specific domains.
DCALL fetches DNS TXT records for a given domain and processes records with the following prefixes (not all dprofile protocol prefixes are supported):
tel:: Telephone numberpfp:: Profile picture URLwa:: WhatsApptg:: Telegramx:: X platform handleurl:: Website URLlink:: Alternative link (deprecated, will be replaced byurl:)tb:: Thunderbolt usernameonion:: Tor onion addresssn:: Signalmail:: Email addressgh:: GitHub handleig:: Instagram handlefb:: Facebook handleyt:: YouTube handlerumble:: Rumble handleens:: Ethereum Name Servicenostr:: Nostr protocolpk:: Public key or similar identifiermatrix:: Matrix protocol handlesx:: SimpleX chatbsky:: Bluesky handle
btc:: Bitcoin addressln:: Lightning Network addresshns:: Handshake addresseth:: Ethereum addressxmr:: Monero addresszec:: Zcash addressbat:: Basic Attention Token address
- Fonts: Roboto (via Google Fonts)
- Icons: Material Icons (via Google Fonts)
- DNS Resolver: Uses
https://doh.hnsdns.com/dns-queryfor fetching TXT records
HNS.TO is insecure for browsing Handshake domains and should only be used for demo or educational purposes.
Recommended alternatives:
- Fingertip: LETSDANE, SANE
- DNS settings: HNSDNS, HDNS, HNSDOH
- Browser with HNS support: Carbon, Aloha, MASQ
Data is stored locally in the browser (localStorage). Please note:
- Ensure your device is secure
- Regularly use the export feature to back up contacts
- Data is browser/device-specific (not synced automatically)