Laravel 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.
First of all please craete the database schema you want to use.
- I used
banknet_dev
for development,banknet_test
for unit testing.
I assume you have docker installed on your computer if it so please run below commands:
docker compose build
, will build the project.docker compose up
, and your project is ready and awaiting your requests atlocalhost:8080
!
Firstly, connect to running docker container:
sudo docker exec -it php /bin/sh
then simple run test command:php artisan test
.
I created unit tests and postman doc for this project and i tried to apply best practices. I hope you will like this project.
If you face any error about the authentication you may need to run php artisan passport:install
and then you will need to copy paste outputs to your .env
file.
sample output of passport:install:
Personal access client created successfully.
Client ID: 99bcd175-3ac8-4a6b-bbfa-d8271a2ec1ec
Client secret: kJWDbpBdwughu6WWHi5uoI9TyAkl6BAOY5w4EUrB
Password grant client created successfully.
Client ID: 99bcd175-b715-4b1a-b9a7-73e4e845fe08
Client secret: tPh6HJ5WLS0S0EUvGyhkSZWMaOy9Ht9NWmGYZULX
Copy the first ID
and first Secret
to your env file like below:
PASSPORT_PERSONAL_ACCESS_CLIENT_ID="99bcd175-3ac8-4a6b-bbfa-d8271a2ec1ec"
PASSPORT_PERSONAL_ACCESS_CLIENT_SECRET="kJWDbpBdwughu6WWHi5uoI9TyAkl6BAOY5w4EUrB"