Giter Site home page Giter Site logo

tseitz / audius-protocol Goto Github PK

View Code? Open in Web Editor NEW

This project forked from audiusproject/audius-protocol

0.0 0.0 0.0 28.95 MB

Audius gives everyone the freedom to share, monetize, and listen to any audio content.

License: Other

Dockerfile 0.12% Shell 1.36% JavaScript 63.71% Python 23.09% Mako 0.02% HTML 2.19% Solidity 9.51%

audius-protocol's Introduction


audius-protocol

CircleCI

Audius is a decentralized, community-owned music-sharing protocol and app. It provides a censorship-resistant alternative to SoundCloud that helps artists distribute anything they want directly to fans, creating a unique and differentiated catalog. The mission of the project is to give everyone the freedom to share, monetize, and listen to any audio.

This repository encompasses all of the services, contracts, and client-side libraries that comprise the Audius protocol.

For a more detailed overview of how Audius works, how these components interact with one another, how to run an off-chain service, and more, see the Audius protocol wiki for more details.

Install

The Audius protocol has many moving pieces, on-chain and off-chain. Refer to the installation and usage instructions for any of the sub-components of the Audius protocol:

Audius Services

These off-chain services are run by community members via the Audius staking system:

Service Description
creator-node Maintains the availability of users' content on IPFS including user metadata, images, and audio content
discovery-provider Indexes and stores the contents of the audius contracts on the ethereum blockchain for clients to query via an API
identity-service Stores encrypted auth ciphertexts, does Twitter oauth and relays transactions on behalf of users
content-service Monitors Audius activity and intelligently caches content to increase availability

Audius Smart Contracts

The independent sets of smart contracts that underpin the Audius protocol:

Contracts Description
contracts The POA network smart contracts for the Audius protocol, encompassing user account, content listing, and content interaction functionality
eth-contracts The ethereum smart contracts that run the Audius protocol, encompassing the Audius ERC20 token and functionality for staking, off-chain service registration / lookup, and governance

Audius Client Libraries

Client-side libraries to provide a unified interface for interacting with the entire Audius protocol:

Library Description
libs A complete javascript interface to the Audius smart contracts and Audius services: Identity Service, Discovery Provider, Creator Node

Audius Tools & Tests

Packages for developers to run and test Audius

Library Description
service-commands Tooling to run an entire instance of Audius locally with all dependencies
mad-dog A system level test suite and tests for Audius

Usage

Refer to the READMEs of the various Audius components listed above for specific usage instructions!

Contributing

We welcome contributions to Audius from anyone who opens a PR. Feel free to reach out to our team on Discord or via other channels for feedback and/or support!

Security

Please report security issues to [email protected] with a description of the vulnerability and any steps to reproduce. We have bounties available for issues reported via responsible disclosure!

License

Apache 2.0: LICENSE file

audius-protocol's People

Contributors

raymondjacobson avatar dmanjunath avatar hareeshnagaraj avatar sidsethi avatar jowlee avatar vicky-g avatar piazzatron avatar endline avatar 0xflotus avatar roneilr 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.