This project is a Contacts Management Application that allows users to perform CRUD operations on contacts and group them. The frontend is implemented using Vue.js, interacting with a Laravel backend.
- PHP >= 8.0
- Composer
- Node.js & npm
- MySQL
-
Clone the repository:
git clone https://github.com/Mwakai/contact-management-system cd contact-management-system
-
Install PHP dependencies:
composer install
-
Install JavaScript dependencies:
npm install
-
Copy
.env.example
to.env
:cp .env.example .env
-
Generate application key:
php artisan key:generate
- Update
.env
with your database credentials:DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=laravel DB_USERNAME=root DB_PASSWORD=
Run the migrations to create the necessary tables:
php artisan migrate
php artisan serve
Open a new terminal and run
npm run dev
├── app
│ ├── Controllers
│ │ ├── ContactController.php
│ │ └── GroupController.php
│ ├── Models
│ │ ├── Contact.php
│ │ └── Group.php
├── database
│ ├── migrations
│ │ ├── 2023_xx_xx_create_contacts_table.php
│ │ └── 2023_xx_xx_create_groups_table.php
├── resources
│ ├── js
│ │ ├── Components
│ │ │ ├── EditContact.vue
│ │ │ ├── ConfirmModal.vue
│ │ │ ├── GroupForm.vue
│ │ └── Pages
│ │ ├── Dashboard.vue
│ │ └── Welcome.vue
│ │ └── Groups
│ │ └── Index.vue
├── routes
│ └── web.php
└── .env.example