Skip to content

tqt97/laravel-crm-filament

Repository files navigation

Laravel Logo

Build Status Total Downloads Latest Stable Version License

Laravel CRM with filament project

Step by step

  1. Install Laravel and Filament

    • Laravel Installation: create-project laravel/laravel laravel-crm-filament
    • Filament Installation
          composer require filament/filament
          php artisan filament:install --panels
          php artisan make:filament-user
      
    • Logging Into Filament
  2. Creating Lead Sources Resource

    • Create lead_sources DB structure: Model/Migration and a belongsTo relationship with customers
    • Create Seeds with semi-real data without factories
    • Create a Filament Resource for Lead sources
    • Add a DeleteAction to the table with validation if that record is used
    • Add lead source information to the Customer Resource table/form
    • Divide the menu into two levels: introduce Settings parent menu item
  3. Creating Customers Resource

    • Create DB structure for Customers: Model/Migration
    • Create Factories/Seeds for testing data
    • Generate Filament Resource directly from the DB structure
    • Hide the deleted_at column from the table
    • Merge first_name and last_name into one table column
  4. Creating Tags for Customers

    • Create tags DB structure: Model/Migration and a belongsToMany relationship with customers
    • Create Seeds with semi-real data without factories
    • Create a Filament Resource for Tags
    • Add a ColorPicker field to the form and a ColorColumn column to the table
    • Add a DeleteAction to the table with validation if that record is used
    • Add tags to the Customer form with Select::make()->multiple()
    • Add tags to the Customer table in the same column of name using formatStateUsing() and rendering a separate Blade View
  5. Pipeline Stages Resource: Reorderable

    • Create pipeline_stages DB structure: Model/Migration and a hasMany relationship to customers
    • Create Seeds with semi-real data without factories
    • Create a Filament Resource for Pipeline Stages
    • Auto-assign the new position to a new Pipeline Stage
    • Make the table reorderable with the position field
    • Add a Custom Action Set Default with confirmation
    • Add a DeleteAction to the table with validation if that record is used
    • Add pipeline stage information to the Customer Resource table/form
  6. Moving Customers through Pipeline Stages

    • Create a CustomerPipelineStage Model to save the history of the Customer's Pipeline Stage changes and any comments added.
    • Add a custom Table Action to move customers to other pipeline stages.
    • Add creating and updating action Observers to our Customer Model to save the history.
  7. Customers by Stage: Tabs with Numbers

    • Dynamically create tabs for each Pipeline Stage
    • Create a new tab called All to show all Customers
    • Add counters to each tab to show how many Customers are in each group
  8. SoftDeletes: Archive and Restore Customers

    • Add the Archived tab to the Customers table
    • Add Delete button to the table
    • Add the Restore button to the Archived tab
    • Disable row click on the Archived tab
  9. Customer View Page with Infolist

  10. Customer Documents: Upload/Download

  11. Custom Fields for Customers

  12. Customers in a Draggable Kanban Board

    • Creating Custom Page - Our Customer Board php artisan make:filament-page ManageCustomerStages
  13. Roles/Permissions: Manage Employees

    • Creating Roles Model and Database structure
    • Creating Users Resource
    • Adding Employees to Customers
    • Adding Employee Changes to Customer History
    • Limiting Employee Access
  14. Employee User Invitations Process

    • Create Invitation Model and Database tables
    • Modify UserResource Create Button Action - to Invite the Employee
    • Creating Custom Registration Page
    • Creating and Sending the Email
  15. Customer Tasks and Calendar View

    • Create Task Model and Database
    • Add Create Task button to the Customer list
    • Add Task List to the Customer Page
    • Add Task Resource with Tabs
    • Adding Tabs to the Task Resource
    • Add a Calendar Page for Tasks
  16. Create Customer Quotes with Products

    • Creating the Product Model
    • Creating Product Resource
    • Creating the Quote Model
    • Creating Quote Resource
    • Create Quotes From Customer Table
  17. Generate Quote PDF

    • Creating a Simple View Page for Quote
    • Installing PDF Package
    • Generating PDF
    • Displaying PDF in View Page