Skip to content

Navigation Menu

Sign in
Sign up

Repository files navigation

tscircuit command line interface (CLI)

A CLI for developing, managing and publishing tscircuit code (the "npm for tscircuit")

The.tscircuit.Command.Line.Tool.mp4

Usage

# Start a local dev server in your current directory
tsci dev

Note: The packages CLI uses the same configuration files as the @tscircuit/cli, so you may need to also install npm install -g @tscircuit/cli and run tsci login to authenticate!

Installation

npm install -g tscircuit

CLI USAGE

Usage: tsci [options] [command]
CLI for developing tscircuit packages
Options:
 -h, --help display help for command
Commands:
 init [options] [directory] Initialize a new TSCircuit project in the
 specified directory (or current directory if none
 is provided)
 dev [options] [file] Start development server for a package
 clone [options] [package] Clone a package from the registry
 push [options] [file] Save package code to Registry API
 auth Login/logout
 login Login to tscircuit registry
 logout Logout from tscircuit registry
 config Manage tscircuit CLI configuration
 export [options] <file> Export tscircuit code to various formats
 build [options] [file] Run tscircuit eval and output circuit json
 transpile [file] Transpile TypeScript/TSX to JavaScript (ESM,
 CommonJS, and type declarations)
 add <packageSpec> Add a tscircuit component package to your project
 remove <component> Remove a tscircuit component package from your
 project
 snapshot [options] [path] Generate schematic and PCB snapshots (add --3d
 for 3d preview)
 setup Setup utilities like GitHub Actions
 install [packageSpec] Install project dependencies, or install a
 specific package (e.g., tsci install
 https://github.com/espressif/kicad-libraries)
 update [packageSpec] Update tscircuit component packages to their
 latest version
 upgrade Upgrade CLI to the latest version
 doctor Run diagnostic checks for your tscircuit setup
 check Partially build and validate circuit artifacts
 registry Manage tscircuit registry resources
 search [options] <query...> Search for footprints, CAD models or packages in
 the tscircuit ecosystem
 import [options] <query...> Search JLCPCB or the tscircuit registry and
 import a component
 convert [options] <file> Convert a .kicad_mod footprint to a tscircuit
 component
 simulate Run a simulation
 version [options] Print CLI version
 help [command] display help for command

The build command also accepts the following options:

  • --ignore-errors - continue build even if circuit JSON contains errors
  • --ignore-warnings - suppress warning output
  • --ignore-netlist-drc - suppress netlist DRC diagnostics
  • --ignore-pin-specification-drc - suppress pin-specification DRC diagnostics
  • --ignore-placement-drc - suppress placement DRC diagnostics
  • --ignore-routing-drc - suppress routing DRC diagnostics

Development

This command will open the index.tsx file for editing.

bun run dev

How it Works

When you run tsci dev, we start a local server that uses the @tscircuit/file-server and @tscircuit/runframe (on the browser)

We use commanderjs to define the CLI commands inside of cli/main.ts

Utility functions are defined in lib/*

Development

Dynamically Loading Runframe

Use the RUNFRAME_STANDALONE_FILE_PATH environment variable to point to the runframe standalone file. You will still need to run bun run build inside runframe each time you'd like to load a new version of runframe.

export RUNFRAME_STANDALONE_FILE_PATH=../runframe/dist/standalone.min.js
cd ../runframe && bun run build
cd ../cli && bun run dev

About

Create electronics with React with a local development server

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

AltStyle によって変換されたページ (->オリジナル) /