# Installation The instructions below will help you to properly installand run the generated package to the lavalite project. ## Location Extract the package contents to the folder `/packages/migrator/happytenant/` ## Composer Add the below entries in the `composer.json`. ```json ... "repositories": { ... { "type": "path", "url": "packages/migrator/happytenant" } ... }, ... ``` Then run `composer require migrator/happytenant` ## Migration and seeds ``` php artisan migrate php artisan db:seed --class=Migrator\\Happytenant\\Seeders\\HappytenantTableSeeder ``` ## Publishing * Configuration ``` php artisan vendor:publish --provider="Migrator\Happytenant\Providers\HappytenantServiceProvider" --tag="config" ``` * Language ``` php artisan vendor:publish --provider="Migrator\Happytenant\Providers\HappytenantServiceProvider" --tag="lang" ``` * Views ``` php artisan vendor:publish --provider="Migrator\Happytenant\Providers\HappytenantServiceProvider" --tag="view" ``` ## URLs and APIs ### Web Urls * Admin ``` http://path-to-route-folder/admin/happytenant/{modulename} ``` * User ``` http://path-to-route-folder/user/happytenant/{modulename} ``` * Public ``` http://path-to-route-folder/happytenants ``` ### API endpoints These endpoints can be used with or without `/api/` And also the user can be varied depend on the type of users, eg user, client, admin etc. #### Resource * List ``` http://path-to-route-folder/api/user/happytenant/{modulename} METHOD: GET ``` * Create ``` http://path-to-route-folder/api/user/happytenant/{modulename} METHOD: POST ``` * Edit ``` http://path-to-route-folder/api/user/happytenant/{modulename}/{id} METHOD: PUT ``` * Delete ``` http://path-to-route-folder/api/user/happytenant/{modulename}/{id} METHOD: DELETE ``` #### Public * List ``` http://path-to-route-folder/api/happytenant/{modulename} METHOD: GET ``` * Single Item ``` http://path-to-route-folder/api/happytenant/{modulename}/{slug} METHOD: GET ``` #### Others * Report ``` http://path-to-route-folder/api/user/happytenant/{modulename}/report/{report} METHOD: GET ``` * Export/Import ``` http://path-to-route-folder/api/user/happytenant/{modulename}/exim/{exim} METHOD: POST ``` * Action ``` http://path-to-route-folder/api/user/happytenant/{modulename}/action/{id}/{action} METHOD: PATCH ``` * Actions ``` http://path-to-route-folder/api/user/happytenant/{modulename}/actions/{action} METHOD: PATCH ``` * Workflow ``` http://path-to-route-folder/api/user/happytenant/{modulename}/workflow/{id}/{transition} METHOD: PATCH ```