OpenViSTAI · Agents · Blockchain · Crypto
Menu
Developer Tools

Pinoc

Pinoc is a Rust command-line tool for scaffolding and working with Solana programs written using Pinocchio. It provides commands to build, test, deploy and lint programs, synchronize program IDs, regenerate IDLs, and generate standalone Rust or TypeScript clients.

Independent OpenViST project profile, based on linked sources.

Pinoc — OpenViST project profile in Developer Tools.
OpenViST project illustration. See the linked sources for product details.
Understand the project

Practical overview

When it fits

Use Pinoc when developing a Solana program with Pinocchio and you want a CLI to connect project scaffolding with build, test, lint, IDL/client generation and deployment tasks.

Who it is for

  • Rust developers creating or maintaining Solana programs with Pinocchio.
  • Teams that want CLI commands for program scaffolding, building, testing, linting, IDL generation and deployment.

Documented uses

  • Create a new Pinocchio project, optionally starting from a worked PDA-account example.
  • Build a program and regenerate its IDL.
  • Run SVM-oriented tests after building the SBF artifact.
  • Check for Solana-specific account, CPI and zero-copy issues.
  • Generate a Rust or TypeScript client from an IDL.
Before you choose

Requirements & limits

Pinoc is installed as a Rust CLI through Cargo. Rust 1.70 or later and the Solana CLI are listed prerequisites; Node.js/npm is required only for the Codama client generator. The repository displays an Apache-2.0 license.

  • The documented workflow targets Solana programs written with Pinocchio.
  • pinoc test builds the SBF artifact before running tests; feature settings for the build can be separated from test features.
  • Deployment can use an optional Pinoc.toml, fall back to solana config get, or accept cluster and wallet overrides.
  • The static pinoc check command covers account ownership and signer checks, CPI safety and zero-copy layout.

Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.

Source-based practical guide

Install Pinoc and scaffold a Solana program

Install the CLI and create a new Pinocchio project, with the documented example option if desired.

Before you start

  • Rust 1.70 or later

Steps

  1. Install Pinoc with the command below.

    Documented command
    cargo install pinoc
  2. Create a project with pinoc init my_app; use --with-example for a worked PDA-account example instead of a no-op program.

  3. Enter the project directory with cd my_app.

Expected outcome

A new Pinocchio program project is scaffolded and ready for subsequent build or test commands.

Guide limitations

  • This recipe covers installation and scaffolding only; it does not build, test, or deploy the program.
Source-based practical guide

Build and test a scaffolded program

Build a Pinocchio program and run its tests using Pinoc's documented build-before-test workflow.

Before you start

  • A Pinoc project
  • Rust 1.70 or later
  • Solana CLI

Steps

  1. From the project directory, run pinoc build to build the program and regenerate its IDL.

  2. Run pinoc test; Pinoc builds the SBF artifact before running tests.

  3. If test and build features differ, pass test features with --features and set build features separately with --build-features.

Expected outcome

The program is built and its tests are run against the SBF artifact produced by the build step.

Guide limitations

  • Feature selection may need to account for the separate SBF build and Rust test stages.
  • This guide does not deploy the program.
Evidence and transparency

Sources & review

Source record details
Source availability
Active
Sources checked
13 October 2026
Original website title
A91y/pinoc · Official homepage title · retained in its source language