# Deploying your first Laravel app

<figure><img src="/files/ohdZIWD0X58mOKccNfqP" alt=""><figcaption></figcaption></figure>

After you have created the LEMP server, click on "Sites" in the top navigation followed by the plus icon under Sites. You should now see the above form.

Some further explanation of the fields:

1. **Site type** - we only support Laravel for now, so you will just see "Laravel" here. This tells Scriptables which module to execute when setting up this site.
2. **Webroot** - Where the main index.php file is. Must be relative to the root folder and not an absolute path. e.g. /var/www/mylaravelsite/public -  will just be "public", /var/www/mylaravelsite/public/app - will be public/app, and so forth.
3. **GIT Url** - Should be <git@github.com>/...., so the SSH URL and not the HTTPS URL.
4. **Setup HTTPS** - Please ensure the domain name is pointed to the box correctly via an A record and the TTL period expires, before setting up the site. When ticked - let's Encrypt certificates will be requested and configured for you automatically.
5. **Config file** - Your projects .env file, e.g. prod.env, staging.env, etc...

Right now we only support Laravel, however, you can easily add more site types by adding scriptable modules. We will also be adding support for Nuxt, Next.js, Django, and WordPress soon.

Once you hit "NEXT", a build process will kick off, and try to SSH into the server and set up ssh keys for this project. You will then be presented with the pub key - which you need to copy & paste on GitHub (or whichever provider you use) under deploy keys.

<figure><img src="/files/26OfGQjPpWUi3EuPOTl5" alt=""><figcaption></figcaption></figure>

A webhook URL will also be generated - which you can add to your GitHub settings under webhooks. Every time your branch gets merged, Scriptables will then trigger a deployment.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://scriptables.gitbook.io/scriptables-documentation/deploying-your-first-laravel-app.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
