# Download Code and Install on Your Web-Server

If your code is finished generating, you should see a menu item in the left sidebar called **Download Full Code**.

![](https://laraveldaily.com/wp-content/uploads/2019/03/download-full-code-sidebar.png)

&#x20;Clicking it will initialize a download of full ZIP archive for your Laravel project, also showing a modal window with **Installation instructions**.

![](https://laraveldaily.com/wp-content/uploads/2019/03/download-full-code-instructions.png)

&#x20;Then, you should unzip the archive and put the files in your web-server folder, configured for Laravel. Code structure should look something like this:

![](https://laraveldaily.com/wp-content/uploads/2019/03/download-full-code-unarchive.png)

&#x20;Finally, you need to perform a set of Laravel-related commands in **Terminal** to install the project. These commands are typical to ANY Laravel project, and are not specific to QuickAdminPanel-generated code - we are trying to stick to standards.

1. Run **cp .env.example .env** command to copy example into real **.env** file, then edit it with DB credentials and other settings you want
2. Run **composer install** command
3. Run **php artisan migrate --seed** command. Seed is important, because it will create the first admin user for you.
4. Run **php artisan key:generate** command
5. If you have file/photo upload fields, run **php artisan storage:link** command
6. And that's it, go to your domain and login with these credentials: **<admin@admin.com> - password**

![](https://laraveldaily.com/wp-content/uploads/2019/03/download-full-code-install.png)

![](https://laraveldaily.com/wp-content/uploads/2019/03/download-full-code-login.png)

## System Requirements

We generate typical Laravel code, so it requires the same things as general Laravel installation - see [official Laravel documentaion](https://laravel.com/docs/master/installation#server-requirements).

&#x20;**Minimum PHP version**:

* PHP 7.2.5 for Laravel 7
* PHP 7.2 for Laravel 6
* PHP 7.1.3 for Laravel 5.8/5.7/5.6

If you have file/photo upload fields in CRUDs, we also require **MySQL 5.7.8+** or **MariaDB 10.2.7+** with JSON columns support, cause we use [Spatie Laravel Medialibrary](https://github.com/spatie/laravel-medialibrary) for file storage, and it requires JSON columns for "media" DB table with [polymorphic relationship](https://www.youtube.com/watch?v=rx1DQBE01b0).

Also, at the time of writing, Spatie Medialibrary v7 has dependency to its PDF-to-image package which requires **Imagemagick PHP library**. Here are instructions how to install Imagemagick - for [Ubuntu](https://ourcodeworld.com/articles/read/645/how-to-install-imagick-for-php-7-in-ubuntu-16-04), and for [Windows](https://mlocati.github.io/articles/php-windows-imagick.html). Or you can run installation with special flag:\
**composer install --ignore-platform-reqs**

## Configuring domain and public folder

Official [Laravel installation guide](https://laravel.com/docs/master/installation#configuration) says this:

After installing Laravel, you should configure your web server's document / web root to be the **public** directory. The **index.php** in this directory serves as the front controller for all HTTP requests entering your application.\
&#x20;So you need to configure your web-server domain to point to **/public** of the downloaded project.

Example domain configuration lines from [Laravel Homestead](https://laravel.com/docs/master/homestead) file **Homestead.yaml**:

```
- map: laravel-local.test
  to: /home/vagrant/Code/laravel-local/public
```

Here's domain setup instruction for other web-servers:

* [Laravel Valet](https://laravel.com/docs/master/valet#serving-sites)
* [Laragon](https://laragon.org/docs/pretty-urls.html)
* [XAMPP](https://coupontree.co/what-is-virtual-host-how-to-configure-virtual-host-in-xampp/)
* [MAMP Pro](https://documentation.mamp.info/en/MAMP-PRO-Mac/Settings/Hosts/General/)

&#x20;Lastly, don't forget to add your domain as **.env** file as **APP\_URL** value:

```
APP_URL=http://laravel-local.test
```

For more details about Laravel project installation on **production** server, please refer to our two articles:

* [How to Deploy Laravel Projects to Live Server: The Ultimate Guide](https://laraveldaily.com/how-to-deploy-laravel-projects-to-live-server-the-ultimate-guide/)
* [What Server is Needed to Deploy Laravel Projects](https://laraveldaily.com/what-server-is-needed-to-deploy-laravel-projects/)

If you encounter any error in the process, please read error message carefully - it may be related to misconfiguration in your server (older PHP version, missing config value etc.). If you can't resolve the problem by yourself, please message us via live-chat or email **<info@laraveldaily.com>**, describing the problem with as many details as you can.


---

# 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://helpdocs.quickadminpanel.com/using-generated-code/download-code-and-install-your-web-server.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.
