channlabs / starter-kit
Laravel Inertia React Starter Kit by Chann Labs.
Package info
github.com/channlabs/channlabs-starter-kit
Language:TypeScript
Type:project
pkg:composer/channlabs/starter-kit
Requires
- php: ^8.2
- inertiajs/inertia-laravel: ^2.0
- laravel/fortify: ^1.30
- laravel/framework: ^12.0
- laravel/tinker: ^2.10.1
- laravel/wayfinder: ^0.1.9
Requires (Dev)
- fakerphp/faker: ^1.23
- laravel/pail: ^1.2.2
- laravel/pint: ^1.24
- laravel/sail: ^1.41
- mockery/mockery: ^1.6
- nunomaduro/collision: ^8.6
- pestphp/pest: ^4.3
- pestphp/pest-plugin-drift: ^4.0
- pestphp/pest-plugin-laravel: ^4.0
README
โก Chann Labs Starter Kit
Premium Laravel + React Starter Kit for Modern Web Applications
Build SaaS applications 10x faster with production-ready architecture
Features โข Quick Start โข Documentation โข Tech Stack
๐ฏ Overview
Chann Labs Starter Kit is a production-ready Laravel + React boilerplate designed for developers who want to ship faster without compromising on code quality. Built with modern best practices, it includes everything you need to launch your next SaaS product.
โจ What Makes It Special
- ๐ Zero Configuration - Get started in minutes with automated setup
- ๐จ Premium UI - 50+ Shadcn UI components with dark mode support
- ๐ Authentication Ready - Complete auth system with Laravel Fortify
- ๐ฅ Multi-Tenancy - Built-in team management and organization support
- ๐ฆ Type-Safe - Full TypeScript integration with Laravel Wayfinder
- โก Lightning Fast - Optimized with Vite and SSR support
- ๐ญ Modern Stack - Laravel 12, React 19, Inertia.js, Tailwind CSS v4
๐ Features
๐ Authentication & Authorization
- Login, Register, Email Verification
- Password Reset & Two-Factor Authentication (2FA) ready
- Role-based access control
- Session management
๐ฅ Team Management
- Multi-tenant architecture
- Team creation and management
- Member invitations
- Role and permission system
๐จ UI Components
- 50+ pre-built Shadcn UI components
- Dark mode support with system preference detection
- Responsive design for all screen sizes
- Hugeicons integration (3000+ icons)
- Custom animations and transitions
๐ ๏ธ Developer Experience
- TypeScript configuration
- ESLint & Prettier setup
- Laravel Pint for PHP formatting
- Hot Module Replacement (HMR)
- SSR support with Inertia.js
- Type-safe routing with Laravel Wayfinder
๐ Additional Features
- Database migrations and seeders
- API routes and controllers
- Queue system ready
- Email notifications
- File upload handling
- Form validation
๐ฆ Tech Stack
Backend
- Laravel 12 - PHP Framework
- Laravel Fortify - Authentication
- Inertia.js - Modern Monolith
- Laravel Wayfinder - Type-safe Routing
Frontend
- React 19 - UI Library
- TypeScript - Type Safety
- Tailwind CSS v4 - Styling
- Shadcn UI - Component Library
- Radix UI - Headless Components
- Hugeicons - Icon Library
Build Tools
- Vite - Build Tool
- ESLint - Linting
- Prettier - Code Formatting
- Laravel Pint - PHP Formatting
๐ Quick Start
Prerequisites
- PHP 8.2 or higher
- Composer
- Node.js 18 or higher
- MySQL/PostgreSQL/SQLite
Installation
- Clone the repository
git clone https://github.com/channlabs/channlabs-starter-kit.git
cd channlabs-starter-kit
- Run automated setup
composer setup
This will:
- Install PHP dependencies
- Copy
.env.exampleto.env - Generate application key
- Run database migrations
- Install Node.js dependencies
- Build frontend assets
- Start development server
composer dev
This runs:
- Laravel development server (http://localhost:8000)
- Queue worker
- Vite dev server with HMR
Alternative: Manual Setup
# Install dependencies composer install npm install # Environment setup cp .env.example .env php artisan key:generate # Database setup php artisan migrate # Build assets npm run build # Start server php artisan serve
๐จ Development
Available Commands
Composer Scripts
composer setup # Complete project setup composer dev # Start development servers composer dev:ssr # Start with SSR support composer lint # Format PHP code composer test # Run tests
NPM Scripts
npm run dev # Start Vite dev server npm run build # Build for production npm run build:ssr # Build with SSR npm run lint # Lint and fix JS/TS npm run format # Format code with Prettier npm run types # Check TypeScript types
Project Structure
channlabs-starter-kit/
โโโ app/ # Laravel application
โ โโโ Console/ # Artisan commands
โ โโโ Http/ # Controllers, Middleware
โ โโโ Models/ # Eloquent models
โโโ database/ # Migrations, Seeders
โโโ resources/
โ โโโ js/ # React application
โ โ โโโ components/ # Reusable components
โ โ โโโ layouts/ # Page layouts
โ โ โโโ pages/ # Inertia pages
โ โ โโโ lib/ # Utilities
โ โโโ views/ # Blade templates
โโโ routes/ # Route definitions
โ โโโ web.php # Web routes
โ โโโ api.php # API routes
โโโ tests/ # Test files
๐ Documentation
Key Concepts
Routing
Routes are defined in routes/web.php and automatically generate TypeScript types via Laravel Wayfinder:
Route::get('/dashboard', function () { return Inertia::render('dashboard'); })->name('dashboard');
import { dashboard } from '@/routes'; <Link href={dashboard()}>Dashboard</Link>;
Components
All UI components are located in resources/js/components/ui/ and follow Shadcn UI patterns:
import { Button } from '@/components/ui/button'; <Button variant="outline">Click me</Button>;
Layouts
Page layouts are in resources/js/layouts/:
app-layout.tsx- Authenticated app layoutauth-layout.tsx- Authentication pages layout
๐จ Customization
Theming
Colors and design tokens are configured in tailwind.config.js. The starter kit uses CSS variables for theming:
@theme { --color-primary: oklch(0.6 0.2 250); --color-background: oklch(1 0 0); }
Adding Components
Use Shadcn CLI to add new components:
npx shadcn@latest add [component-name]
๐งช Testing
# Run all tests composer test # Run PHP tests only php artisan test # Run with coverage php artisan test --coverage
๐ Deployment
Build for Production
npm run build composer install --optimize-autoloader --no-dev php artisan config:cache php artisan route:cache php artisan view:cache
Environment Variables
Key environment variables to configure:
APP_NAME="Your App Name" APP_ENV=production APP_DEBUG=false APP_URL=https://yourdomain.com DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_DATABASE=your_database DB_USERNAME=your_username DB_PASSWORD=your_password
๐ค Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
๐ Acknowledgments
- Laravel - The PHP Framework
- React - The UI Library
- Inertia.js - The Modern Monolith
- Shadcn UI - Beautiful Components
- Tailwind CSS - Utility-first CSS
๐ฌ Support
- ๐ง Email: support@chann.id
- ๐ Website: chann.id
- ๐ Documentation: [Coming Soon]
- ๐ Issues: GitHub Issues
Built with โค๏ธ by Chann Labs
โญ Star us on GitHub โ it motivates us a lot!