/jetport-menus

Laravel Jetstream with Livewire. Laravel Passport api in place of of Laravel Sanctum. A full OAuth2 server, complete with Tailwind Styled Client and Token Management UI.

Primary LanguageCSSMIT LicenseMIT

Support and Acknowledgements

This project is heavily based on @rappasoft 's laravel/boilerplate

If you wish to support a project please support him, or one of this project's dependencies, such as spatie or calebporzio, to name a couple.

Road Map

Alpha. Menus

  • OAuth2 Server
  • Permissions Role User with Livewire Datatable Frontend.
  • Admin Impersonation of Users
  • Menu Management Crud
  • Assignable Menus for Each User
  • Alpha Docs

Beta. Jetport

  • Must first complete Alpha Checklist
  • Implement openapi documentation for OAuth server with swagger frontend.
  • Restful API for key resources.
  • Documentation Guidelines, and support libraries for extending API
  • Build a Service or Client library for consuming API
  • Documented Guidelines and Support Libraries for extending Client

RC. Going Silver

  • Must first complete Beta Checklist
  • Ability to share and consume "key resourses" to and from instances
  • Implement SSO with an open source email client
  • Implement ability to manage auth for Nexcloud server (Supports OAuth2)

Release. Prod 1

  • Must first complete RC Checklist
  • Deployment Pipelines
  • Openid connect

Perpetual Beta. Rolling Release

  • Perfect Documentation, tutorials, and internal wikis
  • Maintain, Implement and Test inflow of new features
  • Build and implement in-house, in-app, integrated bug reporter

Tests

api-tokens

Development Demo

https://jetport.turbooffice.net

email admin@admin.com password secret

Dev Deploy Script

cd /home/forge/jetport.turbooffice.net

if [ -f artisan ]; then
    php artisan down
fi

if [ -d ./vendor ]; then
    rm -rf ./vendor
fi

BRANCH=development 

git fetch --all; git reset --hard origin/$BRANCH; git pull origin $BRANCH ; 

$FORGE_COMPOSER install --no-interaction --prefer-dist --optimize-autoloader

( flock -w 10 9 || exit 1
    echo 'Restarting FPM...'; sudo -S service $FORGE_PHP_FPM reload ) 9>/tmp/fpmlock

if [ -f artisan ]; then
   # $FORGE_PHP artisan migrate:refresh --seed
   # $FORGE_PHP artisan up
   ./vendor/bin/envoy run dev
   php artisan up
fi

Getting started

git clone https://github.com/digearthworks/jetport-menus
cd jetport-menus
composer install
edit .env

Mac or Linux

./vendor/bin/envoy run dev

You may optionally pass test flag

./vendor/bin/envoy run dev --test

Windows

See https://laravel.com/docs/8.x/installation#getting-started-on-windows

Or follow steps in dev task in Envoy.blade.php:

@task('dev', ['on'=> 'localhost'])
    php artisan icon:cache
    php artisan key:generate
    npm install && npm run dev
    php artisan storage:link
    php artisan passport:keys
    php artisan db:wipe
    php artisan migrate:refresh --seed
    {{ isset($test) ? 'php artisan test' : '' }}
@endtask

default login

email admin@admin.com password secret

Testing

composer test

Contributing

composer format

Contributing

Reference