Skip to content

The Laravel 11 Starter Project offers a streamlined setup with essential packages, role-based CRUD, API authentication, media management, and Docker support for rapid application development and deployment.

License

Notifications You must be signed in to change notification settings

anisAronno/laravel-starter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

97 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

# Laravel-11 Starter Project

Welcome to the Laravel Starter Project! This repository provides a kickstart setup for Laravel version 11, incorporating various essential packages and features. It's designed to streamline your Laravel application development process.

Table of Contents

Uses Packages

  • Laravel Breeze (Used only backend code for authentication)
  • Spatie Roll and Permission
  • Laravel Telescope (Elegant debug assistant for local development)
  • Laravel Pulse (Application's performance Monitoring)
  • Laravel Clockwork (Request Monitoring)
  • Laravel Horizon (Job And Queue manage)
  • Laravel Settings (Personal Package for application settings)
  • Laravel Media Gallery (Personal Package for file management)
  • Laravel Activity Log (Track User Activity)
  • Beautiful Log Viewer for local and production
  • Laravel Sweet Alert
  • Laravel Pint For code style fixing

Dashboard Template

Utilizing the admintoolkit-html repository as our Dashboard Template. Explore this open-source admin template for more insights and details.

We acknowledge the contributors for their valuable creation.

Other Uses

Features

  • Setup Role and permission with CRUD
  • User Table showing and CRUD Complete
  • Dashboard templating with Responsive Sidebar
  • Use dark mode and light mode
  • Show user notification
  • Show User Activity log
  • Central Media Gallery
  • Editor JS for Content writing
  • Application Settings setup
  • User Timezone and Language setup by her location

Getting Started

Installation

  1. Install the project with Composer:

    composer create-project anisaronno/laravel-starter
    
  2. Switch to the repository folder:

    cd laravel-starter
    
  3. Setup environment variables for the database and email.

  4. Run database migrations:

    php artisan migrate
    
  5. Run database seeding:

    php artisan db:seed
    
  6. Run Jobs:

    php artisan horizon
    

    or

    php artisan queue:work
    

    or

    php artisan schedule:run
    
  7. Run command for development:

    npm run dev
    

    for frontend build:

    npm run build
    
  8. Start the local development server:

    php artisan serve
    

Now, access the server at http://localhost:8000.

Starting with Docker

To start the Laravel Starter Project with Docker, you can utilize the provided docker-compose.yml file. Follow these steps:

  1. Ensure Docker is installed on your system.

  2. Create a docker-compose.yml file in the root directory of your project with the following content:

version: '3'
services:
  # Define your services here (e.g., nginx, php, mysql, etc.)
  # Example services:
  nginx:
    image: nginx:alpine
    # Add your nginx configurations

  php:
    image: php:8.2-fpm
    # Add your PHP configurations

  # Add other necessary services as required.
  1. Define the required services such as nginx, php, MySQL, etc., in the docker-compose.yml file based on your project's needs.

  2. Once the docker-compose.yml file is configured, run the following command to start the services:

docker-compose up -d
  1. Access your Laravel application at http://localhost:8000 or the specified port as per your configurations.

Deploy via FTP with CI/CD

This project utilizes Continuous Integration/Continuous Deployment (CI/CD) for automated deployment via FTP, following GitFlow principles for merge requests.

GitFlow for Merge Requests

Follow GitFlow principles to manage merge requests:

  • Feature Branches: Develop new features in separate branches.
  • Pull Requests: Submit pull requests to merge features into the develop branch.
  • Merge to Master: Merge from develop to master for production-ready code.

FTP Deployment Process

To deploy your project:

  1. Configure necessary environment variables in GitHub Settings:

    • SERVER: Your FTP server address.
    • USERNAME: Your FTP username.
    • PASSWORD: Your FTP password.
  2. Upon merging into the master branch, GitHub Actions automates deployment to your specified FTP server.

Laravel Self Updater

The Laravel Self Updater feature streamlines the process of updating your Laravel Starter application, making it easy to manage and deploy updates with minimal effort. Here’s how to use it:

Features

  • Automatically checks for updates.
  • Initiates updates with simple Artisan commands.

Usage

  1. Check for Updates: Run the following command to check for available updates.

    php artisan update:check
  2. Initiate Update: Use the following command to initiate the update process.

    php artisan update:initiate {version?}

    Replace {version?} with a specific version number if desired; otherwise, it will initiate the update for the latest version.

Error Handling

Ensure to handle any potential errors during the update process gracefully. Implement logging to monitor any issues that arise during updates.

Contribution Guide

For guidelines on contributing to this project, refer to the Contribution Guide.

License

This application is open-source software licensed under the MIT license.

About

The Laravel 11 Starter Project offers a streamlined setup with essential packages, role-based CRUD, API authentication, media management, and Docker support for rapid application development and deployment.

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Packages

No packages published