Instalimi i Laravel 5.6

Kërkesat e sistemit

Sipas dokumentacionit zyrtar, për ta instaluar Laravel 5.6, serveri duhet t'i ketë të instaluara kompenentet vijuese:

  1. PHP >= 7.1.3
  2. OpenSSL PHP Extension
  3. PDO PHP Extension
  4. Mbstring PHP Extension
  5. Tokenizer PHP Extension
  6. XML PHP Extension
  7. Ctype PHP Extension
  8. JSON PHP Extension

Duke qenë se Laravel mbështetet në një numër të konsiderueshëm të pakove, siç janë ato të Symfony, versionin e PHP e zgjedhim sipas versionit minimal të PHP të kërkuar nga pakot e përdorura.

Instalimi i Laravel

Instalimi i Laravel mund të bëhet në disa mënyra.

Composer

Instalimi i Laravel mund të bëhet drejtpërsëdrejti nga Composer, me komandën vijuese:

composer create-project --prefer-dist laravel/laravel blog

Në vend të blog mund ta përdorim çfarëdo një emërtim tjetër për projektin tonë.

Laravel Installer

Instaluesi i veçantë i Laravel-it shkarkohet duke përdorur Composer:

composer global require "laravel/installer"

Pas përfundimit të procesit të shkarkimit, nga terminali do ta kemi në dispozicion komandën laravel new i cili do të mundësojë instalimin e Laravelit, me të gjitha pakot e nevojshme. Krijimi i një instalimi të ri bëhet duke shënuar si vijon:

laravel new blog

Në vend të emërtimit blog mund të përdoret çfarëdo një emërtim tjetër për projektin tuaj, sipas dëshirës.

###PHP Serveri lokal

Për ta ekzekutuar aplikacionin e krijuar në Laravel, ju mjafton ta keni të instaluar PHP serverin lokalisht në sistemin tuaj. Serverin e startoni me:

php -S localhost:8000 -t public

ose:

php artisan serve

Aplikacionin e startoni duke hapur në shfletues adresën vijuese:

http://localhost:8000

LAMP/WAMP stack

Për ekzekutimin e aplikacionit të zhvilluar në Laravel, mund të përdoret cilido nga LAMP/WAMP stack aplikacionet, siç janë:

  • Laragon
  • WampServer
  • XAMPP
  • Zend Server Community Edition, etj.

Laragon

https://laragon.org/

Homestead improved

Even if Homestead is a fantastic box, many people complain about some of its structural choices. As I mentioned previously, Vagrant is used to create virtual machines on a per-project basis. This means that, in an ideal situation, every project must have its own VM. Now, with Homestead, you can create a single VM and manage all your projects on it. Some people like this idea, and it is more familiar to the classical XAMPP approach. Quite familiar!

However, other people like a more pure approach to Vagrant. While doing some researches on this concept, I stumbled upon Homestead Improved (https://github.com/Swader/homestead_improved) by Swader, on GitHub.

It is an improved version of Homestead that you can install and run without saving files all around your user folder. A really good approach! Also, you won't have to configure any SSH keys or execute apt-get update and composer auto-update. Everything will be done automatically.

If you want to use Homestead Improved, just open your terminal and type the following:

git clone https://github.com/Swader/homestead_improved.git MyHomesteadImprovedVM

Here, MyHomesteadImprovedVM will be the containing folder of all the VM's files. After the clone procedure, just type the following:

vagrant up

Struktura e aplikacionit

04/01/2018  11:24 PM    <DIR>          app
04/01/2018  11:24 PM    <DIR>          bootstrap
04/01/2018  11:24 PM    <DIR>          config
04/01/2018  11:24 PM    <DIR>          database
04/01/2018  11:24 PM    <DIR>          public
04/01/2018  11:24 PM    <DIR>          resources
04/01/2018  11:24 PM    <DIR>          routes
04/01/2018  11:24 PM    <DIR>          storage
04/01/2018  11:24 PM    <DIR>          tests
04/01/2018  11:25 PM    <DIR>          vendor
04/01/2018  11:26 PM               702 .env
04/01/2018  11:24 PM               651 .env.example
04/01/2018  11:24 PM               111 .gitattributes
04/01/2018  11:24 PM               155 .gitignore
04/01/2018  11:24 PM             1,686 artisan
04/01/2018  11:24 PM             1,477 composer.json
04/01/2018  11:24 PM           143,705 composer.lock
04/01/2018  11:24 PM             1,022 package.json
04/01/2018  11:24 PM             1,088 phpunit.xml
04/01/2018  11:24 PM               563 server.php
04/01/2018  11:24 PM               549 webpack.mix.js
04/01/2018  11:24 PM           257,938 yarn.lock
              13 File(s)        409,647 bytes

Struktura e folderëve

  • app përdoret për vendosjen e kodit të aplikacionit tonë. Ndahet më tutje në: Console, Exceptions, Http dhe Providers.
  • bootstrap përmban fajllat se Laravel-it që startohen gjatë çdo kërkese të re.
  • config përmban fajllat e konfigurimit të aspekteve të ndryshme të aplikacionit.
  • database përmban migrations dhe seeds.
  • public** përmban të gjitha asetet publike të aplikacionit (HTML, CSS, JavaScript, imazhet, e të tjerë), si dhe fajllat .htaccess dhe index.php i cili shërben si front controller.
  • resources përmban fajllat e aseteve, siç janë Sass/Less, JavaScript, views dhe përkthimet. Ndahet më tutje në: assets, lang dhe views.
  • routes përmban 4 fajlla që shërbejnë për routing: api.php, channels.php, console.php, web.php.
  • storage përdoret për vendosjen e fajllave. Ndahet më tej në app, framework, dhe logs.
  • tests përmban testet.
  • vendor përmban pakot e instaluara me Composer.