Skip to content

loadpartner/tms

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

lptms

Deploy to DO

The Open Source Transportation Management System for Freight Brokers

Get involved

🗨️ Discord Community

📰 Subscribe to the newsletter

Tech Stack

Laravel + Inertia.js + React

Development

A local environment can be setup quickly using Laravel Sail and our docker configurations.

Fresh Setup

Standing up the development environment after cloning the repository should follow these steps:

docker run --rm \
    -u "$(id -u):$(id -g)" \
    -v "$(pwd):/var/www/html" \
    -w /var/www/html \
    laravelsail/php84-composer:latest \
    composer install --ignore-platform-reqs

Can't find sail in your path? Add to your bashrc/zshrc

export PATH=./vendor/bin:$PATH

Copy env file

cp .env.example .env

Up sail

sail up -d      # (using sqlite and no other servies)
# OR
sail --profile full up -d   # (all services in docker-composer.yml)

Setup database

sail artisan migrate

Install npm modules

sail npm install

Generate APP_KEY

sail artisan key:generate

Run Vite

sail npm run dev

[OPTIONAL] Setup Test Data

sail artisan dev:refresh

This will create test users with the following credentials:

Email Password
admin@test.com password
user@test.com password

Setting up Mailpit

  • Ensure Mailpit is not commented out in docker-compose.yml
  • Visit http://localhost:8025 (or whatever you have specified in docker-compose.yml FORWARD_MAILPIT_DASHBOARD_PORT)
  • Update the following .env settings:
MAIL_MAILER=smtp
MAIL_HOST=mailpit
MAIL_PORT=1025 # or whatever you have specified in docker-compose.yml FORWARD_MAILPIT_PORT

Setting up Localstack

If setting up localstack S3, you should first create the bucket:

aws --endpoint-url=http://localhost:4566 s3 mb s3://my-test-bucket
# or list contents if already there
aws --endpoint-url=http://localhost:4566 s3 ls s3://my-test-bucket --recursive

Update your .env to reflect s3:

AWS_ACCESS_KEY_ID=test
AWS_SECRET_ACCESS_KEY=test
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=my-test-bucket
AWS_ENDPOINT=http://localstack:4566
AWS_USE_PATH_STYLE_ENDPOINT=true
FILESYSTEM_DISK=s3

As noted above, the AWS endpoint is localstack which is the container name that can be reached other containers within docker that are linked. However, if you are testing via the browser and try to download, you will be served with http://localstack:4566 so one way to solve that is to edit your hosts file to point localstack to 127.0.0.1 the same way localhost is.

⚠️ Troubleshooting: Nginx Proxy Manager tip

If you're hosting the app behind Nginx Proxy Manager and pages are not fully loading or assets seem broken, try adding the following in the Advanced > Custom Nginx Configuration section of your proxy:

proxy_buffering on;
proxy_buffers 16 16k;
proxy_buffer_size 32k;

Packages

 
 
 

Contributors 4

  •  
  •  
  •  
  •