Job Communication CRM is a basic Laravel app that tracks your communications with different Companies and their Contacts. You can add, edit, delete companies, contact, and communication with them.
Things I learned:
Tailwind install
Eloquent Relationships:
Company - Employee (One to Many)
Company - Skills (Many to Many)
Comm - Employee (One to Many)
DatabaseSeeder: seed pivot table (attach a random number of skills to each company)
Show all companies, pagination, @click show additional info about the company (employees & their emails) with AlpineJs
Search companies
Sort by Name, Sort by Rating
Show the company and all communications with that company
Show all contacts
Show contact and all communications with that contact
CRUD:
create, edit, delete a company, attach skills to pivot table
create, edit, delete a communication
create, edit, delete contact
Flash message with AlpineJS
Delete modal with AlpineJs, refactored
Blade components
Store skills to pivot table, show skills from the pivot table
Search communications
Filter communications by topRatingCompanies
Merge 2 query filters (search, topRatingCompanies)
Laravel
TailwindCSS
AlpineJS