1.2 Set Up a Dev Environment
1.Introduction2 lessons, 06:28
2.Create a Sample API2 lessons, 17:23
3.Write the Music Store API3 lessons, 27:11
4.Conclusion1 lesson, 01:04
1.2 Set Up a Dev Environment
Before we do anything with Lumen, we of course need to install it, and there's really only two ways of doing that. If you go to Lumen's website, which is lumen.laravel.com, then click on the Documentation link, and you will find the installation instructions for both approaches. The first uses Laravel Homestead, which is a virtual machine. It's actually a Vagrant Box, and it has everything that you need for writing Lumen and a layer of Laravel applications. If you scroll on down here, you can see everything that is included with the Homestead Virtual Machine. Now there are some requirements that your server needs to have in order to run Lumen, at least in production, and they are listed here. Now you don't need these for development until you actually need those extensions, but, for the stuff that we are going to be doing in this course, you don't need those. So, if you plan on doing Lumen and Laravel development, pretty extensively, then definitely go the Homestead route. Otherwise, you can use Composer to install Lumen, and that's what I am going to be doing in this lesson. Now if you don't have Composer, now is a very good time to get that. Just go to getcomposer.org, download and install it for your operating system, and you will be good to go. It tells you the command that you need to run, so let me pull up my command line, and we want to run a Composer global require and then Laravel/Lumen installer. It helps if you type everything correctly the first time, but this will take a little bit to install, and, of course, it all depends upon your connection speed as well as your computer speed. After you install Lumen, you can create your first project, and you do so with Lumen > New, and then the name of your project. I'm just going to call this firstapp. We're going to use this to get acquainted with Lumen, and then we're going to throw it away and create something else. And while this is creating our project, let's look at a few other things that you'll need for this course. If you want to follow along, the first thing is MySQL Database. Now if you're using Homestead, don't worry about MySQL because Homestead has that included. Now you can go to mysequel.com and you can download and configure that, but you can also use another tool called MAMP and this is what I'm going to use. Now MAMP gives you everything you need to get started writing PHP applications. It gives you PHP, Apache, MySQL, and a few other things. Now, really, all I'm going to be using MAMP for is for MySQL because it gives you an easy way of getting MySQL, so that's really the only thing that I'm going to be using other than PHPmyadmin. The next tool you will need is an HTTP debugger. This is something that allows you to not only make requests, but it allows you to inspect them as well as the responses, and as far as Windows is concerned, the standard is Fiddler. This has been around for many, many years and it is a wonderful tool. Now there are builds for other operating systems. So, if you go to free download at telerik.com/fiddler, and the big Download button might change depending upon what platform you're on, but for me it's a Windows install. But, if you scroll on down, you can see that there are builds for Linux and Mac as well. But, if you know of an HTTP debugger for those platforms that you want to use, feel free to do so. What's important is that it allows you to make requests as well as inspect the response, okay? So, our new project is ready to go. So, let's take a look here, and let me pull up Explorer, and you'll see that there are several folders. There's a lot of these, look somewhat similar to a Laravel project, and we are going to be diving into these in later lessons. Now this public folder is our Web Server folder, if you will, it's the www. Whenever we start our development server, we want to specify this public folder, so let's go ahead and do that. I'm going to use PHP server, so PHP/s and the local host. Let's use the port 8080, although that might be taken already, so let's just do 8000, and then -t and then public, and this is going to start an HTTP server. So, we can navigate to that address, http://localhost8000, and we should see something here. We do, we have version 5.2.7 of Lumen and Laravel Components 5.2, so now we have Lumen installed. In the next lesson, we're going to poke around and get acquainted with Lumen.