https://github.com/odilson-dev/contact-management-app
A contact management app that allow users to perfom CRUD operations on contacts built with Vue.js and Laravel
https://github.com/odilson-dev/contact-management-app
backpack-for-laravel eloquent-orm inertiajs laravel mysql php vuejs
Last synced: about 2 months ago
JSON representation
A contact management app that allow users to perfom CRUD operations on contacts built with Vue.js and Laravel
- Host: GitHub
- URL: https://github.com/odilson-dev/contact-management-app
- Owner: odilson-dev
- Created: 2024-09-22T16:36:20.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-10-02T13:43:09.000Z (over 1 year ago)
- Last Synced: 2026-01-03T18:12:04.016Z (5 months ago)
- Topics: backpack-for-laravel, eloquent-orm, inertiajs, laravel, mysql, php, vuejs
- Language: PHP
- Homepage:
- Size: 263 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Contact Management Application
This is a web-based contact management application built using **Laravel** for the backend and **Vue.js** for the frontend. The application allows users to create, view, update, and delete (CRUD) contacts. It also includes an admin panel for managing users and contacts using **Backpack for Laravel**.

## Features
- User authentication (registration, login, and logout)
- Manage contacts: Create, Read, Update, and Delete (CRUD) operations
- Contacts can have names, phone numbers
- Admin panel for user and contact management (powered by Backpack for Laravel)
- Role-based access control (admin vs regular user)
- Responsive frontend built with Vue.js
## Installation
### Prerequisites
Before you begin, ensure you have the following installed:
- [PHP](https://www.php.net/) >= 8.0
- [Composer](https://getcomposer.org/)
- [Node.js](https://nodejs.org/en/) >= 12
- [Git](https://git-scm.com/)
- [MySQL](https://www.mysql.com/) or any other supported database
### Clone the Repository
To clone the project repository, run:
```bash
git clone https://github.com/your-username/contact-management-app.git
cd contact-management-app
```
### Install Dependencies
- Install PHP dependencies:
```bash
composer install
```
### Install JavaScript dependencies:
```bash
npm install
```
### Run Migrations
- To set up the database tables, run the migrations:
```bash
php artisan migrate
```
### Seed the Database (Optional)
- You can seed the database with some dummy data for testing:
```bash
php artisan db:seed
```
### Serve the Application
- To start the development server, run:
```bash
php artisan serve
```
The application will be available at `http://localhost:8000`.
To start the frontend development server (for Vue.js), run:
```bash
npm run dev
```
# Backpack Admin Panel
To access the admin panel, go to http://localhost:8000/admin after logging in as an admin user. The default admin credentials can be set in the database after seeding or by creating an admin user manually.

## Usage
### Authentication
- Users can register, log in, and log out.
- Only authenticated users can manage their contacts.
- Admin users have access to the Backpack admin panel for managing users and contacts.
### Contact Management
- Users can add new contacts using the form on the main page.
- Contacts can be edited and deleted.
- The list of contacts is dynamically updated using Vue.js.
### Admin Panel (Backpack for Laravel)
- Admins can log in to the Backpack admin panel to view and manage users and contacts.
- Admin panel provides CRUD interfaces for managing the data.
## Conclusion
This Contact Management Application demonstrates the seamless integration of Laravel as a backend framework with Vue.js on the frontend. It provides a user-friendly interface for managing contacts, and an efficient admin panel built using Backpack for Laravel. With role-based access control and a responsive design the application is robust and scalable. This project highlights best practices in full-stack web development, focusing on modern technologies and frameworks, and serves as a foundation for building more advanced CRM-like applications.
Feel free to clone, modify, and contribute to this project to suit your specific needs!