rebotlabs/rebot-starter-kit

The skeleton application for the Laravel framework.

dev-main 2025-06-23 18:20 UTC

This package is not auto-updated.

Last update: 2025-06-24 09:12:41 UTC


README

A comprehensive, production-ready Laravel starter kit with React frontend, featuring multi-tenancy, authentication, billing, and more.

๐Ÿš€ Features

Authentication & Security

  • Complete Authentication System: Login, registration, password reset
  • Two-Factor Authentication (2FA): TOTP-based with backup codes
  • Email Verification: OTP-based email verification system
  • Role-Based Access Control: Using Spatie Laravel Permission
  • Password Confirmation: For sensitive operations

Multi-Tenant Organization System

  • Organization Management: Create, update, delete organizations
  • Member Management: Invite, manage, and remove team members
  • Role & Permission System: Granular control over user permissions
  • Organization Switching: Users can belong to multiple organizations
  • Team Onboarding: Guided setup for new organizations

Billing & Subscriptions

  • Stripe Integration: Complete billing system using Laravel Cashier
  • Subscription Management: Plans, upgrades, downgrades
  • Payment Methods: Manage credit cards and payment sources
  • Webhooks: Automated subscription status updates
  • Billing Portal: Customer portal for subscription management

User Interface

  • Modern Design System: Built with shadcn/ui and Radix UI
  • Responsive Design: Mobile-first approach with Tailwind CSS
  • Dark/Light Mode: User preference-based theming
  • Component Library: Reusable UI components
  • Form Validation: Client and server-side validation
  • Toast Notifications: User feedback system

Developer Experience

  • TypeScript: Fully typed frontend with React 19
  • Inertia.js: Modern SPA experience with server-side routing
  • Hot Module Replacement: Fast development with Vite
  • Code Formatting: Prettier and ESLint configuration
  • Testing Suite: Comprehensive PHP testing with Pest
  • CI/CD Ready: GitHub Actions workflow included

Internationalization

  • Multi-language Support: i18n integration with Inertia
  • Translation Management: Organized translation files
  • Dynamic Language Switching: Runtime language changes

๐Ÿ›  Technology Stack

Backend

  • Laravel 12: Latest PHP framework
  • PHP 8.4: Modern PHP features
  • MySQL/PostgreSQL: Database support
  • Stripe: Payment processing
  • Spatie Packages: Permission management and utilities

Frontend

  • React 19: Latest React with concurrent features
  • TypeScript: Type-safe development
  • Inertia.js: Server-side routing with SPA experience
  • Tailwind CSS 4: Utility-first CSS framework
  • shadcn/ui: High-quality component library
  • Radix UI: Accessible component primitives
  • Vite: Lightning-fast build tool

Testing

  • Pest: Modern PHP testing framework
  • Architecture Tests: Code quality assurance
  • Feature Tests: Application behavior testing

๐Ÿ“ฆ Installation

  1. Clone the repository

    git clone https://github.com/rebotlabs/rebot-starter-kit.git
    cd rebot-starter-kit
  2. Install dependencies

    composer install
    bun install
  3. Environment setup

    cp .env.example .env
    php artisan key:generate
  4. Database setup

    php artisan migrate --seed
  5. Build assets

    bun run build
  6. Start development server

    composer dev

๐Ÿงช Testing

Run the complete test suite:

# PHP tests
composer test

# Type checking
bun run types

# Code formatting
vendor/bin/pint
bun run format

๐Ÿ— Project Structure

โ”œโ”€โ”€ app/
โ”‚   โ”œโ”€โ”€ Http/Controllers/           # Application controllers
โ”‚   โ”‚   โ”œโ”€โ”€ Auth/                   # Authentication controllers
โ”‚   โ”‚   โ”œโ”€โ”€ Organization/           # Multi-tenant organization logic
โ”‚   โ”‚   โ”œโ”€โ”€ Settings/               # User and org settings
โ”‚   โ”‚   โ””โ”€โ”€ Stripe/                 # Billing and webhooks
โ”‚   โ”œโ”€โ”€ Models/                     # Eloquent models
โ”‚   โ””โ”€โ”€ Notifications/              # Email notifications
โ”œโ”€โ”€ resources/
โ”‚   โ”œโ”€โ”€ js/
โ”‚   โ”‚   โ”œโ”€โ”€ components/             # React components
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ auth/               # Authentication forms
โ”‚   โ”‚   โ”‚   โ”œโ”€โ”€ ui/                 # Reusable UI components
โ”‚   โ”‚   โ”‚   โ””โ”€โ”€ settings/           # Settings panels
โ”‚   โ”‚   โ”œโ”€โ”€ pages/                  # Inertia pages
โ”‚   โ”‚   โ””โ”€โ”€ layouts/                # Page layouts
โ”‚   โ””โ”€โ”€ lang/                       # Translation files
โ”œโ”€โ”€ tests/
โ”‚   โ”œโ”€โ”€ Feature/                    # Feature tests
โ”‚   โ”œโ”€โ”€ Unit/                       # Unit tests
โ”‚   โ””โ”€โ”€ Architecture/               # Architecture tests
โ””โ”€โ”€ database/
    โ”œโ”€โ”€ migrations/                 # Database migrations
    โ”œโ”€โ”€ seeders/                    # Database seeders
    โ””โ”€โ”€ factories/                  # Model factories

๐Ÿš€ Getting Started

After installation, you can:

  1. Create an account at /register
  2. Set up an organization through the onboarding flow
  3. Invite team members from organization settings
  4. Configure billing if using paid features
  5. Customize the application to your needs

๐Ÿค Contributing

We welcome contributions! Please see our Contributing Guide for details.

๐Ÿ“„ License

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

๐Ÿ†˜ Support