solana development with rust based wasm
Getting Started · Why? · Plans · Documentation · Contributing
See the individual crates for more information.
anchor
: Theanchor
executablebuild:all
: Build all crates with all features activated.build:docs
: Build documentation site.copy:js
: Copy the JS needed for thewallet_standard_browser
.coverage:all
: Run coverage across the cratesfix:all
: Fix all autofixable problems.fix:clippy
: Fix clippy lints for rust.fix:es
: Fix lints for JS / TS.fix:format
: Format files with dprint.generate:keypair
: Generate a local solana keypair. Must provide a name.install:all
: Install all packages.install:cargo:bin
: Install cargo binaries locally.install:solana
: Install the version of solana or use one from the cache.lint:all
: Run all checks.lint:clippy
: Check that all rust lints are passing.lint:es
: Check lints for all JS / TS files.lint:format
: Check that all files are formatted.release-plz
: Therelease-plz
executablesetup:ci
: Setup devenv for GitHub Actionssetup:docker
: Setup devenv shell for docker.setup:helix
: Setup for the helix editor.setup:vscode
: Setup the environment for vscode.test:all
: Run all tests across the cratesupdate:deps
: Update dependencies.
devenv
is used to provide a reproducible development environment for this project. Follow the getting started instructions.
To automatically load the environment you should install direnv and then load the direnv
.
# The security mechanism didn't allow to load the `.envrc`.
# Since we trust it, let's allow it execution.
direnv allow .
At this point you should see the nix
commands available in your terminal. Any changes made to the .envrc
file will require you to run the above command again.
Run the following commands to install all the required dependencies.
install:all
This installs all the node dependencies, cargo binaries and solana tooling locally so you don't need to worry about polluting your global namespace.
If you have an outdated version of devenv
you can update it by running the following commands. If you have an easier way, please create a PR and I'll update these docs.
nix profile list # find the <index> of the devenv package
nix profile upgrade <index>
To setup recommended configuration for your favorite editor run the following commands.
setup:vscode # Setup vscode
Unlicense, see the LICENSE file.