vercel
v50.22.0
Published
The command-line interface for Vercel
Downloads
6,661,171
Readme
Usage
Vercel's frontend cloud gives developers frameworks, workflows, and infrastructure to build a faster, more personalized web.
To install the latest version of Vercel CLI, run this command:
npm i -g vercelTo quickly start a new project, run the following commands:
vercel init # Pick an example project
cd <PROJECT> # Change directory to the new project
vercel # Deploy to the cloudFinally, connect your Git repository to Vercel and deploy with git push.
Documentation
For details on how to use Vercel CLI, check out our documentation.
Local Development
To develop Vercel CLI, first check out the source code, install dependencies, and build all packages:
git clone https://github.com/vercel/vercel.git
cd vercel
pnpm install
pnpm buildAt this point you can make modifications to the CLI source code and test them out locally. The CLI source code is located in the packages/cli directory.
cd packages/clipnpm vercel <cli-commands...>
From within the packages/cli directory, you can use the "vercel" script to quickly execute Vercel CLI from its TypeScript source code directly (without having to manually compile first). For example:
pnpm vercel deploy
pnpm vercel whoami
pnpm vercel login
pnpm vercel switch --debugWhen you are satisfied with your changes, make a commit and create a pull request!
Publishing
Production Releases
Production releases are automated via the release.yml workflow, which runs on every push to main. It uses changesets to determine which packages need new versions. If there are pending changesets, the workflow either creates a "Version Packages" PR or publishes to npm with the latest dist-tag.
To include your changes in a release, add a changeset before merging your PR:
pnpm changesetFull Testing
pnpm vercel executes a locally built dist. Because this dist lives locally in this monorepo,
the existence of node_modules can sometimes affect the behavior of how vercel CLI picking
up dependencies. To test the full user experience of downloading the CLI from the npm registry:
# build the dist
monorepo_dir=$(pwd)
cd packages/cli && turbo build
# use pnpm pack to create the same tarball that is uploaded to the npm registry
# and store the tarball name in a variable
dist=$(pnpm pack)
# In your test project
cd ~/dev/test-nextjs-proj
npx -p $monorepo_dir/packages/cli/$dist vercel build