Contact Management System

This project is a simple contact management system built with Laravel and Vue.js. It allows users to manage their contacts and contact groups efficiently.

Table of Contents

Prerequisites

  • PHP >= 7.3
  • Composer
  • Node.js >= 12.x
  • npm or yarn
  • MySQL or any other database supported by Laravel

Backend Setup (Laravel)

  1. Clone the Repository

    git clone https://github.com/principalkelvo/contacts-manager.git
    cd your-repository
    
  2. Install PHP Dependencies

    composer install
    
  3. Copy .env File

    cp .env.example .env
    
  4. Generate Application Key

    php artisan key:generate
    
  5. Configure Database

    DB_CONNECTION=mysql
    DB_HOST=127.0.0.1
    DB_PORT=3306
    DB_DATABASE=your_database_name
    DB_USERNAME=your_database_user
    DB_PASSWORD=your_database_password
    
  6. Run Migrations

    php artisan migrate
    
  7. Start the Laravel Development Server

    php artisan serve
    

Frontend Setup (Vue.js with Inertia.js)

  1. Install Node.js Dependencies

    npm install
    
  2. Compile Assets

     npm run dev
    
  3. Run the Tests

    npx playwright test
    

Troubleshooting

  • Database Connection Issues: Double-check your .env configuration.

  • Services Not Running: Ensure all required services (database, server) are running before executing commands.

  • Migration Errors: Verify your Laravel migration files are correctly configured and run migrations again if necessary:

    php artisan migrate:fresh

License

This project is licensed under the MIT License.