Audius is a decentralized, community-owned music-sharing protocol
This repository encompasses all of the services, contracts, and client-side libraries that comprise the Audius protocol.
For further details on operating an Audius service, getting started with the Token and the API, see docs.audius.org.
These off-chain services are run by community members via the Audius staking system:
||Maintains the availability of users' content via the Audius Storage Protocol, including user metadata, images, and audio content. Also known as Content Node.|
||Indexes and stores the contents of the audius contracts on the Ethereum & Solana blockchains for clients to query via an API. Also known as Discovery Node.|
||Stores encrypted auth ciphertexts and handles oauth artifacts|
Smart Contracts & Programs
The independent sets of smart contracts that power the on-chain aspects of the Audius protocol:
||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|
||The Solana programs for the Audius protocol, encompassing user account, content listing, and content interaction functionality|
||The POA network smart contracts for the Audius protocol, encompassing user account, content listing, and content interaction functionality|
Audius Client Libraries
Client-side libraries to provide a unified interface for interacting with the entire Audius protocol:
Audius Tools & Tests
Packages for developers to run and test Audius
||Tooling to run an entire instance of Audius locally with all dependencies|
||A system level test suite and tests for Audius|
- Install docker & docker-compose https://docs.docker.com/get-docker
- Install rust https://rustup.rs/
- Install nvm & node (v14.17.5) https://github.com/nvm-sh/nvm
Running the protocol
git clone https://github.com/AudiusProject/audius-protocol.git cd audius-protocol bash dev-tools/setup.sh audius-compose up
Note that the first time setup takes a bit of time to pull images, but subsequent runs are significantly faster.
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!
Please report security issues to
firstname.lastname@example.org with a description of the
vulnerability and any steps to reproduce. Details on our bug bounty program are available at audius.org/security
Apache 2.0: LICENSE file