anisaronno/laravel-starter

A perfect laravel starter project for any kind of project.

Installs: 12

Dependents: 0

Suggesters: 0

Security: 0

Stars: 2

Watchers: 1

Forks: 1

Open Issues: 1

Language:Blade

Type:project


README

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.

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.