2020-06-30 15:35:02 +08:00
2020-06-30 15:35:02 +08:00
2020-05-11 14:43:49 +08:00
2020-05-11 14:43:49 +08:00
2020-06-09 09:02:33 +08:00
2020-05-11 14:43:49 +08:00
2020-06-30 15:35:02 +08:00
2020-06-09 08:22:17 +08:00
2020-05-11 14:43:49 +08:00
2020-05-11 14:43:49 +08:00
2020-05-11 14:43:49 +08:00
2020-05-11 14:43:49 +08:00
2020-05-11 14:43:49 +08:00
2020-05-11 14:43:49 +08:00
2020-05-11 14:43:49 +08:00
2020-05-11 14:43:49 +08:00
2020-05-11 14:43:49 +08:00
2020-06-05 06:29:11 +08:00
2020-05-11 14:43:49 +08:00
2020-05-11 14:43:49 +08:00
2020-05-11 14:43:49 +08:00
2020-05-11 14:43:49 +08:00

This project was created in 1 week with a code generator I have created to increase productivity, and this is the "real-world usage test" to learn more about the limitations and downfalls of the generator.

Files Structure

Common Backend file structure

Inside App/Modules:

  • Each module on the site is separated into folders without sub-categorization
  • Controller logic is all the logic required before executing the action
  • Data Transfer Objects are class in charge of validating the request data types & for unifying the methods and the names for request data
  • Service classes are for executing specific actions and don't run any conditions
  • Standards are represent the rule for executing an action like authorization, validations, and criterias

Common Vue Files

General Components

  • list component is responsible for calling the fetch endpoint and uses 3 components:
    1. Loading animation component
    2. slot for custom component (e.g. user component, client component)
    3. pagination component
  • Validation Wrapper component is responsible for each form input validation and displaying validation errors
  • Additional support components:
    1. transition component
    2. Modal Component
    3. Selectable component for fetching data and creating a select input component

Modules components

  • Each module usually has only 3 components:
    1. element component singular component layout
    2. form component for creating and editing modules
    3. filter component is used for searching a list of components

Common Issues

  • Some database types are not being converted correctly in the code base and has to be manually fixed after being generated (e.g. UnsignedBigInteger)
  • Categorizing the folders is currently 1 level and doesn't really work with sub-categorizations
  • There are unnecessary files being generated
  • Time tracker backend code needs to be cleaned up
  • Project task generator uses a primitive foreach loop which isn't efficient solution and can be improved
  • excessive use of resource objects to loading relationships
  • task details vue component needs to be cleaned and divided into smaller components
S
Description
No description provided
Readme 12 MiB
Languages
PHP 56.7%
Vue 20.6%
HTML 18.7%
Blade 4%