{"type": "project", "title": "Dostr", "logoImg": "bafkreicqhmqzkqrbqmpqupgjvgbff7vhpyyzhk3oxbzf2jqcokownhyxae", "website": "https://dostr.xyz", "bannerImg": "bafkreidctqd75tsuws5iwlasujk27gl24mxaqbk26p3o6nk7tr2afhwtvu", "createdAt": 1713003796232, "userGithub": "sshmatrix", "credentials": {"github": {"type": ["VerifiableCredential"], "proof": {"jws": "eyJhbGciOiJFZERTQSIsImNyaXQiOlsiYjY0Il0sImI2NCI6ZmFsc2V9..ghGt3soaf7tSRy1JEuzkfGoS5kSh0UTlrYhH6Yd03LgiXvM4vacCGJLrG_GplV4C-KqPebihb8Uo5_gZROZhBw", "type": "Ed25519Signature2018", "created": "2024-04-13T10:12:41.210Z", "proofPurpose": "assertionMethod", "verificationMethod": "did:key:z6MkghvGHLobLEdj1bgRLhS4LPGJAvbMA1tn2zcRyqmYU5LC#z6MkghvGHLobLEdj1bgRLhS4LPGJAvbMA1tn2zcRyqmYU5LC"}, "issuer": "did:key:z6MkghvGHLobLEdj1bgRLhS4LPGJAvbMA1tn2zcRyqmYU5LC", "@context": ["https://www.w3.org/2018/credentials/v1"], "issuanceDate": "2024-04-13T10:12:41.209Z", "expirationDate": "2024-07-12T10:12:41.209Z", "credentialSubject": {"id": "did:pkh:eip155:1:0xf3cC9e9762aF46870cf1b2DD8A33D8e1B9C4E935", "hash": "v0.0.0:2Kb/nLmxPO0PK4R3SYX5CBZs0bQqnqwHK1+ZMYT8ymY=", "@context": [{"hash": "https://schema.org/Text", "provider": "https://schema.org/Text"}], "provider": "ClearTextGithubOrg#dostr-eth#19473027"}}, "twitter": {"type": ["VerifiableCredential"], "proof": {"jws": "eyJhbGciOiJFZERTQSIsImNyaXQiOlsiYjY0Il0sImI2NCI6ZmFsc2V9..GbxoW1QYZFYAI5ZeW57jV_mgf1PH6m3Uo3xaYy9UNQOrnLEdVbacjmQ2gg8gHkQRCkRYgq_uP4zJhNb6w3CiCA", "type": "Ed25519Signature2018", "created": "2024-04-13T10:04:15.014Z", "proofPurpose": "assertionMethod", "verificationMethod": "did:key:z6MkghvGHLobLEdj1bgRLhS4LPGJAvbMA1tn2zcRyqmYU5LC#z6MkghvGHLobLEdj1bgRLhS4LPGJAvbMA1tn2zcRyqmYU5LC"}, "issuer": "did:key:z6MkghvGHLobLEdj1bgRLhS4LPGJAvbMA1tn2zcRyqmYU5LC", "@context": ["https://www.w3.org/2018/credentials/v1"], "issuanceDate": "2024-04-13T10:04:15.014Z", "expirationDate": "2024-07-12T10:04:15.014Z", "credentialSubject": {"id": "did:pkh:eip155:1:0xf3cC9e9762aF46870cf1b2DD8A33D8e1B9C4E935", "hash": "v0.0.0:tPsmAZgPppKoxU8nitGGsXjlbYuynaNR5NlIG5l3vuM=", "@context": [{"hash": "https://schema.org/Text", "provider": "https://schema.org/Text"}], "provider": "ClearTextTwitter#namesys_eth"}}}, "description": "Dostr is a fully backward-compatible **Nostr client with ENS and Ethereum integration**. It's a collection of specifications and implementations of Ethereum-aware Nostr clients to transfer signed data/messages, and transact between users and services. Dostr is equivalent to Whisper in the grand vision outlined in the original Ethereum white paper. Dostr client allows Nostr to function with Ethereum wallets (SIWE) and leverage properties of ENS, such as allowing users to import their ENS identity, avatars and other records on Nostr. Dostr is unsurprisingly a minimal implementation of [Sign In With X (SIWx)](https://chainagnostic.org/CAIPs/caip-122).\n\n![](https://raw.githubusercontent.com/dostr-eth/resources/main/graphics/dostr.png)\n\nDostr allows Nostr to work with Ethereum-based wallets and leverage the rich UX of Ethereum ecosystem. Dostr replaces the current web2 centralised dependencies in Nostr ecosystem (DNS and server storage) with web3 decentralised dependencies, i.e. ENS and IPFS respectively. In addition, most Ethereum-wallets implement ENS by default and Dostr is the first and only protocol that allows users to utilise their [NIP-02](https://github.com/nostr-protocol/nips/blob/master/02.md) compatible ENS names on Nostr. Dostr further leverages properties of ENS such as its DNS resolution via a gateway to store [NIP-05](https://github.com/nostr-protocol/nips/blob/master/05.md) compatible public user information on decentralised storage infrastructures such as IPFS, Arweave, Swarm etc. In the future, it is expected that ecosystems such as BoB will utilise the ENS-Nostr identity interface introduced by Dostr.", "logoImgData": {}, "bannerImgData": {}, "projectGithub": "dostr-eth", "projectTwitter": ""}
Dostr
Dostr is a fully backward-compatible **Nostr client with ENS and Ethereum integration**. It's a collection of specifications and implementations of Ethereum-aware Nostr clients to transfer signed data/messages, and transact between users and services. Dostr is equivalent to Whisper in the grand vision outlined in the original Ethereum white paper. Dostr client allows Nostr to function with Ethereum wallets (SIWE) and leverage properties of ENS, such as allowing users to import their ENS identity, avatars and other records on Nostr. Dostr is unsurprisingly a minimal implementation of [Sign In With X (SIWx)](https://chainagnostic.org/CAIPs/caip-122).

![](https://raw.githubusercontent.com/dostr-eth/resources/main/graphics/dostr.png)

Dostr allows Nostr to work with Ethereum-based wallets and leverage the rich UX of Ethereum ecosystem. Dostr replaces the current web2 centralised dependencies in Nostr ecosystem (DNS and server storage) with web3 decentralised dependencies, i.e. ENS and IPFS respectively. In addition, most Ethereum-wallets implement ENS by default and Dostr is the first and only protocol that allows users to utilise their [NIP-02](https://github.com/nostr-protocol/nips/blob/master/02.md) compatible ENS names on Nostr. Dostr further leverages properties of ENS such as its DNS resolution via a gateway to store [NIP-05](https://github.com/nostr-protocol/nips/blob/master/05.md) compatible public user information on decentralised storage infrastructures such as IPFS, Arweave, Swarm etc. In the future, it is expected that ecosystems such as BoB will utilise the ENS-Nostr identity interface introduced by Dostr.
Dostr