DEV Community

Mohammad Kareem
Mohammad Kareem

Posted on

Setting Up A Development Environment For Laravel

๐Ÿš€ Setting Up Your Laravel Development Environment on Windows ๐Ÿ–ฅ๏ธ

Hey Devs! ๐Ÿ‘‹

Welcome to my new series where Iโ€™ll be diving into the world of Laravel! ๐ŸŽ‰ As Iโ€™m learning Laravel myself, Iโ€™m excited to share the knowledge and insights Iโ€™ve gathered so far. My goal is to help you break into Laravel development smoothly and efficiently. ๐ŸŒŸ

I believe in the power of shared learning, so this series will not only guide you through the setup but also evolve over time. I might revisit and improve upon the content based on new discoveries or feedback. Who knows? We might uncover even better practices together! ๐Ÿš€

The end goal of this series is to build a beautiful job board where users could submit job postings, it's packed with features and will cover many key concepts like MVC architecture, authentication, authorization, policies, styling and templating and more!!

Image description

Image description

With all that being said it's time to dive into the world of Laravel on a Windows machine, Whether you're starting fresh or setting up a new project, this guide will walk you through the essentials of getting your Laravel development environment up and running. Letโ€™s get started! ๐Ÿ˜Ž

๐ŸŒŸ But why Choose Laravel?

Laravel is your gateway to rapid, robust, and modern web development. ๐Ÿš€ Here's why itโ€™s a game-changer:

Elegant Syntax: Laravelโ€™s syntax is clean and expressive, making coding a joy and boosting productivity.

Built-in Tools: From authentication and routing to caching and sessions, Laravel comes with a suite of tools that save you time.

Active Community: Laravel boasts a vibrant community and extensive documentation, so help is always at your fingertips.

Scalability & Security: Laravel provides powerful features to scale your apps and keep them secure.

In a nutshell, Laravel empowers you to build high-quality applications quickly and efficiently. Why wait? Dive in and see the magic for yourself! ๐ŸŒŸ ( literal black magic, the framework is just that inelegant and knows what the dev wants )

1. ๐Ÿ› ๏ธ Download and Install XAMPP

XAMPP is your go-to solution for setting up a local server environment. It includes Apache, MySQL, and PHPโ€”all the goodies you need to run Laravel.

  • Download XAMPP: Head over to XAMPPโ€™s official website and grab the latest version for Windows.
  • Install XAMPP: Run the installer and follow the prompts. Make sure Apache and MySQL are selected during installation as these are crucial for Laravel.

2. ๐Ÿ“ฆ Install Composer

Composer is a powerful dependency manager for PHP that Laravel relies on. Hereโ€™s how to get it:

  • Download Composer: Visit Composerโ€™s website and download the Composer-Setup.exe file.
  • Install Composer: Run the installer and follow the instructions. During setup, ensure that the installer finds the PHP executable from your XAMPP installation.

3. ๐Ÿš€ Create a New Laravel Project

Now that you have XAMPP and Composer ready, itโ€™s time to create your Laravel project!

  • Open Command Prompt: Navigate to where you want to create your Laravel project.
  • Run Composer Command: Execute the following command to create a new Laravel project:
  composer create-project laravel/laravel my-laravel-app
Enter fullscreen mode Exit fullscreen mode

Replace my-laravel-app with your desired project name ( job-board in our case )

4. ๐ŸŒŸ Setting Up Your Environment

Once your Laravel project is created, youโ€™ll need to configure a few things:

  • Navigate to Your Project Directory: Use cd my-laravel-app to go into your project directory.
  • Run Laravel Development Server: Start the built-in Laravel server by running:
  php artisan serve
Enter fullscreen mode Exit fullscreen mode

This will start a local development server at http://127.0.0.1:8000.

quick note: make sure that your server and db are running by pressing start on your xampp control panel for your server and db

Image description

5. ๐Ÿ”„ Additional Tips

  • Database Configuration: Open .env in your Laravel project and configure your database settings to match your MySQL setup in XAMPP.
  • Check Dependencies: Regularly update your projectโ€™s dependencies by running composer update.

๐ŸŽ‰ Youโ€™re All Set!

Congratulations! ๐ŸŽŠ Youโ€™ve successfully set up a Laravel development environment on Windows. Now you're ready to start building amazing applications!

Feel free to drop any questions or share your experiences in the comments.
Happy coding! ๐Ÿ’ป๐Ÿš€


Top comments (4)

Collapse
 
king_triton profile image
King Triton

Wow, what an amazing guide! ๐ŸŽ‰ As someone who's just getting into Laravel, this step-by-step breakdown is incredibly helpful. Installing XAMPP and Composer seemed daunting at first, but you've made it look so simple. I'm really excited about the idea of building a job board and diving into topics like MVC architecture and authentication.

One thing I found particularly motivating is how you emphasized the power of shared learning and evolving the series over time. It's reassuring to know that as the Laravel community grows and evolves, so will the best practices, and we can all learn together.

Collapse
 
mohammed_kareem profile image
Mohammad Kareem

building projects is the best way to learn and this is not a course bs but coming from someone who learned laravel that way in under 2 months and something finally "clicked" in my head so i immediately had the idea of sharing my personal journey to 1. help others get into laravel to build functioning real web apps asap 2. practise my knowledge more so things become a second nature
stay tuned as a new article is in the making as i'm writing this comment and ty for reading my blog!

Collapse
 
rcls profile image
OssiDev • Edited

Oh , XAMPP still receives regular updates? While it might be quick and simple, I would recommend anyone who starts with PHP to just learn how to use Docker to set up a dev environment. It is a much more usable tool for the job market to learn than XAMPP.

Collapse
 
mohammed_kareem profile image
Mohammad Kareem

i believe it does and it's quite handy for getting started quick especially that you have phpmyadmin it makes managing things much simpler