Skip to content
This repository has been archived by the owner on May 20, 2020. It is now read-only.

eleazarbr/laraveldaily-minicrm

Repository files navigation

Laravel Daily - MiniCRM using Admin BSB

AdminBSB is a free admin panel that is based on Bootstrap 3.x with Material Design. Check out this video to see how to install AdminBSB in a standalone project using Laravel mix.

Table of contents

About

Clone this repository to start using Laravel 5.6 with AdminBSB.

screenshot-2018-6-30 welcome to bootstrap based admin template - material design

It also contains the following things:

  • Basic Laravel Auth: ability to log in as administrator or user.
  • Use database seeds to create first user with email "admin@admin.com" and password "password".
  • Employees DB table consists of these fields: First name (required), last name (required), Company (foreign key to Companies), email, phone
  • Companies DB table consists of these fields: Name (required), email, logo (minimum 100×100), website
  • CRUD functionality (Create / Read / Update / Delete) for two menu items: Companies and Employees.
  • Use database migrations to create those schemas above
  • Create views
  • Store companies logos in storage/app/public folder and make them accessible from public
  • Use basic Laravel resource controllers with default methods – index, create, store etc.
  • Use Laravel’s validation function, using Request classes
  • Use Laravel’s pagination for showing Companies/Employees list, 10 entries per page
  • Use Laravel make:auth as default Bootstrap-based design theme, but remove ability to register
  • Use Datatables.net library to show table – with our without server-side rendering
  • Use more complicated front-end theme like AdminLTE
  • Email notification: send email whenever new company is entered (use Mailgun or Mailtrap)
  • Make the project multi-language (using resources/lang folder)
  • Basic testing with PHPUnit

Summary

  • Install a new laravel app via composer create-project laravel/laravel "5.5.*". Used Laravel 5.5 because my development machine had PHP 7.0.29.
  • Executed php artisan make:auth command to generate the authentication scaffolding.
  • After having created the database, run php artisan migrate to generate the basic structure of users.
  • Created the seeder for users UsersTableSeeder.php now I can login.
  • Created the resources controllers CompaniesController and EmployeesController and their respective models.
  • Created the migrations for both models with their relationships.
  • Developed an outline of CRUD code, to later test it from the frontend.
  • Started with the company module, created views and form validations.
  • Created views for employees.
  • Created a symbolic link using php artisan storage:link to access the logos stored in storage.
  • Finished coding the basic crud for companies and employees.
  • In this commit, I added the Laravel's Pagination, this was a feature that I had never used, because I always used DataTables!
  • Removed the ability to register, simply overriding the register route in the web.php file.
  • Replaced the PHP way to render tables, now DataTables library is used. Used Laravel Mix to define the compilation steps of the Webpack.
  • Used Admin BSB Material Design instead of AdminLTE, developed with Bootstrap 3 Framework and Google Material Design.

Installation Instructions

  1. Run git clone https://github.com/eleazarbr/laraveldaily-minicrm
  2. Create a MySQL database for the project
    • mysql -u root -p,
    • create database laraveldaily;
    • \q
  3. Run composer update from the projects root folder
  4. From the projects root run cp .env.example .env
  5. Configure your .env file
  6. Run composer update from the projects root folder
  7. From the projects root folder run php artisan key:generate
  8. From the projects root folder run php artisan migrate
  9. From the projects root folder run php artisan make:auth
  10. From the projects root folder run composer dump-autoload
  11. From the projects root folder run php artisan db:seed
  12. Set up a virtual host or run php artisan serve

License

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

About

A MiniCRM using Laravel and AdminBSB

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published