All Projects → synonymdev → slashtags

synonymdev / slashtags

Licence: MIT license
Slashtags implementation in JavaScript

Programming Languages

javascript
184084 projects - #8 most used programming language
typescript
32286 projects

Projects that are alternatives of or similar to slashtags

awesome-self-sovereign-identity
An awesome list of self-sovereign identity resources.
Stars: ✭ 161 (+133.33%)
Mutual labels:  ssi, self-sovereign-identity, decentralized-identity
aries-framework-dotnet
Aries Framework .NET for building multiplatform SSI services
Stars: ✭ 68 (-1.45%)
Mutual labels:  ssi, self-sovereign-identity, decentralized-identity
aries-vcx
AriesVCX is a Rust framework for building web and mobile applications issuing, holding, presenting and verifying Verifiable Credentials in accordance to the standards set by Hyperledger Aries.
Stars: ✭ 33 (-52.17%)
Mutual labels:  ssi, self-sovereign-identity, decentralized-identity
aries-mobile-agent-react-native
Aries Mobile Agent for React Native, built using Aries Framework JavaScript
Stars: ✭ 16 (-76.81%)
Mutual labels:  ssi, self-sovereign-identity
verity
Evernym Verity is a decentralized protocol platform for issuing and verifying digital credentials. This repository contains the back-end service which is accessed using the Verity SDK. This is a read-only mirror. Contributions are welcomed at https://gitlab.com/evernym .
Stars: ✭ 18 (-73.91%)
Mutual labels:  ssi, self-sovereign-identity
ermia
ERMIA: Memory-Optimized OLTP engine for Heterogeneous Workloads (SIGMOD 2016)
Stars: ✭ 72 (+4.35%)
Mutual labels:  ssi
.well-known
Specs and documentation for all DID-related /.well-known resources
Stars: ✭ 44 (-36.23%)
Mutual labels:  decentralized-identity
pallet-did
A Substrate pallet for decentralized identifiers' (DIDs) management.
Stars: ✭ 66 (-4.35%)
Mutual labels:  decentralized-identity
website-template
静的Webサイト制作を少しモダンにするためのテンプレート
Stars: ✭ 62 (-10.14%)
Mutual labels:  ssi
niftygate
Drop-in Access Control via NFT Ownership
Stars: ✭ 61 (-11.59%)
Mutual labels:  decentralized-identity
wallet
Wallet implementation based on agent-sdk
Stars: ✭ 24 (-65.22%)
Mutual labels:  decentralized-identity
osma
An open source mobile agent for achieving SSI
Stars: ✭ 41 (-40.58%)
Mutual labels:  ssi
mashnet-node
KILT blockchain node
Stars: ✭ 71 (+2.9%)
Mutual labels:  self-sovereign-identity
alkemio
START HERE! Cross project collaboration and shared documentation.
Stars: ✭ 22 (-68.12%)
Mutual labels:  self-sovereign-identity
okapi
Collection of tools that support workflows for authentic data and identity management. Libraries available in most languages.
Stars: ✭ 14 (-79.71%)
Mutual labels:  self-sovereign-identity
ipfs-blog
IPFS Blog & News
Stars: ✭ 31 (-55.07%)
Mutual labels:  dweb
go-pdu
Parallel Digital Universe - A decentralized social networking service
Stars: ✭ 39 (-43.48%)
Mutual labels:  decentralized-identity
ubikom
Free, secure communications for everyone, powered by decentralized private identity.
Stars: ✭ 62 (-10.14%)
Mutual labels:  self-sovereign-identity
ipfs-companion
Browser extension that simplifies access to IPFS resources on the web
Stars: ✭ 1,745 (+2428.99%)
Mutual labels:  dweb
proxrox
Proxy services, combine origins, use SSI and more during development
Stars: ✭ 43 (-37.68%)
Mutual labels:  ssi

slashtags

JavaScript implementation of the Slashtags protocol


⚠️ This is still in alpha. Please use at your own risk.⚠️


Overview

Slashtags aims to enable self-sovereign identity, reputation and web-of-trust on the web.

The problem

IPs (Internet Protocol address) identifies where your machine exists both geographically and topologically. But you yourself (or your machine for that matter) can't be identified or addressed regardless of its location or the network it is using.

So the Web became a network of mediators and service providers that you have to be tethered to one of them to be addressed or identified. Giving rise to censorship, surveillance and vendor-lock problems the latest of which slowed down the rate of innovation significantly.

Slashtag's solution

Slashtags solution is to use keyPairs to identify and address peers and attach metadata about them, giving rise to reputation, and private yet interoperable webs-of-trust.

How it works

A Slashtag is a keyPair indirectly derived from the same seed that backs up your digital assets.

You can publish metadata about your Slashtag using SlashDrive identified by the same public key, for anyone to read.

That is deceivingly simple, but very powerful. For example you can publish your current Email address, Website URL, Twitter handle, Facebook profile, etc. And your contacts who identify you through a Slashtags compatible wallet can always find and reach you, making your identity and reputation censorship resistant.

But you can also directly contact a Slashtag owner if they are listening on their public key, independently from their IP address, thanks to Hyperswarm's Distributed Hash Table (DHT).

Slashtags can also create private encrypted drives and share it with one or many peers, serving as either a private feed, or a one-to-one asynchronous communication channel.

Next steps

We realize the existing primitives are not enough on their own to give rise to a web-of-trust and a scalable digital economy that can't be held hostage to the same problems as the current one.

But we will build applications that demonstrate that future, to learn what is missing, and build the missing parts as we go.

Installation

npm install @synonymdev/slashtags-sdk

Then start a node in your app:

import { SDK } from '@synonymdev/slashtags-sdk';

const sdk = await SDK.init();
const alice = sdk.slashtag({ name: 'alice' });

console.log(alice.url.toString());
// slash://abc...xyz

Documentation

Documentation is a still work in progress. But you can start by reading the available specs, check out the examples and read through the API documentation of any package in its README.md.

Examples

Run npm install in the root directory first.

Look into the examples to learn how to see Slashtags in action.

Structure

This project is broken into several modules, their purposes are:

Development

Requires Node LTS (v16.5.0). nvm is suppported but not required

npm install

Testing

Make sure you have a running testnet, by running testnet:start. Once you are done you can close it by running testnet:close.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].