aronpc/react-starter-kit-auth

Laravel starter kit with opinionated modern tooling setup.

Installs: 1

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 0

Forks: 0

Open Issues: 0

Type:project

pkg:composer/aronpc/react-starter-kit-auth

dev-main 2025-10-06 20:43 UTC

This package is auto-updated.

Last update: 2025-10-06 20:43:07 UTC


README

Build Status License GitHub Stars

This starter kit updates the base Laravel starter kit with opinionated modern tooling setup.

What's Included:

  • Laravel Latest: Built with the latest Laravel version (requires PHP 8.4+)
  • Essential Packages: Pre-configured with Laravel Essentials and Laravel Boost
  • Code Quality: Integrated Pint, Rector, and PHPStan
  • Testing Ready: Pest testing framework included
  • IDE Support: Laravel IDE Helper for better development experience
  • Enhanced Enums: Pre-configured with ArchTech Enums package and HasEnumFeatures trait

🚀 Quick Start

Requires PHP 8.4+.

Using Laravel Installer (Recommended)

# Create a new project using Laravel installer
laravel new my-project --using=aronpc/react-starter-kit-auth

composer run dev

Using Git Clone

# Clone the repository via github
git clone git@github.com:aronpc/react-starter-kit-auth.git
cd react-starter-kit-auth

# Install dependencies
composer install
npm install

# Set up environment
cp .env.example .env
php artisan key:generate

# Run migrations
php artisan migrate

# Start development server
composer run dev

📦 Included Packages

Production

  • nunomaduro/essentials - Essential Laravel packages
  • archtechx/enums - Enhanced PHP enums with powerful features

Development

  • larastan/larastan - PHP static analysis
  • rector/rector - Code refactoring and upgrades
  • barryvdh/laravel-ide-helper - IDE autocompletion
  • laravel/boost - Laravel-focused MCP server for AI assistants

🛠️ Development Tools

# Code formatting with Pint
./vendor/bin/pint

# Static analysis with PHPStan/Larastan
./vendor/bin/phpstan analyse --memory-limit=-1

# Code refactoring with Rector
./vendor/bin/rector

# Run tests
php artisan test

🤖 Laravel Boost - MCP Server

This starter kit includes Laravel Boost, an official Laravel MCP (Model Context Protocol) server that enhances AI assistant capabilities when working with Laravel projects.

Features

  • Project Context: Provides AI assistants with deep understanding of your Laravel project structure
  • Code Intelligence: Enables better code suggestions and refactoring recommendations
  • Laravel Expertise: Offers Laravel-specific knowledge and best practices
  • Seamless Integration: Works automatically with Claude Code and other MCP-compatible AI tools

Laravel Boost is pre-configured and ready to use - no additional setup required.

🏗️ Architecture Tests

This starter kit includes comprehensive architecture tests using Pest to enforce code quality and consistency:

Included Presets

  • PHP Preset: Ensures no var_dump, dd(), or deprecated functions
  • Security Preset: Prevents usage of dangerous functions like eval(), exec(), shell_exec()
  • Laravel Preset: Enforces Laravel best practices and conventions

Custom Rules

  • Enum Validation: All files in App\Enums must be valid enum classes
  • HasEnumFeatures Trait: All enums must use the HasEnumFeatures trait for consistency

These tests run automatically with your test suite and help maintain code quality standards across the project.

# Run only architecture tests
php artisan test --filter=ArchTest

🎯 Enhanced Enums

This starter kit includes the ArchTech Enums package with a pre-configured HasEnumFeatures trait that provides:

  • Invokable cases: Use enums as callables
  • Metadata: Attach arbitrary data to enum cases
  • Names & Values: Easy access to case names and values
  • From: Create enums from various inputs with better error handling
  • Comparison: Rich comparison methods
  • Options: Generate arrays for dropdowns and forms

Usage

All enums in app/Enums should use the HasEnumFeatures trait:

<?php

namespace App\Enums;

use App\Contracts\HasEnumFeatures;

enum Status: string
{
    use HasEnumFeatures;

    case PENDING = 'pending';
    case APPROVED = 'approved';
    case REJECTED = 'rejected';
}

Architecture tests ensure all enums follow this convention.

📝 License

This project is open-sourced software licensed under the MIT license.

🙏 Acknowledgments

This starter kit is based on and inspired by: