Skip to content
/ muses Public

MUSES.FM is a community-owned music promotion platform centered around playlists and built on DFINITY.

Notifications You must be signed in to change notification settings

muses-fm/muses

Repository files navigation

MUSES.FM

👷 Currently in research, design & prototyping phase.

MUSES.FM is a community-owned music promotion platform centered around playlists and built on DFINITY. Its purpose is to counter the extractive nature of the music promotion industry by establishing a circular economy between artists, playlist curators and playlist taggers.

Check the strategy document to know more about the vision. Check the economics document to know more about the circular economy. Join the Telegram group to follow development and community updates and getting engaged.

Development

To get started, you might want to explore the project directory structure and install required tools:

Make sure to install the right version of the DFINITY SDK with:

DFX_VERSION=0.7.2 sh -ci "$(curl -fsSL https://sdk.dfinity.org/install.sh)"

Clone this repo:

git clone [email protected]:muses-fm/muses.git
cd muses

Once cloned, make sure to have the right version of node installed with nvm:

nvm use

Local deployment

Start a local DFNITY network (leave it running):

dfx start

And deploy the project canisters:

yarn install
dfx deploy

This command, if successful, will display the IDs of your deployed canisters:

Installing code for canister artist, with canister_id rrkah-fqaaa-aaaaa-aaaaq-cai
Installing code for canister curator, with canister_id ryjl3-tyaaa-aaaaa-aaaba-cai
Installing code for canister frontend, with canister_id r7inp-6aaaa-aaaaa-aaabq-cai

If at any point you want to start from scratch, run:

make clean

NOTE: Working with this project in your development environment will not affect any production deployment or identity tokens.

App usage

Start a local DFNITY network if it's not already running:

dfx start

Start a local redirect server, necessary to obtain OAuth tokens from Spotify (leave it running):

yarn start:redirect

Spot the frontend canister in the output from dfx deploy and use its ID to access the app:

http://localhost:8000/?canisterId=r7inp-6aaaa-aaaaa-aaabq-cai

If you want to have some dummy data for testing, apply the fixtures:

make fixtures

Backend development

While developing, you can re-deploy the changes in your canister with:

dfx deploy <canister_alias>

To re-deploy all canisters, run instead:

dfx deploy

You can interact with the canisters' actors directly from the terminal with:

dfx canister call <canister_name> <function> [<argument>]

Frontend development

While developing, you can re-deploy your changes while preserving canister state with:

dfx build frontend
dfx canister install frontend --mode=upgrade

or simply run

yarn redeploy:frontend

which does the same thing.

For faster development cycles, you may want to work with a local dev server, disconnected from the canisters, instead. Start it with:

yarn start

And navigate to http://localhost:8080 to see your changes applied via hot reload.

More

To learn more before you start working with muses, see the following documentation available online:

If the docs are not helping, these are other resources you can draw inspiration from:

If nothing helps and you are stuck, these are places you can go ask for guidance:

Troubleshooting

Replica error (code 3): IC0301

Replica error (code 3): IC0301: Canister ic:r7inp-6aaaa-aaaaa-aaabq-cai not found.

Start the DFX network with:

dfx start --clean

The --clean option removes checkpoints and stale state information from your project’s cache so that you can restart the Internet Computer replica and web server processes in a clean state.

How to upgrade the SDK

To upgrade from a previous SDK version, run:

dfx upgrade

For a clean installation instead of an upgrade, run:

~/.cache/dfinity/uninstall.sh && sh -ci "$(curl -sSL https://sdk.dfinity.org/install.sh)"

About

MUSES.FM is a community-owned music promotion platform centered around playlists and built on DFINITY.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Contributors 3

  •  
  •  
  •