Skip to content

Latest commit

 

History

History
185 lines (132 loc) · 5.63 KB

README.md

File metadata and controls

185 lines (132 loc) · 5.63 KB

🚀 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

✨ 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:fresh --seed
  9. Artisan Serve

    php artisan serve
  10. Npm run dev

    npm run dev
  11. If run successfully you will get this login interface

    image.png

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

    image.png

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

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

  15. Setup the super admin using this command

    php artisan shield:super-admin

    image.png

  16. Choose your super admin user and login again.

    image.png

🤝 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!