The Blok Command Line Interface (CLI), nanoctl, is an essential tool for developing, managing, and deploying your Blok applications. It provides a set of commands to streamline common tasks, from project scaffolding to Node and Workflow creation.

What is nanoctl?

nanoctl is designed to enhance developer productivity by automating repetitive tasks and providing a consistent interface for interacting with the Blok framework.

Key functionalities typically include:

  • Project Initialization: Creating new Blok projects with a standard directory structure and boilerplate code.
  • Code Generation (Scaffolding): Generating new Nodes, Workflows, and potentially other components with basic templates.
  • Development Server: Running a local development server to test your workflows.
  • Building & Packaging: Preparing your application for deployment.
  • Deployment Commands: Assisting with deploying your Blok applications to various environments (though this might also involve other platform-specific tools).
  • Authentication/Login: Commands to authenticate with Blok services or platforms (e.g., Deskree).

Installation / Usage

As mentioned in the First Steps guide, you can often use nanoctl directly via npx without a global installation, ensuring you always use the latest version:

npx nanoctl@latest <command>

Refer to the official Blok installation instructions for the recommended approach.

Common Command Categories

This section of the documentation will cover the main commands provided by nanoctl, grouped by their purpose:

  • Project Management: Commands related to creating and managing Blok projects.
    • npx nanoctl@latest create project
  • Node Management: Commands for scaffolding and managing Nodes.
    • npx nanoctl@latest create node
  • Workflow Management: Commands for scaffolding and managing Workflows.
    • npx nanoctl@latest create workflow
  • Authentication: Commands for logging into Blok platforms or services.
    • npx nanoctl@latest login or npx nanoctl@latest logout
  • Build Process: Commands related to building your application for production.
    • npx nanoctl@latest build
  • Deployment: Commands to assist with deploying your application.
    • npx nanoctl@latest deploy

Getting Help

Most CLI tools provide a way to get help directly from the command line. You can usually try:

nanoctl --help
nanoctl <command> --help

This will display a list of available commands or specific options for a given command.

Explore the sub-sections for detailed explanations and examples of each nanoctl command group.