Skip to content

About This Application

Lois Onyinyemme Bassey edited this page Mar 20, 2024 · 2 revisions

Application Requirements

Test-Driven Development

  1. Employ TDD methodologies throughout the development.
  2. Use Pest for writing and running tests.
  3. Ensure comprehensive test coverage for all functionalities.

Docker Integration via Laravel Sail

  1. Ensure the application is containerized and can be run using Docker.
  2. Utilize Laravel Sail for easy Docker management.
  3. Include Swoole within the Docker setup for Octane.

💡Quick One

  1. The make setup:app command simplifies the setup process of this application on your local environment. It automates the following steps:
    • Pulls Required Docker Images: Fetches necessary Docker images for PostgreSQL, Redis, and Laravel Sail.
    • Creates Essential Containers: Initializes PostgreSQL, Redis, and Laravel Sail containers.
    • Sets Up Composer: Prepares Composer for dependency management.
    • Installs Dependencies: Executes composer install to install project dependencies.
    • Generates Encryption Key: Creates a unique encryption key for your Laravel application.
    • Configures Supervisor: Sets up Supervisor to manage critical processes.
    • Database Setup: Initializes the application's database, creating required tables.
  2. The .env file must have the folloiwng key variables
    • APP_PORT=6745
    • APP_URL=http://localhost:6745
    • REDIS_HOST=redis
    • OCTANE_SERVER=swoole

Extra Commands

Run php pest tests

make run-test

Start running the application

make start

Stop the application containers

make stop

Tools, Services and Principles Used

  • DB Service: Postgres
  • Queue Service: Redis
  • Tools
    • Swoole
    • Redis
    • Laravel Actions Package
    • Laravel Octane
    • Laravel Sail
    • PHP Pest
  • Principles
    • TDD
    • DDD
Clone this wiki locally