chael412/chael-installer

This setup is designed for developers who want a lightweight, modern, and efficient foundation for building Laravel applications with a React frontend powered by InertiaJs.

Installs: 14

Dependents: 0

Suggesters: 0

Security: 0

Stars: 2

Watchers: 1

Forks: 0

Open Issues: 1

Language:JavaScript

Type:project

v1.1.0 2025-03-26 13:48 UTC

This package is auto-updated.

Last update: 2025-04-28 07:36:06 UTC


README

πŸš€ Introduction

Welcome to my personal laravel installer YUI! This setup is designed for developers who want a lightweight, modern, and efficient foundation for building Laravel applications with a React frontend powered by Inertia.js.

This kit is JavaScript-first, using JSX instead of TSX, making it accessible to developers who prefer plain JavaScript over TypeScript. It includes React 19, TailwindCSS 4, and Breeze for simple authentication and scaffolding.

🎯 Features

βœ”οΈ Laravel – Laravel provides a complete ecosystem for web artisans.
βœ”οΈ Laravel Breeze – Lightweight authentication with Inertia.js.
βœ”οΈ Laravel Pulse – delivers at-a-glance insights into your application's performance and usage.
βœ”οΈ Orion – The simplest way to create REST API with Laravel.
βœ”οΈ Inertia.js – Create modern single-page React, Vue, and Svelte apps using classic server-side routing.
βœ”οΈ React 19 + JSX – Simple, clean, and TypeScript-free.
βœ”οΈ React Icons – Include popular icons in your React projects easily with react-icons.
βœ”οΈ TanStack Query – Powerful asynchronous state management for TS/JS.
βœ”οΈ Zustand – A small, fast, and scalable bearbones state management solution.
βœ”οΈ Laravel-Spatie-permission – Associate users with roles and permissions.
βœ”οΈ TailwindCSS 4 – Modern styling with utility-first CSS.
βœ”οΈ Vite-Powered – Lightning-fast HMR for smooth development.
βœ”οΈ Pre-configured Testing – Includes PHPUnit & Pest.
βœ”οΈ Quick Setup – Get started in minutes!

πŸ›  Getting Started

1️⃣ Install

composer global require luis-developer-08/yui-installer

2️⃣ Create a New Laravel Project

yui new my-laravel-app

πŸŽ‰ Your application is now up and running!

⚑ Create Inertia Components Easily

This starter kit includes a custom Artisan command to quickly generate Inertia.js React components:

πŸ—οΈ Generate a New Component

php artisan make:inertia Components/MyComponent

This will create a new file at resources/js/Components/MyComponent.jsx with a basic component template.

πŸ“‚ File Structure

resources/js/Components/MyComponent.jsx

✨ Example Generated Component

import React from "react";

const MyComponent = () => {
    return <div>{/* MyComponent component */}</div>;
};

export default MyComponent;

This command ensures that components are placed in the correct directory and prevents overwriting existing files. It also automatically opens the newly created file for editing.

⚑ Create Orion Controllers Easily

This starter kit also includes a command to quickly generate Orion controllers along with their associated models:

πŸ—οΈ Generate a New Orion Controller

php artisan make:orion PostController

This will create:

  • app/Http/Controllers/Orion/PostController.php
  • app/Models/Post.php (if it doesn’t exist)
  • Adds a route in routes/api.php

πŸ“‚ File Structure

app/Http/Controllers/Orion/PostController.php
app/Models/Post.php

✨ Example Generated Controller

<?php

namespace App\Http\Controllers\Orion;

use Orion\Http\Controllers\Controller;
use App\Models\Post;

class PostController extends Controller
{
    protected $model = Post::class;
}

πŸ”— Auto-Registered Route in routes/api.php

Orion::resource('posts', \App\Http\Controllers\Orion\PostController::class)->middleware(['auth', 'web']);

This command ensures that controllers are correctly placed, models are created if missing, and routes are automatically registered.

πŸ“– Documentation

For more details on YUI, visit the official YUI Website.

🀝 Contributing

We welcome contributions! Check out the Laravel contribution guide to get involved.

πŸ“œ Code of Conduct

Be kind and respectful. Please follow Laravel's Code of Conduct.

βš–οΈ License

This starter kit is open-source under the MIT license.