mjp0 / datagram-odi

๐Ÿ›ฐ Datagram Open Discovery Index is an open peer-to-peer database that helps datagram users to find each other.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Datagram Open Discovery Index

Datagram Open Discovery Index is a decentralized discovery database for datagrams. Non-logging public service available at datagram.network

license FOSSA Status web-datagram twitter-machianists

๐Ÿ’ก What is Datagram Open Discovery Index?

Open Discovery Index is an integral part of the Datagram project which enables you to create secure shared databases and data structures with anyone. Open Discovery Index, ODI for short, is the system that enables you and other users to find each other on the internet.

When you share your datagram with someone, their computer needs to know your computer's Internet address. ODI is a database for storing and finding this information.

๐Ÿ‘€ Privacy in ODI

ODI is a decentralized and distributed database. Anyone can participate in hosting ODI to help to keep it decentralized and become "a node" in datagram.network. This means that when you search for a datagram, your request will be routed to the nearest node. This means faster connection times, but it also means that the node host can see your IP address and which datagram address you searched for.

We are constantly evaluating more private ways to build ODI. In the meantime, we are doing everything we can to preserve users' privacy.

For example, the node host can see what you search for, but because the data in ODI is encrypted, they can't read the datagram you searched for.

If the user is willing to run their own node, they can set their datagram searches to go to their own node. If the node is hosted on a 3rd party server, it will act as a proxy for all datagram searches.

๐Ÿ“ก Datagram.Network public service

Machian Collective offers a free, non-logging and non-censored public ODI at odi.datagram.network. We don't keep any logs of searches, and we don't censor who can utilize odi.datagram.network.

๐Ÿ”Œ Getting started

๐Ÿณ Docker

The fastest way to get started is to go with the pre-built Docker image. Please note that you need to specify port mapping -p 10000:10000/udp or Docker fails to bind the port.

Note that LOGGING=1 is optional and added to show how to use options with Docker.

$ docker run -e LOGGING=1 -p 10000:10000/udp -it machian/datagram-odi

-> Datagram Open Discovery Index Server instance listening on 10000...
-> Datagram Open Discovery Index Database started and listening for connections...

๐Ÿ›  Node.js

You can start ODI via npm scripts.

Note that LOGGING=1 is optional and added to show how to use options with Node.js.

$ LOGGING=1 npm start

-> Datagram Open Discovery Index Server instance listening on 10000...
-> Datagram Open Discovery Index Database started and listening for connections...

โš™๏ธ Options

ODI has few options you can set via environment variables.

LOGGING   =   1               // enable logging IPs and action types
PORT      =   10000           // which port to listen
MODE      =   full|server     // server mode starts only the server

Please refer to Docker and Node.js examples above how to use variables.

โ˜•๏ธ Roadmap

Currently, Datagram Open Discovery Index uses a Kademlia based distributed hash table.

Kademlia was chosen due to mature implementations available, but the next steps in ODI projects should focus on research & development of more privacy-friendly solutions.

๐Ÿ›  The team

Datagram Open Discovery Index is a user-driven project maintained by Machian Collective, an open-source collective focused on solving human digitalization.

Current primary maintainer is Marko Polojรคrvi. Significant direct and indirect contributions have come from Mathias Buus and Paul Frazee.

If you are interested in working with peer-to-peer technologies and solving the hardest & most fascinating issues with digital privacy and security, contact Marko Polojรคrvi.

๐Ÿ“ License

We consider Datagram Open Discovery Index as a public utility project and public utilities should be available to all regardless of their status, skills or resources.

All Datagram Open Discovery Index code is licensed under AGPL v3.0 (AGPL-3.0-or-later).

About

๐Ÿ›ฐ Datagram Open Discovery Index is an open peer-to-peer database that helps datagram users to find each other.

License:Other


Languages

Language:JavaScript 95.2%Language:Dockerfile 4.8%