The components folder contains the styled MUI components used in the application like buttons, avatar, popover menus, etc. These components contain custom styling, but any of the MUI components can be used from their library. Read about Mui documentation here. Using a component library can save time and provide consistency as opposed to building and styling UI components from scratch.
The form input folder contains styled variations of text input fields.
The data tables folder contains two types of tables which can used depending on the needs of the application. Both share the same styling in DataTable.styled.tsx.
The reactTable component is made with React Table, which is a popular 3rd party library for data tables. Read about React Table documentation here. This component takes a full, non-paginated list of data and manages it locally with pagination and filtering. GlobalFilter filters the react table data based on keyword input. Tenants and User Lists use this component.
The serverTable component is a custom table component. This component takes paginated lists with metadata and calls on the server for each interaction. Server-side paginated data is better suited for large data samples. The Venue List view is one area that uses this paginated table component, for example.