Squid CLI cheatsheet
The sqd
CLI tool has built-in aliasing that picks up the commands defined in commands.json
in the project root. In all squid templates this file is pre-populated with some handy scripts briefly described below.
One can always inspect the available commands defined in commands.json
with
sqd --help
The commands defined by commands.json
will appear in the SQUID COMMANDS
help sections.
Before using the sqd
CLI tool, make sure all the project dependencies are installed:
npm i
Building the squid
sqd build Build the squid project
sqd clean Delete all build artifacts
Running the squid
Both sqd up
and sqd down
assume that the docker compose
command is supported and the docker
deamon is running. Modify the definitions in commands.json
accordingly if docker-compose
should be used instead.
sqd up Start a local PG database
sqd down Drop the local PG database
sqd run [PATH] Run all the services defined in squid.yaml locally
sqd serve Start the GraphQL server
sqd serve:prod Start the GraphQL API server with caching and limits
DB migrations
Read TypeORM Migration generation for details.
sqd migration:apply apply pending migrations
sqd migration:generate generate the migration for the schema defined in schema.graphql
sqd migration:clean clean the db/migrations folder
Code generation
Consult TypeORM Model generation for TypeORM model generation details, and Type-safe decoding for type generation.
Depending on the template, sqd typegen
is aliased to a different typegen tool specific to the chain type and thus has different usage. Consult sqd typegen --help
for details.
sqd codegen Generate TypeORM entities from schema.graphql
sqd typegen Generate data access classes for an ABI file(s) in the ./abi folder