Ei kuvausta

Jon C 998ad67a01 program: Deprecate re-exports from spl-token-interface (#99) 11 tuntia sitten
.github e279b4b522 CI: Add "interface" as a publishable target (#79) 2 kuukautta sitten
clients 569a37b535 Publish JS client v0.6.0 1 kuukausi sitten
interface beeb441b44 Publish spl-token-interface v2.0.0 2 kuukautta sitten
p-interface 7511655051 p-token: Improve code generation (#90) 3 viikkoa sitten
p-token 998ad67a01 program: Deprecate re-exports from spl-token-interface (#99) 11 tuntia sitten
program 998ad67a01 program: Deprecate re-exports from spl-token-interface (#99) 11 tuntia sitten
scripts da8d9bd364 p-token: Add `spl-token` test fixtures (#39) 6 kuukautta sitten
.gitattributes 8fa926bde8 Initial commit 1 vuosi sitten
.gitignore 8fa926bde8 Initial commit 1 vuosi sitten
.prettierrc a7ca79e32f Update repo from latest `create-solana-program` (#5) 1 vuosi sitten
Cargo.lock 998ad67a01 program: Deprecate re-exports from spl-token-interface (#99) 11 tuntia sitten
Cargo.toml 84fcb2817d p-token: Bump pinocchio version (#91) 3 viikkoa sitten
LICENSE f476906122 Update License 1 vuosi sitten
README.md 3a8dcea8f0 delete idl generation from readme (#70) 2 kuukautta sitten
SECURITY.md 8921377ea5 Create SECURITY.md 4 kuukautta sitten
package.json 86f1e9a39b Upgrade JS client to Kit v3 (#86) 1 kuukausi sitten
pnpm-lock.yaml 86f1e9a39b Upgrade JS client to Kit v3 (#86) 1 kuukausi sitten
rust-toolchain.toml 17f59a8cc2 deps: Update Solana v2.3.4 and rust toolchain (#69) 2 kuukautta sitten
rustfmt.toml f8bbbb7a5f CI: Add program and all extra steps (#13) 9 kuukautta sitten

README.md

SPL Token

This template should help get you started developing Solana programs. Let's walk through this generated program repository and see what's included.

Project setup

The first thing you'll want to do is install NPM dependencies which will allow you to access all the scripts and tools provided by this template.

pnpm install

Managing programs

You'll notice a program folder in the root of this repository. This is where your generated Solana program is located.

Whilst only one program gets generated, note that you can have as many programs as you like in this repository. Whenever you add a new program folder to this repository, remember to add it to the members array of your root Cargo.toml file. That way, your programs will be recognized by the following scripts that allow you to build, test, format and lint your programs respectively.

pnpm programs:build
pnpm programs:test
pnpm programs:format
pnpm programs:lint

Generating clients

Once your programs' IDLs have been generated, you can generate clients for them using the following command.

pnpm generate:clients

Alternatively, you can use the generate script to generate both the IDLs and the clients at once.

pnpm generate

Managing clients

The following clients are available for your programs. You may use the following links to learn more about each client.

Starting and stopping the local validator

The following script is available to start your local validator.

pnpm validator:start

By default, if a local validator is already running, the script will be skipped. You may use the validator:restart script instead to force the validator to restart.

pnpm validator:restart

Finally, you may stop the local validator using the following command.

pnpm validator:stop

Using external programs in your validator

If your program requires any external programs to be running, you'll want to add them to your local validator.

You can do this by adding their program addresses to the program-dependencies array in the Cargo.toml of your program.

program-dependencies = [
  "metaqbxxUerdq28cj1RbAWkYQm3ybzjb6a8bt518x1s",
  "noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV",
]

Next time you build your program and run your validator, these external programs will automatically be fetched from mainnet and used in your local validator.

pnpm programs:build
pnpm validator:restart