yasiramin380/foundation-kit

The skeleton application for the Laravel framework.

Maintainers

Package info

gitlab.com/yasiramin380/foundation-kit

Issues

Type:project

pkg:composer/yasiramin380/foundation-kit

Statistics

Installs: 8

Dependents: 0

Suggesters: 0

Stars: 0

dev-main 2026-03-22 08:31 UTC

This package is auto-updated.

Last update: 2026-03-22 03:31:21 UTC


README

A production-ready Laravel 12 + React 19 starter with Inertia.js, TypeScript, and a custom module system. Built for scalable, modular web applications.

Features

  • Laravel 12 (PHP 8.2+) with React 19 and TypeScript
  • Inertia.js (React) for a single-page app experience without building an API
  • Custom module system — backend in app/Modules/, frontend in resources/js/modules/ (Dashboard, Privileges, AppSetting included)
  • Authentication — Laravel Fortify (registration, login, 2FA, email verification, password reset)
  • Roles & permissions — Spatie Laravel Permission (backend + frontend hooks)
  • UI — shadcn/ui (Radix) + Tailwind CSS 4
  • Type-safe routes — Laravel Wayfinder (generated route helpers for the frontend)
  • Real-time — Laravel Reverb (WebSockets)
  • Developer tools — Laravel Telescope, Pest PHP, ESLint, Prettier, Laravel Pint
  • App settings — Backend-managed logo, site name, and general settings (used on welcome page and app shell)

Prerequisites

  • PHP 8.2+
  • Composer
  • Node.js 18+ (LTS recommended)
  • SQLite, MySQL, or PostgreSQL

Installation

To get started with the Foundation Kit, ensure you have the Laravel Installer configured on your system first.

1. Prerequisite: Laravel Installer

If you haven't installed the Laravel CLI globally yet, run:

composer global require laravel/installer

2. Create New Project

Use the --using flag to scaffold your application with this specific foundation kit:

laravel new my-app --using=yasiramin380/foundation-kit

Development

# Run Laravel, Reverb, queue worker, and Vite together
composer dev

This starts:

  • Laravel dev server
  • Laravel Reverb (WebSockets)
  • Queue worker
  • Vite dev server

For SSR (optional):

npm run build:ssr
composer dev:ssr

Project structure (overview)

PathDescription
app/Modules/Backend modules (Controllers, Models, Routes, migrations)
resources/js/modules/Frontend module pages and components (React)
resources/js/pages/Global Inertia pages (welcome, settings)
resources/js/components/Shared React components and shadcn/ui
resources/js/routes/Wayfinder-generated route definitions (do not edit by hand)

Useful commands

CommandDescription
php artisan make:module ModuleNameCreate a new module (backend + frontend scaffold)
php artisan wayfinder:generateRegenerate route/action types for the frontend
php artisan app:initBootstrap: .env, key, clear cache/logs, storage link, wayfinder
php artisan app:init --db --seedSame as above + fresh migrate + seed
composer testRun Pest tests and Pint
npm run lintESLint
npm run formatPrettier (resources/)
npm run typesTypeScript check

Documentation

Full documentation (architecture, modules, auth, permissions, helpers, UI, etc.) is available in the app at /documentations (Blade-based doc page).

Tech stack summary

Backend: PHP 8.2, Laravel 12, Fortify, Sanctum, Reverb, Spatie (permission, activity log, backup), Laravel Telescope, Wayfinder
Frontend: React 19, TypeScript, Inertia.js, Vite 7, Tailwind CSS 4, shadcn/ui (Radix), Lucide icons, TanStack Table
Tooling: Pest, Pint, ESLint, Prettier

Child Project Update

git remote add upstream https://gitlab.com/yasiramin380/foundation-kit
git fetch upstream
git merge upstream/main --allow-unrelated-histories

License

MIT.