Welcome to the world of Joystream! Here, we will guide you through the process of setting up your very own Joystream development environment and start contributing to the network. With the Joystream software repository, you can access a full node, runtime, reusable substrate modules, and all the necessary front-end applications. Let’s dive in!
Overview
Joystream is built on the substrate blockchain framework, enhancing it to support various roles on the platform. Think of Joystream as a multi-functional toolbox that allows developers to create and manage a blockchain network effectively.
Prerequisites for Development
To achieve the best outcomes during your development journey, it’s essential to use GNULinux with at least glibc version 2.28, specifically with node.js version 18 or newer. We recommend using Ubuntu 20.04 or a more recent version.
- Check your glibc version using:
ldd --version
Required Tools to Get Started
This is your toolkit for building, testing, and contributing to the Joystream repository:
- Rust toolchain – required
- Node.js version 14.18.x – required (though Volta might use v18.6)
- Yarn Classic package manager v1.22.x – required
- Docker v2.20.x or higher – required
- Ansible – optional
Initial Setup
After you’ve ensured that you have your tools ready, clone the Joystream repository and follow the next steps to set it up:
sh setup.sh
If You Prefer Your Own Node Version Manager
You can also install development tools without using the Volta version manager:
sh setup.sh --no-volta
For Older Operating Systems
If your system doesn’t support Node 18, you might need to make some adjustments:
- Modify the root
package.json
file, changing the Volta section to use Node version 16.20.1.
json
volta: {
node: "16.20.1",
yarn: "1.22.19"
}
Running Your Local Development Network
Now it’s time to set up your local development network:
git checkout master
WASM_BUILD_TOOLCHAIN=nightly-2022-11-15 cargo build --release --target release/joystream-node -- --pruning archive --chain joy-mainnet.json
You can learn more about the joystream-node in its README file. For a complete step-by-step guide, refer to this resource.
Testing Your Setup
To ensure everything is running smoothly, you can build and run integration tests:
yarn build
RUNTIME_PROFILE=TESTING yarn build:node:docker
yarn test
Troubleshooting
During your development journey, you may encounter some bumps in the road. Here are some troubleshooting tips:
- Ensure that all required tools are installed correctly and up to date.
- If you face issues related to build errors in your IDE, remember to start your editor with
BUILD_DUMMY_WASM_BINARY=1
. - For more insights, updates, or to collaborate on AI development projects, stay connected with fxis.ai.
Contributing to Joystream
Your contributions are welcome! Whether you’re a developer or not, there are plenty of ways to help out. You can exchange feedback, test software, and address any open issues. Follow our good first issues to begin your journey in contributing.
Final Thoughts
At fxis.ai, we believe that such advancements are crucial for the future of AI, as they enable more comprehensive and effective solutions. Our team is continually exploring new methodologies to push the envelope in artificial intelligence, ensuring that our clients benefit from the latest technological innovations.