Git Product home page Git Product logo

abletub's Introduction

a b l e t u b - a music distribution platform built on IPFS

MITLicense

Front Page

About

a b l e t u b . l i v e is a music sharing platform that stores files on the Inter-Planetary File Storage Network (IPFS): a decentralized network protocol for storing and sharing data in a distributed file system.

a b l e t u b allows users to create an immutable content address that can be stored by any node on the IPFS network, including themselves, you, and me! This method of networking and storage provides several critical benefits:

  • facilitates a theoretically eternal method of data persistence, provided that nodes on the IPFS network continue to pin the data.
  • creates an immutable record of when an artist uploaded a track, providing evidence for copyright disputes.
  • helps fortify and decentralize the web by increasing the number of nodes serving content. With IPFS, we can all be servers.

File Storage on IPFS

a b l e t u b uses web3.storage, an IPFS pinning service provided by Protocol Labs. When users upload their files, a b l e t u b sends an upload request to web3.storage, then receieves back a content identifier (CID): a unique address that points to an immutable piece of data. The user's files are sent to nodes on the IPFS network, who store the files and index them under that CID. When the user requests this data, abletub uses that unique CID to send a request to all nodes on the network. When the node storing that data receives the request, it delivers the packets via the CDN provided by web3.storage.

Front End

Back End

Schema

Schema

Get Started

Install dependencies for server and web directories

$ yarn install

Create your Postgres database

Create your Redis store

Create a .env file at the root of your server directory and add your own variables (Reference the .env.example file).

In the server directory, run:

$ yarn watch

then run:

$ yarn dev

In the web directory, run:

$ yarn dev

abletub's People

Contributors

youngkashew avatar

Stargazers

 avatar  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.