Skip to content

siubie/kaido-kit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

99 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚀 Kaido Kit FilamentPhp Starter Code

A powerful and opinionated FilamentPHP starter kit designed to accelerate your admin panel development. Kaido Kit provides a robust foundation with pre-configured plugins, configuration and best practices for building feature-rich admin interfaces.

GitHub stars GitHub forks GitHub issues License PHP Version Laravel Version Filament Version

Introduction Video

Build FilamentPhp Apps 10x Faster | Kaido-Kit Starter Kit (Complete Demo)

✨ Features

🛠️ Developer Experience

  • ⚡ Quick CRUD generation with customized FilamentPHP stubs
    • Optimized UX out of the box
    • No need to modify generated resources
  • 🔄 Auto reload on save for rapid development
  • 📚 Easy API documentation using Scramble
  • 📤 Built-in Export and Import examples in Filament resources

🔐 Authentication & Authorization

  • 🛡️ Role-Based Access Control (RBAC) using Filament Shield
  • 🔑 Enhanced login page with custom design
  • 🌐 Social login with Google via Filament Socialite
  • 👤 User profile management with Filament Breezy
  • 🔒 Instant 2-Factor Authentication capabilities
  • 👥 Simple user-to-role assignment
  • 🎭 User impersonation via Filament Impersonate

📡 API & Integration

  • 🚀 Full API support with Filament API Service
    • Seamlessly integrated with Shield
    • Ready-to-use API endpoints
  • 📨 Email integration using Resend
  • 📝 Auto-generated API documentation

📁 Media & Content Management

⚙️ Configuration & Settings

🚀 Quick Start

  1. Create new project using composer

    composer create-project siubie/kaido-kit
  2. Composer install

    composer install
  3. Npm Install

    npm install
  4. Copy .env

    cp .env.example .env
  5. Configure your database in .env

    DB_CONNECTION=mysql
    DB_HOST=127.0.0.1
    DB_PORT=3306
    DB_DATABASE=kaido_kit
    DB_USERNAME=root
    DB_PASSWORD=
  6. Configure your google sign in cliend id and secret (optional)

    #google auth
    GOOGLE_CLIENT_ID=
    GOOGLE_CLIENT_SECRET=
    GOOGLE_REDIRECT_URI=http://localhost:8000/admin/oauth/callback/google
  7. Configure your resend for email sending (optional)

    #resend
    MAIL_MAILER=resend
    MAIL_HOST=127.0.0.1
    MAIL_PORT=2525
    MAIL_USERNAME=null
    MAIL_PASSWORD=null
    MAIL_ENCRYPTION=null
    RESEND_API_KEY=
    MAIL_FROM_ADDRESS="[email protected]"
    MAIL_FROM_NAME="${APP_NAME}"
  8. Migrate your database

    php artisan migrate --seed
  9. Serve the Application

    composer run dev
    
  10. If run successfully you will get this login interface

    image.png

  11. When signed in it will show this (not much yet but it getting there :) )

    image.png

  12. Next step is to setup the RBAC, first generate the role and permission

    php artisan shield:generate --all
  13. It will ask which panel do you want to generate permission/policies for choose the admin panel.

  14. Setup the super admin using this command

    php artisan shield:super-admin

    image.png

  15. Choose your super admin user and login again.

    image.png

Security

Set your app Debug to false in .env file

APP_NAME="Kaido-Kit"
APP_ENV=local
APP_KEY=base64:gWUd7RPrCZm6iu7qFddY3039BQLroNHJ0nqKcBr8eeA=
APP_DEBUG=false
APP_TIMEZONE=UTC
APP_URL=https://localhost:8000

🤝 Contributing

We welcome contributions! Please follow these steps:

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

🙏 Acknowledgments

💬 Support

⭐ Show your support

Give a ⭐️ if this project helped you!

Star History

Star History Chart