Laravel was used to develop the application because it is a web application framework with expressive, elegant syntax. We believe development must be an enjoyable and creative experience to be truly fulfilling. Laravel takes the pain out of development by easing common tasks used in many web projects, such as:
- Simple, fast routing engine.
- Powerful dependency injection container.
- Multiple back-ends for session and cache storage.
- Expressive, intuitive database ORM.
- Database agnostic schema migrations.
- Robust background job processing.
- Real-time event broadcasting.
Laravel is accessible, powerful, and provides tools required for large, robust applications.
In order to setup the application locally on you system.
- clone the repository
git clone https://github.com/willypelz/customer-app.git
- cd into the project directory
cd customer-app/test-backend
- install the dependencies for the application
composer install
- create a .env file from the .env.example
cp .env.example .env
- Generate an application key
php artisan key:generate
- create a database called
test_app
in your database - update the env files with your mysql connection details that you have on your system
DB_CONNECTION=mysql
DB_HOST=YOUR_HOST
DB_PORT=MYSQL_PORT
DB_DATABASE=test_app
DB_USERNAME=MYSQL_USER_NAME
DB_PASSWORD=MYSQL_PASSWORD
- Running migration data into the database
php artisan migrate
- Running customer import command
php artisan command:import:customers
- serving the project
php artisan serve
Application Testing is defined as a software testing type, conducted through scripts with the motive of finding errors in software. It deals with tests for the entire application. It helps to enhance the quality of your applications while reducing costs, maximizing ROI, and saving development time.
In order to run the feature test that was written
php ./vendor/bin/phpunit
Ensure you setup xdebug on your system. Xdebug Setup for local machine (xampp)
http://localhost:8000/api/v1/customers
http://localhost:8000/api/v1/customers?page={pageNumber}
http://localhost:8000/api/v1/customers/{id}"
An application that consumes an API Client to manage customers
- State Management: Vuex
- Test-driven development(TDD): mocha(not fully completed)
- Request validation: Joi
- project dockerized (not fully completed);
System customers
Clone the repository
git clone https://github.com/willypelz/customer-app.git
Switch to the repo folder
cd customer-app/www/test-frontend
Install dependencies
npm install
Running the Application
npm run serve
For testing Ensure the backend is running on port 8081
http://localhost:8081
if it is running on different port you might need to
update the env.js details the port the backend is running on.
this can be found in the static folder.
requirements
docker-compose up --build
- Name: Asefon Michael Pelumi
- Nickname: Softwaredef
- Mail: pelumiasefon@gmail.com
Thanks. If you have any problem setting it up or complain you can kindly post them on issues or message me directly