netlify-cli

Netlify command line tool

Usage no npm install needed!

<script type="module">
  import netlifyCli from 'https://cdn.skypack.dev/netlify-cli';
</script>

README

Netlify CLI

Coverage Status npm version downloads netlify-status security

Interact with Netlify from the comfort of your CLI.

See the CLI command line reference to get started and the docs on using Netlify Dev to run your site locally.

Table of Contents

Click to expand

Installation

Netlify CLI requires Node.js version 12 or above. To install, run the following command from any directory in your terminal:

npm install netlify-cli -g

When using the CLI in a CI environment we recommend installing it locally as a development dependency, instead of globally. To install locally, run the following command from the root directory of your project:

npm install --save-dev netlify-cli

Important: Running npm install netlify-cli -g in CI means you're always installing the latest version of the CLI, including breaking changes. When you install locally and use a lock file you guarantee reproducible builds. To manage CLI updates we recommend using an automated tool like renovate or dependabot.

Alternatively you may also use Homebrew: brew install netlify-cli (thanks @cglong).

Usage

Installing the CLI globally provides access to the netlify command.

netlify [command]

# Run `help` for detailed information about CLI commands
netlify [command] help

Documentation

To learn how to log in to Netlify and start deploying sites, visit the documentation on Netlify.

For a full command reference, see the list below, or visit cli.netlify.com.

Commands

addons

(Beta) Manage Netlify Add-ons

Subcommand description
addons:auth Login to add-on provider
addons:config Configure add-on settings
addons:create Add an add-on extension to your site
addons:delete Remove an add-on extension to your site
addons:list List currently installed add-ons for site

api

Run any Netlify API method

build

(Beta) Build on your local machine

completion

(Beta) Generate shell completion script

Subcommand description
completion:install Generates completion script for your preferred shell

deploy

Create a new deploy from the contents of a folder

dev

Local dev server

Subcommand description
dev:exec Exec command
dev:trace Trace command

env

(Beta) Control environment variables for the current site

Subcommand description
env:get Get resolved value of specified environment variable (includes netlify.toml)
env:import Import and set environment variables from .env file
env:list Lists resolved environment variables for site (includes netlify.toml)
env:migrate Migrate environment variables from one site to another
env:set Set value of environment variable
env:unset Unset an environment variable which removes it from the UI

functions

Manage netlify functions

Subcommand description
functions:build Build functions locally
functions:create Create a new function locally
functions:invoke Trigger a function while in netlify dev with simulated data, good for testing function calls including Netlify's Event Triggered Functions
functions:list List functions that exist locally
functions:serve (Beta) Serve functions locally

graph

(Beta) Control the Netlify Graph functions for the current site

Subcommand description
graph:config:write Write a .graphqlrc.json file to the current directory for use with local tooling (e.g. the graphql extension for vscode)
graph:edit Launch the browser to edit your local graph functions from Netlify
graph:handler Generate a handler for a Graph operation given its name. See graph:operations for a list of operations.
graph:library Generate the Graph function library
graph:operations List all of the locally available operations
graph:pull Pull down your local Netlify Graph schema, and process pending Graph edit events

init

Configure continuous deployment for a new or existing site. To create a new site without continuous deployment, use netlify sites:create

link

Link a local repo or project folder to an existing site on Netlify

lm

Handle Netlify Large Media operations

Subcommand description
lm:info Show large media requirements information.
lm:install Configures your computer to use Netlify Large Media
lm:setup Configures your site to use Netlify Large Media

login

Login to your Netlify account

open

Open settings for the site linked to the current folder

Subcommand description
open:admin Opens current site admin UI in Netlify
open:site Opens current site url in browser

sites

Handle various site operations

Subcommand description
sites:create Create an empty site (advanced)
sites:create-template (Beta) Create a site from a starter template
sites:delete Delete a site
sites:list List all sites you have access to

status

Print status information

Subcommand description
status:hooks Print hook information of the linked site

switch

Switch your active Netlify account

unlink

Unlink a local folder from a Netlify site

watch

Watch for site deploy to finish

Contributing

See CONTRIBUTING.md for more info on how to make contributions to this project.

Development

You'll need to follow these steps to run Netlify CLI locally:

uninstall any globally installed versions of netlify-cli
clone and install deps for https://github.com/netlify/cli
npm link from inside the cli folder

Now you're both ready to start testing and to contribute to the project!

License

MIT. See LICENSE for more details.