> ## Documentation Index
> Fetch the complete documentation index at: https://cloud.laravel.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Quickstart

> Get started with Laravel Cloud and deploy your first application in minutes.

Select your framework to get started:

<Tabs>
  <Tab title="Laravel">
    ## Prerequisites

    * PHP 8.2 or greater
    * Laravel 9.x or greater
    * A GitHub, GitLab, or Bitbucket account

    <Steps>
      <Step title="Go to your main Laravel Cloud dashboard page and select + New application.">
        <Frame>
          <img src="https://mintcdn.com/cloud/PjwWwbzsHvJtEI4N/images/new-app.png?fit=max&auto=format&n=PjwWwbzsHvJtEI4N&q=85&s=6aa1440f5bf70b03cd01aa06207e6ebd" width="1209" height="520" data-path="images/new-app.png" />
        </Frame>
      </Step>

      <Step title="Connect your Git provider">
        Select Continue with GitHub, GitLab, or Bitbucket. A new tab / window will open. Sign in to your Git provider and select the user / organization and repositories you want to give Laravel Cloud access to.

        <Frame>
          <img src="https://mintcdn.com/cloud/PjwWwbzsHvJtEI4N/images/new-application-modal.png?fit=max&auto=format&n=PjwWwbzsHvJtEI4N&q=85&s=bb91951831673e2345bf3d349cfacd34" width="861" height="544" data-path="images/new-application-modal.png" />
        </Frame>

        After completing the Git provider authentication flow, you will be redirected back to Laravel Cloud.
      </Step>

      <Step title="Create a new application">
        Select the repository you want to use, name your Laravel Cloud application, and select a Region where your application will deploy. Then, click Create Application.

        <Frame>
          <img src="https://mintcdn.com/cloud/PjwWwbzsHvJtEI4N/images/new-application-3.webp?fit=max&auto=format&n=PjwWwbzsHvJtEI4N&q=85&s=25d7b7e4a353ae14c076361fdcb5ebd6" width="1024" height="837" data-path="images/new-application-3.webp" />
        </Frame>

        Your application will be created along with a default environment. You will then be redirected to your application's default environment overview page.

        <Frame>
          <img src="https://mintcdn.com/cloud/UOLAxYMuoaqWUDDG/images/environment-overview.png?fit=max&auto=format&n=UOLAxYMuoaqWUDDG&q=85&s=6c29864d3fccfb85a8651349836d7364" width="1182" height="644" data-path="images/environment-overview.png" />
        </Frame>
      </Step>

      <Step title="Select the PHP runtime">
        In your environment settings, confirm the runtime is set to **PHP** and select the PHP version that matches your application's requirements.
      </Step>

      <Step title="Set build and deploy commands">
        Set your **build command** to install dependencies and compile assets:

        ```sh theme={null}
        composer install --no-dev && npm run build
        ```

        Set your **deploy command** to run database migrations on each deployment:

        ```sh theme={null}
        php artisan migrate --force
        ```
      </Step>

      <Step title="Add environment variables">
        At minimum, set your `APP_KEY`. You can generate one locally and paste the value into the Laravel Cloud dashboard:

        ```sh theme={null}
        php artisan key:generate --show
        ```

        If your application uses a database, connect a [MySQL](/resources/databases/laravel-mysql) or [Postgres](/resources/databases/postgres) resource from the infrastructure canvas; Laravel Cloud will automatically inject the connection environment variables.
      </Step>

      <Step title="Deploy">
        Click the **Deploy** button. Laravel Cloud will build your application, run your deploy command, and route traffic to the new instance.
      </Step>
    </Steps>

    Congratulations! Your Laravel application is live on Laravel Cloud! Continue reading to learn about [environments](/environments), [databases](/resources/databases/laravel-mysql), [managed queues](/queues), and [more](/organizations).
  </Tab>

  <Tab title="Symfony">
    ## Prerequisites

    * PHP 8.2 or greater
    * Symfony 7.4 LTS or 8.x
    * A GitHub, GitLab, or Bitbucket account

    <Steps>
      <Step title="Go to your main Laravel Cloud dashboard page and select + New application.">
        <Frame>
          <img src="https://mintcdn.com/cloud/PjwWwbzsHvJtEI4N/images/new-app.png?fit=max&auto=format&n=PjwWwbzsHvJtEI4N&q=85&s=6aa1440f5bf70b03cd01aa06207e6ebd" width="1209" height="520" data-path="images/new-app.png" />
        </Frame>
      </Step>

      <Step title="Connect your Git provider">
        Select Continue with GitHub, GitLab, or Bitbucket. A new tab / window will open. Sign in to your Git provider and select the user / organization and repositories you want to give Laravel Cloud access to.

        <Frame>
          <img src="https://mintcdn.com/cloud/PjwWwbzsHvJtEI4N/images/new-application-modal.png?fit=max&auto=format&n=PjwWwbzsHvJtEI4N&q=85&s=bb91951831673e2345bf3d349cfacd34" width="861" height="544" data-path="images/new-application-modal.png" />
        </Frame>

        After completing the Git provider authentication flow, you will be redirected back to Laravel Cloud.
      </Step>

      <Step title="Create a new application">
        Select the repository you want to use, name your Laravel Cloud application, and select a Region where your application will deploy. Then, click Create Application.

        <Frame>
          <img src="https://mintcdn.com/cloud/PjwWwbzsHvJtEI4N/images/new-application-3.webp?fit=max&auto=format&n=PjwWwbzsHvJtEI4N&q=85&s=25d7b7e4a353ae14c076361fdcb5ebd6" width="1024" height="837" data-path="images/new-application-3.webp" />
        </Frame>

        Your application will be created along with a default environment. You will then be redirected to your application's default environment overview page.

        <Frame>
          <img src="https://mintcdn.com/cloud/UOLAxYMuoaqWUDDG/images/environment-overview.png?fit=max&auto=format&n=UOLAxYMuoaqWUDDG&q=85&s=6c29864d3fccfb85a8651349836d7364" width="1182" height="644" data-path="images/environment-overview.png" />
        </Frame>

        Laravel Cloud automatically detects Symfony applications and configures `php bin/console` as the command runner.
      </Step>

      <Step title="Select the PHP runtime">
        In your environment settings, confirm the runtime is set to **PHP** and select the PHP version that matches your application's requirements.
      </Step>

      <Step title="Set build and deploy commands">
        Set your **build command** to install dependencies and compile assets:

        ```sh theme={null}
        composer install --no-dev && php bin/console asset-map:compile
        ```

        Set your **deploy command** to run database migrations on each deployment:

        ```sh theme={null}
        php bin/console doctrine:migrations:migrate --no-interaction
        ```
      </Step>

      <Step title="Add environment variables">
        At minimum, set `APP_ENV` and `APP_SECRET` in the Laravel Cloud dashboard:

        | Variable     | Value                              |
        | ------------ | ---------------------------------- |
        | `APP_ENV`    | `prod`                             |
        | `APP_SECRET` | A securely generated secret string |

        If your application uses a database, connect a [MySQL](/resources/databases/laravel-mysql) or [Postgres](/resources/databases/postgres) resource from the infrastructure canvas; Laravel Cloud will automatically inject the `DATABASE_URL` environment variable.

        <Note>If your application defines `DATABASE_URL` or other Cloud-injected variables in `.env.prod`, those values will take precedence over Cloud's runtime injection. Keep Cloud-managed variables out of `.env.prod` to avoid unexpected overrides.</Note>
      </Step>

      <Step title="Deploy">
        Click the **Deploy** button. Laravel Cloud will build your application, run your deploy command, and route traffic to the new instance.
      </Step>
    </Steps>

    Congratulations! Your Symfony application is live on Laravel Cloud! Continue reading to learn about [environments](/environments), [databases](/resources/databases/laravel-mysql), [queues](/queues), and [more](/organizations).
  </Tab>
</Tabs>
