Deploy public Git projects with the Deploy Button, and set up new projects with Vercel and GitHub, GitLab, or Bitbucket
The Deploy Button allows users to deploy a new project through the Vercel Project creation flow, while cloning the source Git repository to GitHub, GitLab, or Bitbucket.
You can create your Deploy Button with the generator below.
The Vercel Project creation flow allows users to deploy a Git repository, create a project with Vercel, and clone the source repository into their GitHub, GitLab, or Bitbucket account.
The Vercel Project creation flow deploying a Next.js Commerce project.
With the Vercel Project creation flow, you can add various URL query parameters to control the experience a user will have, depending on the requirements of your project.
An example Deploy Button using the following HTML snippet.
Use the snippets below in your Git repositories or your dashboards for users to deploy.
[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2Fvercel%2Fnext.js%2Ftree%2Fcanary%2Fexamples%2Fhello-world)
A Markdown snippet that shows a linked Deploy Button.
Customize the above Deploy Button snippets starting with a public Git repository URL from GitHub, GitLab, or Bitbucket.
You can customize the Project creation flow and created project with the following additional settings. For more information see the URL Parameter Reference.
Define Environment Variable Keys that the Git repository needs to deploy successfully. The values will be filled in by the user.
Add a description with additional information and a link to documentation that helps users understand what they are providing values for.
If you're setting up a project on behalf of the user and already know what name the user likely wants, enter a default project name. Additionally, fill this in for the repository name.
Set a default repository name for the new Git repository created by the user in the Project creation flow.
The Redirect URL parameter allows you to redirect the user back to your platform on the event of a successful deployment and receive information on the created project.
Set a Developer ID to show a logo and name from an Integration by using its Client ID, found in the Integration Developer Console.
Set a name for a Deploy Hook to receive a Deploy Hook URL in return when redirecting the user from the Project creation flow.
Integrations let you connect your Vercel Project with third-party services to automate aspects of your workflow.
When Integrations IDs are specified, the corresponding Integrations are required to be installed for the Vercel Project. If needed, they can also be marked as optional using the Optional Integrations parameter.
Integration IDs can be found in the Integrations Console.
Additionally, you can specify an external ID or reference that will be passed to the Redirect URL of each of the required Integrations.