Giter Site home page Giter Site logo

keshrath / webofneeds Goto Github PK

View Code? Open in Web Editor NEW

This project forked from researchstudio-sat/webofneeds

0.0 1.0 0.0 100.2 MB

Finding people to cooperate with. Protocol, not platform. Decentralized. Linked Data. Open Source.

Home Page: http://researchstudio-sat.github.io/webofneeds/

License: Apache License 2.0

Shell 0.54% Perl 0.02% Java 54.91% Dockerfile 0.18% Python 0.68% PLpgSQL 0.26% JavaScript 33.30% HTML 5.50% Elm 1.23% CSS 2.66% TypeScript 0.06% XSLT 0.67%

webofneeds's Introduction

webofneeds

Finding and cooperating with people. Protocol, not platform. Decentralized. Linked Data. Open Source.

Join the chat at https://gitter.im/researchstudio-sat/webofneeds

This software is for people who need something, have something to offer, want to discuss something etc. - in short: who wish to connect with others for some reason.

  1. They publish a posting about it online
  2. They get recommendations on matching postings created by other people
  3. They start chatting with some of the creators of these other postings
  4. Maybe they'll meet. Maybe one will buy from the other. Maybe they will start a company, plant a tree, get married, found a party...

That's it, basically. Try our demo on matchat.org! And then run your own servers!

interaction-diagram

Overview

The Web of Needs is a decentralized infrastructure that allows people to publish documents on the Web which make it possible to contact each other. The document may contain a description of a product or service required or offered, a description of a problem to be solved with the help of others, an invitation to social activities, or anything else users may think of. Some concrete use cases are described here. On the abstract level of description, the document can be said to represent an interest in or a need for some kind of interaction with others.

As this document or entity is the central and indivisible building block of the system, we refer to it as an atom. Each atom has a globally unique identifier and an owner, i.e., a person or other entity that creates and controls it. When atom owners want to communicate with each other, a connection object is created for each atom involved.

Web of Needs is built out of three main components. Owner applications enable users to create and manage their atom objects. They can be any type of UI application like web applications or mobile apps for example. Owner applications publish atoms as RDF documents to won nodes on the Web. When atoms are published on the Web, independent matching services can crawl them (or subscribe for atom updates at won nodes) and look for suitable matches. A protocol is in place to inform the won nodes and atom owners of possible matches using hint messages. Based on this process atom owners can initiate connections to other atoms and start communication and other transactions.

Anyone can run any of these components. They can all talk to each other.

Demo

A demo deployment of the Web of Needs with a simple owner application, one won node and one matching service can be tested at www.matchat.org

Deployment

If you want to set up your own deployment of Web of Needs components, here you find requirements for getting started:

  • follow the instructions here to set up all the neccessary components of web of needs locally

Further resources

Papers and further Information

webofneeds's People

Contributors

alexeysid avatar atus avatar bshambaugh avatar dakidaki avatar fkleedorfer avatar gitter-badger avatar grill avatar jensitus avatar m0ru avatar maxstolze avatar peacememories avatar pheara avatar quasarchimaere avatar sbyim avatar schokobaer avatar sigpie avatar tomina83 avatar xjara avatar yanapanchenko avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.