├── .github
├── ISSUE_TEMPLATE
│ ├── bug_report.md
│ ├── enhancement.md
│ └── feature_request.md
├── dependabot.yml
└── pull_request_template.md
├── .gitignore
├── CONTRIBUTING.md
├── LICENSE
├── README.markdown
├── Vagrantfile
├── bbbeasy-backend
├── .gitignore
├── .php-cs-fixer.php
├── app
│ ├── config
│ │ ├── access-cli.ini
│ │ ├── access-install.ini
│ │ ├── access.ini
│ │ ├── client.ini
│ │ ├── config-development.sample.ini
│ │ ├── config-production.sample.ini
│ │ ├── config-test.ini
│ │ ├── default.ini
│ │ ├── routes-cli.ini
│ │ ├── routes-install.ini
│ │ ├── routes-test.ini
│ │ ├── routes.ini
│ │ ├── smtp.ini
│ │ └── upload.ini
│ ├── i18n
│ │ └── en-GB.php
│ ├── security
│ │ └── dictionary
│ │ │ └── en-US.json
│ ├── src
│ │ ├── Acl
│ │ │ └── Access.php
│ │ ├── Actions
│ │ │ ├── Account
│ │ │ │ ├── ChangePassword.php
│ │ │ │ ├── Edit.php
│ │ │ │ ├── GetResetPasswordToken.php
│ │ │ │ ├── Login.php
│ │ │ │ ├── Logout.php
│ │ │ │ ├── Register.php
│ │ │ │ ├── ResetPassword.php
│ │ │ │ └── SetLocale.php
│ │ │ ├── Base.php
│ │ │ ├── Core
│ │ │ │ ├── GetFile.php
│ │ │ │ ├── GetLocale.php
│ │ │ │ ├── HVSocket.php
│ │ │ │ ├── Install.php
│ │ │ │ └── Main.php
│ │ │ ├── Delete.php
│ │ │ ├── Labels
│ │ │ │ ├── Add.php
│ │ │ │ ├── Delete.php
│ │ │ │ ├── Edit.php
│ │ │ │ └── Index.php
│ │ │ ├── Logs
│ │ │ │ ├── Clean.php
│ │ │ │ └── Collect.php
│ │ │ ├── Mail
│ │ │ │ └── Track.php
│ │ │ ├── Notification
│ │ │ │ └── WarningNotification.php
│ │ │ ├── PresetSettings
│ │ │ │ ├── Collect.php
│ │ │ │ └── Edit.php
│ │ │ ├── Presets
│ │ │ │ ├── Add.php
│ │ │ │ ├── Copy.php
│ │ │ │ ├── Delete.php
│ │ │ │ ├── Edit.php
│ │ │ │ ├── EditSubcategories.php
│ │ │ │ └── Index.php
│ │ │ ├── Recordings
│ │ │ │ ├── Collect.php
│ │ │ │ ├── Delete.php
│ │ │ │ ├── Edit.php
│ │ │ │ ├── Index.php
│ │ │ │ └── Publish.php
│ │ │ ├── RequirePrivilegeTrait.php
│ │ │ ├── Roles
│ │ │ │ ├── Add.php
│ │ │ │ ├── Collect.php
│ │ │ │ ├── Delete.php
│ │ │ │ ├── Edit.php
│ │ │ │ └── Index.php
│ │ │ ├── RolesPermissions
│ │ │ │ └── Collect.php
│ │ │ ├── Rooms
│ │ │ │ ├── Add.php
│ │ │ │ ├── Delete.php
│ │ │ │ ├── Edit.php
│ │ │ │ ├── Index.php
│ │ │ │ ├── Start.php
│ │ │ │ └── View.php
│ │ │ ├── Settings
│ │ │ │ ├── Collect.php
│ │ │ │ ├── Edit.php
│ │ │ │ └── SaveLogo.php
│ │ │ ├── Users
│ │ │ │ ├── Add.php
│ │ │ │ ├── Collect.php
│ │ │ │ ├── Delete.php
│ │ │ │ ├── Edit.php
│ │ │ │ └── Index.php
│ │ │ └── WebSocket
│ │ │ │ └── Server.php
│ │ ├── Application
│ │ │ ├── Boot.php
│ │ │ └── Bootstrap.php
│ │ ├── Core
│ │ │ └── Session.php
│ │ ├── Data
│ │ │ └── PresetData.php
│ │ ├── Enum
│ │ │ ├── CacheKey.php
│ │ │ ├── Enum.php
│ │ │ ├── GuestPolicy.php
│ │ │ ├── Locale.php
│ │ │ ├── Presets
│ │ │ │ ├── Audio.php
│ │ │ │ ├── Branding.php
│ │ │ │ ├── BreakoutRooms.php
│ │ │ │ ├── General.php
│ │ │ │ ├── GuestPolicy.php
│ │ │ │ ├── Language.php
│ │ │ │ ├── Layout.php
│ │ │ │ ├── LearningDashboard.php
│ │ │ │ ├── LockSettings.php
│ │ │ │ ├── Presentation.php
│ │ │ │ ├── Recording.php
│ │ │ │ ├── Screenshare.php
│ │ │ │ ├── Security.php
│ │ │ │ ├── UserExperience.php
│ │ │ │ ├── Webcams.php
│ │ │ │ ├── Whiteboard.php
│ │ │ │ └── ZcaleRight.php
│ │ │ ├── ResetTokenStatus.php
│ │ │ ├── ResponseCode.php
│ │ │ ├── UserRole.php
│ │ │ └── UserStatus.php
│ │ ├── Helpers
│ │ │ ├── Base.php
│ │ │ ├── I18n.php
│ │ │ ├── Time.php
│ │ │ └── Upload.php
│ │ ├── Log
│ │ │ └── LogWriterTrait.php
│ │ ├── Mail
│ │ │ └── MailSender.php
│ │ ├── Models
│ │ │ ├── Base.php
│ │ │ ├── Label.php
│ │ │ ├── Preset.php
│ │ │ ├── PresetSetting.php
│ │ │ ├── ResetPasswordToken.php
│ │ │ ├── Role.php
│ │ │ ├── RolePermission.php
│ │ │ ├── Room.php
│ │ │ ├── RoomLabel.php
│ │ │ ├── Setting.php
│ │ │ ├── User.php
│ │ │ └── UserSession.php
│ │ ├── Utils
│ │ │ ├── BigBlueButtonRequester.php
│ │ │ ├── CliUtils.php
│ │ │ ├── DataUtils.php
│ │ │ ├── Environment.php
│ │ │ ├── PresetProcessor.php
│ │ │ ├── PrivilegeUtils.php
│ │ │ └── SecurityUtils.php
│ │ └── Validation
│ │ │ └── DataChecker.php
│ └── templates
│ │ ├── error
│ │ ├── 404.phtml
│ │ └── error.phtml
│ │ └── mail
│ │ └── common
│ │ ├── footer.phtml
│ │ ├── header.phtml
│ │ └── reset_password.phtml
├── composer.json
├── composer.lock
├── data
│ └── .gitkeep
├── db
│ ├── .gitkeep
│ ├── data
│ │ └── .gitkeep
│ ├── migrations
│ │ ├── .gitkeep
│ │ ├── 20191214105808_create_sessions_tables.php
│ │ ├── 20191214105908_create_roles_table.php
│ │ ├── 20191214110037_add_default_roles.php
│ │ ├── 20220201092421_create_users_tables.php
│ │ ├── 20220201093158_create_reset_password_token_table.php
│ │ ├── 20220202151316_create_settings_tables.php
│ │ ├── 20220208163949_add_default_settings_record.php
│ │ ├── 20220209223026_create_preset_settings_table.php
│ │ ├── 20220218081946_create_roles_permissions_table.php
│ │ ├── 20220510114219_create_preset_table.php
│ │ ├── 20220720114045_create_labels_table.php
│ │ ├── 20221126202045_remove_name_index_in_preset.php
│ │ ├── 20221201142041_create_rooms_table.php
│ │ ├── 20221201143100_create_rooms_labels_table.php
│ │ ├── 20221202154528_change_role_id_in_user.php
│ │ ├── 20221206231224_add_expires_column_to_session.php
│ │ ├── 20230102232327_add_meeting_id_in_room.php
│ │ └── 20230104190815_add_avatar_in_user.php
│ └── seeds
│ │ └── .gitkeep
├── logs
│ └── .gitkeep
├── phinx.yml
├── public
│ ├── dictionary
│ │ └── en-US.json
│ ├── favicon.png
│ └── index.php
├── rector.php
├── tests
│ ├── .gitkeep
│ ├── src
│ │ ├── Actions
│ │ │ ├── Account
│ │ │ │ ├── ChangePasswordTest.php
│ │ │ │ ├── GetResetPasswordTokenTest.php
│ │ │ │ ├── LoginTest.php
│ │ │ │ ├── RegisterTest.php
│ │ │ │ ├── ResetPasswordTest.php
│ │ │ │ └── SetLocaleTest.php
│ │ │ ├── Core
│ │ │ │ ├── GetLocaleTest.php
│ │ │ │ └── InstallTest.php
│ │ │ ├── Labels
│ │ │ │ ├── AddTest.php
│ │ │ │ ├── DeleteTest.php
│ │ │ │ ├── EditTest.php
│ │ │ │ └── IndexTest.php
│ │ │ ├── PresetSettings
│ │ │ │ ├── CollectTest.php
│ │ │ │ └── EditTest.php
│ │ │ ├── Presets
│ │ │ │ ├── AddTest.php
│ │ │ │ ├── CopyTest.php
│ │ │ │ ├── DeleteTest.php
│ │ │ │ ├── EditTest.php
│ │ │ │ └── IndexTest.php
│ │ │ ├── Recordings
│ │ │ │ ├── CollectTest.php
│ │ │ │ ├── DeleteTest.php
│ │ │ │ ├── EditTest.php
│ │ │ │ └── IndexTest.php
│ │ │ ├── Roles
│ │ │ │ ├── AddTest.php
│ │ │ │ ├── CollectTest.php
│ │ │ │ ├── DeleteTest.php
│ │ │ │ ├── EditTest.php
│ │ │ │ └── IndexTest.php
│ │ │ ├── RolesPermissions
│ │ │ │ └── CollectTest.php
│ │ │ ├── Rooms
│ │ │ │ ├── AddTest.php
│ │ │ │ ├── CollectTest.php
│ │ │ │ ├── EditTest.php
│ │ │ │ ├── StartTest.php
│ │ │ │ └── ViewTest.php
│ │ │ ├── Settings
│ │ │ │ ├── CollectTest.php
│ │ │ │ └── EditTest.php
│ │ │ └── Users
│ │ │ │ ├── AddTest.php
│ │ │ │ ├── DeleteTest.php
│ │ │ │ ├── EditTest.php
│ │ │ │ └── IndexTest.php
│ │ ├── Config
│ │ │ └── Routes.php
│ │ ├── Core
│ │ │ ├── ConfigurationTest.php
│ │ │ ├── ReflectionTest.php
│ │ │ └── Statera.php
│ │ ├── Fake
│ │ │ ├── LabelFaker.php
│ │ │ ├── PresetFaker.php
│ │ │ ├── PresetSettingFaker.php
│ │ │ ├── ResetPasswordTokenFaker.php
│ │ │ ├── RoleFaker.php
│ │ │ ├── RoomFaker.php
│ │ │ ├── RoomLabelFaker.php
│ │ │ └── UserFaker.php
│ │ ├── Models
│ │ │ ├── LabelTest.php
│ │ │ ├── PresetSettingTest.php
│ │ │ ├── PresetTest.php
│ │ │ ├── ResetPasswordTokenTest.php
│ │ │ ├── RoleTest.php
│ │ │ ├── RoomLabelTest.php
│ │ │ ├── RoomTest.php
│ │ │ ├── SettingTest.php
│ │ │ └── UserTest.php
│ │ ├── Suite
│ │ │ ├── AccountActionsTest.php
│ │ │ ├── CoreActionsTest.php
│ │ │ ├── LabelsActionsTest.php
│ │ │ ├── ModelsTest.php
│ │ │ ├── PresetSettingsActionsTest.php
│ │ │ ├── PresetsActionsTest.php
│ │ │ ├── RecordingsActionsTest.php
│ │ │ ├── RolesActionsTest.php
│ │ │ ├── RolesPermissionsActionsTest.php
│ │ │ ├── RoomsActionsTest.php
│ │ │ ├── SettingsActionsTest.php
│ │ │ └── UsersActionsTest.php
│ │ └── Test
│ │ │ ├── Scenario.php
│ │ │ ├── TestGroup.php
│ │ │ └── UnitTest.php
│ ├── templates
│ │ ├── account
│ │ │ ├── authentication_deleted_error.json
│ │ │ ├── authentication_error.json
│ │ │ ├── authentication_invalid_error.json
│ │ │ ├── authentication_locked_error.json
│ │ │ ├── authentication_not_active_error.json
│ │ │ ├── password_change_empty_error.json
│ │ │ ├── password_change_error.json
│ │ │ ├── password_change_invalid_error.json
│ │ │ ├── password_reset_empty_error.json
│ │ │ ├── password_reset_error.json
│ │ │ ├── password_reset_token_error.json
│ │ │ ├── password_reset_token_user_error.json
│ │ │ ├── registration_error.json
│ │ │ └── registration_invalid_error.json
│ │ ├── core
│ │ │ ├── empty_error.json
│ │ │ ├── exist_error.json
│ │ │ ├── invalid_error.json
│ │ │ └── invalid_format_error.json
│ │ ├── label
│ │ │ ├── edit_success.json
│ │ │ ├── empty_name_error.json
│ │ │ ├── exist_error.json
│ │ │ ├── invalid_color_error.json
│ │ │ └── success.json
│ │ ├── not_found_error.json
│ │ ├── preset
│ │ │ ├── default_error.json
│ │ │ ├── empty_error.json
│ │ │ └── exist_error.json
│ │ ├── role
│ │ │ ├── empty_error.json
│ │ │ └── exist_error.json
│ │ ├── room
│ │ │ ├── empty_error.json
│ │ │ └── exist_error.json
│ │ ├── setting
│ │ │ ├── empty_error.json
│ │ │ └── invalid_format_error.json
│ │ └── user
│ │ │ ├── empty_error.json
│ │ │ ├── exist_email_error.json
│ │ │ ├── exist_error.json
│ │ │ ├── exist_username_error.json
│ │ │ ├── update_exist_email_error.json
│ │ │ ├── update_exist_error.json
│ │ │ └── update_exist_username_error.json
│ └── ui
│ │ ├── css
│ │ └── theme.css
│ │ ├── images
│ │ ├── logo.png
│ │ ├── powered.png
│ │ └── watermark.png
│ │ └── statera.htm
├── tmp
│ ├── .gitkeep
│ ├── cache
│ │ └── .gitkeep
│ └── mail
│ │ └── .gitkeep
└── tools
│ ├── .gitkeep
│ └── statera.php
├── bbbeasy-docs
├── .gitignore
├── README.md
├── babel.config.js
├── build-docs.sh
├── docusaurus.config.js
├── guides
│ ├── administrator-guide
│ │ ├── _category_.json
│ │ ├── configuration.md
│ │ ├── install.md
│ │ └── software.md
│ ├── api-reference
│ │ ├── _category_.json
│ │ └── overview.md
│ ├── developer-guide
│ │ ├── _category_.json
│ │ ├── architecture.md
│ │ ├── bbbeasy-configuration-utility.md
│ │ └── development.md
│ └── user-guide
│ │ ├── _category_.json
│ │ ├── administration.md
│ │ ├── bigbluebutton_settings.md
│ │ ├── branding.md
│ │ ├── faqs.md
│ │ ├── labels.md
│ │ ├── login.md
│ │ ├── presets.md
│ │ ├── profile.md
│ │ ├── recordings.md
│ │ ├── register.md
│ │ ├── reset_password.md
│ │ ├── roles.md
│ │ ├── rooms details.md
│ │ ├── rooms.md
│ │ ├── users.md
│ │ └── welcome.md
├── package.json
├── run-docs.sh
├── sidebars.js
├── src
│ ├── components
│ │ └── HomepageFeatures
│ │ │ ├── index.tsx
│ │ │ └── styles.module.css
│ ├── css
│ │ └── bbbeasy.css
│ └── pages
│ │ ├── index.module.css
│ │ ├── index.tsx
│ │ └── markdown-page.md
├── start-server.sh
├── static
│ ├── .nojekyll
│ ├── admin
│ │ └── admin.png
│ ├── administration
│ │ └── administration.png
│ ├── bbbsettings
│ │ ├── audio.png
│ │ ├── bigbluebutton_setting.png
│ │ └── finish.png
│ ├── branding
│ │ ├── Branding.png
│ │ ├── brand_color.png
│ │ ├── edit_branding.png
│ │ ├── organisation_branding_step2.png
│ │ └── settings_branding.png
│ ├── change_password
│ │ ├── change_password.png
│ │ └── reset_password.png
│ ├── img
│ │ ├── Breakout Rooms.png
│ │ ├── General.png
│ │ ├── Guest Policy.png
│ │ ├── Language.png
│ │ ├── Layout.png
│ │ ├── Presentation.png
│ │ ├── Screenshare.png
│ │ ├── Security.png
│ │ ├── Webcams.png
│ │ ├── Whiteboard.png
│ │ ├── ZcaleRight.png
│ │ ├── bee_speed.png
│ │ ├── bee_student.png
│ │ ├── bee_worker.png
│ │ ├── favicon.png
│ │ ├── intro.png
│ │ ├── learning_dashboard.png
│ │ ├── lock_settings.png
│ │ ├── logo.svg
│ │ └── user_experience.png
│ ├── label
│ │ ├── delete_label.png
│ │ ├── edit_labels.png
│ │ ├── labels.png
│ │ ├── new_label.png
│ │ └── new_labels.png
│ ├── login
│ │ └── login.png
│ ├── preset
│ │ ├── copy_preset.png
│ │ ├── delete_presete.png
│ │ ├── edit_preset_settings.png
│ │ ├── new_preset.png
│ │ ├── page_presets.png
│ │ ├── presets.png
│ │ └── rename_preset.png
│ ├── profile
│ │ └── profile.png
│ ├── recording
│ │ ├── delete_recordings.png
│ │ ├── edit_recordings.png
│ │ ├── recording.png
│ │ └── save_recordings.png
│ ├── register
│ │ └── register.png
│ ├── role
│ │ ├── edit_permissions.png
│ │ ├── new_roles.png
│ │ ├── role_rname.png
│ │ └── roles.png
│ ├── room
│ │ ├── create_my_first_room.png
│ │ ├── delete-room.png
│ │ ├── details_room.png
│ │ ├── edit_room.png
│ │ ├── new_room.png
│ │ ├── rooms.png
│ │ └── start.png
│ └── user
│ │ ├── delete_user.png
│ │ ├── edit_user.png
│ │ ├── new_user.png
│ │ └── users.png
├── tsconfig.json
└── yarn.lock
├── bbbeasy-frontend
├── .env
├── .eslintrc.yaml
├── .gitignore
├── .prettierrc.json
├── README.md
├── build-installer-dev.sh
├── build-webapp-dev.sh
├── craco.config.js
├── cypress.config.js
├── cypress
│ ├── e2e
│ │ └── bbbeasy.spec.cy.js
│ ├── fixtures
│ │ ├── example.json
│ │ ├── profile.json
│ │ └── users.json
│ ├── plugins
│ │ └── index.js
│ └── support
│ │ ├── commands.js
│ │ └── e2e.js
├── package.json
├── public
│ ├── .gitignore
│ ├── icons
│ │ ├── fonts
│ │ │ ├── bbbeasy-icons.svg
│ │ │ ├── bbbeasy-icons.ttf
│ │ │ ├── bbbeasy-icons.woff
│ │ │ └── bbbeasy-icons.woff2
│ │ └── style.css
│ ├── images
│ │ ├── avatar.png
│ │ ├── education.png
│ │ ├── favicon.png
│ │ ├── landing.png
│ │ ├── logo_01.png
│ │ ├── logo_02.png
│ │ └── meeting.png
│ ├── index.html
│ ├── manifest.json
│ └── robots.txt
├── run-installer-dev.sh
├── run-webapp-dev.sh
├── src
│ ├── App-installer.css
│ ├── App-webapp.css
│ ├── App.test.tsx
│ ├── App.tsx
│ ├── components
│ │ ├── AddLabelForm.tsx
│ │ ├── AddPresetForm.tsx
│ │ ├── AddRoomForm.tsx
│ │ ├── AddUserForm.tsx
│ │ ├── Administration.tsx
│ │ ├── Branding.tsx
│ │ ├── ConfirmPassword.tsx
│ │ ├── CopyTextToClipBoard.tsx
│ │ ├── DynamicIcon.tsx
│ │ ├── EditableTable.tsx
│ │ ├── EditableTableCell.tsx
│ │ ├── EditableTableColumnSearch.tsx
│ │ ├── EditableTableRow.tsx
│ │ ├── EmptyData.tsx
│ │ ├── GuestPolicy.tsx
│ │ ├── Install.tsx
│ │ ├── Labels.tsx
│ │ ├── LandingPage.tsx
│ │ ├── Languages.tsx
│ │ ├── LanguagesBBB.tsx
│ │ ├── LoadingSpinner.tsx
│ │ ├── NoData.tsx
│ │ ├── Notifications.tsx
│ │ ├── PageNotFound.tsx
│ │ ├── PresetSettings.tsx
│ │ ├── Presets.tsx
│ │ ├── PrivateRoute.tsx
│ │ ├── Profile.tsx
│ │ ├── PublicRoute.tsx
│ │ ├── Recordings.tsx
│ │ ├── Roles.tsx
│ │ ├── RoomDetails.tsx
│ │ ├── RoomPresentations.tsx
│ │ ├── RoomRecordings.tsx
│ │ ├── Rooms.tsx
│ │ ├── Step1Form.tsx
│ │ ├── Step2Form.tsx
│ │ ├── Step3Form.tsx
│ │ ├── UserPasswordForm.tsx
│ │ ├── Users.tsx
│ │ ├── auth
│ │ │ ├── ChangePassword.tsx
│ │ │ ├── Login.tsx
│ │ │ ├── Register.tsx
│ │ │ └── ResetPassword.tsx
│ │ └── layout
│ │ │ ├── AppFooter.tsx
│ │ │ ├── AppHeader.tsx
│ │ │ └── AppSider.tsx
│ ├── constants.ts
│ ├── functions
│ │ └── compare.function.ts
│ ├── index.css
│ ├── index.tsx
│ ├── lib
│ │ ├── AuthHeader.tsx
│ │ ├── AxiosInstance.ts
│ │ ├── Logger.tsx
│ │ ├── RoomsContext.tsx
│ │ └── UserContext.tsx
│ ├── locale
│ │ ├── ar-TN.json
│ │ ├── en-US.json
│ │ └── fr-FR.json
│ ├── react-app-env.d.ts
│ ├── reportWebVitals.ts
│ ├── routing
│ │ ├── IRoute.tsx
│ │ ├── Router.tsx
│ │ ├── backend-config.tsx
│ │ ├── config-install.tsx
│ │ └── config.tsx
│ ├── services
│ │ ├── auth.service.ts
│ │ ├── install.service.ts
│ │ ├── labels.service.ts
│ │ ├── locale.service.ts
│ │ ├── menu.service.ts
│ │ ├── notification.service.ts
│ │ ├── preset.settings.service.ts
│ │ ├── presets.service.ts
│ │ ├── recordings.service.ts
│ │ ├── roles.service.ts
│ │ ├── rooms.service.ts
│ │ ├── settings.service.ts
│ │ └── users.service.ts
│ ├── setupTests.ts
│ └── types
│ │ ├── CategoriesIcon.ts
│ │ ├── GetIconName.ts
│ │ ├── GuestPolicyType.ts
│ │ ├── LabelType.ts
│ │ ├── LanguageType.ts
│ │ ├── MenuSiderType.ts
│ │ ├── MenuType.ts
│ │ ├── MyPresetType.ts
│ │ ├── PaginationType.ts
│ │ ├── PresetType.ts
│ │ ├── RecordingType.ts
│ │ ├── RoleType.ts
│ │ ├── RoomType.ts
│ │ ├── SessionType.ts
│ │ ├── SettingsType.ts
│ │ ├── SubCategoryType.ts
│ │ ├── TableColumnType.ts
│ │ ├── ThemeType.ts
│ │ ├── UserType.ts
│ │ └── getRandomString.ts
├── tsconfig.json
└── yarn.lock
├── docker-compose.yml
├── docker
├── bbbeasy.conf
├── config-production.ini
├── default.ini
├── phinx.yml
├── php.ini
└── www-bbbeasy.conf
├── ecosystem
├── .gitignore
├── config
│ ├── .env
│ ├── global.js
│ └── services
│ │ ├── bbbeasy-installer-service.js
│ │ ├── bbbeasy-webapp-service.js
│ │ └── index.js
├── ecosystem.config.js
├── node_modules
│ └── dotenv
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── config.d.ts
│ │ ├── config.js
│ │ ├── lib
│ │ ├── cli-options.js
│ │ ├── env-options.js
│ │ ├── main.d.ts
│ │ └── main.js
│ │ └── package.json
├── package.json
└── yarn.lock
├── install.sh
├── package
├── .gitignore
├── bbbeasy.Dockerfile
├── bbbeasy.dockerignore
├── package.sh
└── templates
│ └── nginx
│ └── bbbeasy.conf
├── sample.env
├── tools
└── bbbeasy
└── vagrant
├── config
├── .gitignore
└── vagrant-local.example.yml
├── dev
├── nginx
│ ├── bbbeasy.conf
│ ├── log
│ │ └── .gitignore
│ └── nginx.conf
└── php-fpm
│ ├── www.conf
│ └── xdebug.ini
└── provision
├── always-as-root.sh
├── common.sh
├── once-as-root.sh
└── once-as-vagrant.sh
/.github/ISSUE_TEMPLATE/bug_report.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Bug report
3 | about: Create a report to help us improve
4 | title: ''
5 | labels: 'type: bug'
6 | assignees: ''
7 |
8 | ---
9 |
10 | **Describe the bug**
11 | A clear and concise description of what the bug is.
12 |
13 | **To Reproduce**
14 | Steps to reproduce the behavior:
15 | 1. Go to '...'
16 | 2. Click on '....'
17 | 3. Scroll down to '....'
18 | 4. See error
19 |
20 | **Expected behavior**
21 | A clear and concise description of what you expected to happen.
22 |
23 | **Possible solution**
24 | A possible solution to resolve the issue.
25 |
26 | **Screenshots**
27 | If applicable, add screenshots to help explain your problem.
28 |
29 | **Desktop (please complete the following information):**
30 | - OS: [e.g. iOS]
31 | - Browser [e.g. chrome, safari]
32 | - Version [e.g. 22]
33 |
34 | **Smartphone (please complete the following information):**
35 | - Device: [e.g. iPhone6]
36 | - OS: [e.g. iOS8.1]
37 | - Browser [e.g. stock browser, safari]
38 | - Version [e.g. 22]
39 |
40 | **Additional context**
41 | Add any other context about the problem here.
42 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/enhancement.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Enhancement
3 | about: Improve an existing feature or functionality
4 | title: ''
5 | labels: 'type: enhancement'
6 | assignees: ''
7 |
8 | ---
9 |
10 | **What is wrong with the current implementation? Please describe.**
11 | A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
12 |
13 | **Describe the solution you'd like**
14 | A clear and concise description of what you want should happen.
15 |
16 | **Screenshots/Designs**
17 | Please attach any relevant screenshots or designs if applicable.
18 |
19 | **Additional context**
20 | Please provide any additional context or information that may be helpful.
21 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/feature_request.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Feature request
3 | about: Suggest an idea for this project
4 | title: ''
5 | labels: 'type: new feature'
6 | assignees: ''
7 |
8 | ---
9 |
10 | **Is your feature request related to a problem? Please describe.**
11 | A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
12 |
13 | **Describe the solution you'd like**
14 | A clear and concise description of what you want to happen.
15 |
16 | **Describe alternatives you've considered**
17 | A clear and concise description of any alternative solutions or features you've considered.
18 |
19 | **Additional context**
20 | Add any other context or screenshots about the feature request here.
21 |
--------------------------------------------------------------------------------
/.github/dependabot.yml:
--------------------------------------------------------------------------------
1 | version: 2
2 | updates:
3 | - package-ecosystem: "composer"
4 | directory: "/bbbeasy-backend"
5 | schedule:
6 | interval: "daily"
7 | - package-ecosystem: "npm"
8 | directory: "/bbbeasy-docs"
9 | schedule:
10 | interval: "daily"
11 | - package-ecosystem: "npm"
12 | directory: "/bbbeasy-frontend"
13 | schedule:
14 | interval: "daily"
15 |
--------------------------------------------------------------------------------
/.github/pull_request_template.md:
--------------------------------------------------------------------------------
1 | ## **Description**
2 |
3 | Enter a brief description of the bug being fixed.
4 |
5 | ## **Changes Made**
6 |
7 | Describe the changes made to fix the bug
8 |
9 | ## **Closes Issue(s)**
10 |
11 | ## **Related Issue(s)**
12 |
13 | ## **Types of changes**
14 |
15 | - [ ] Bug fix (non-breaking change which fixes an issue)
16 | - [ ] New feature (non-breaking change which adds functionality)
17 | - [ ] Optimization (provides speedup with no functional changes)
18 | - [ ] Breaking change (fix or feature that would cause existing functionality to change)
19 | - [ ] Automated testing implementation or update
20 | - [ ] Dependencies updated to a newer version
21 | - [ ] Documentation update
22 | - [ ] Experimental feature that requires further discussion
23 |
24 | ## **Screenshots and screen captures**
25 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | ### Vagrant template
2 | # General
3 | .vagrant/
4 |
5 | # Log files (if you are creating logs in debug mode, uncomment this)
6 | # *.log
7 | *.log
8 |
9 | .idea
10 |
11 | settings.json
12 |
13 | output/**/*.*
14 |
15 | .env
16 |
--------------------------------------------------------------------------------
/CONTRIBUTING.md:
--------------------------------------------------------------------------------
1 | # Contributing guide
2 |
3 | Welcome to the BBBeasy community!
4 |
5 | ## BBBeasy development community
6 |
7 | The primary communication ground for the BBBeasy community is the Github
8 | discussions available at [github.com/riadvice/bbbeasy/discussions](https://github.com/riadvice/bbbeasy/discussions):
9 |
10 | - **Users** and **administrators** of BBBeasy stop by to
11 | ask questions, offer feedback, and participate in product design
12 | discussions.
13 | - **Contributors to the project**, including the **core BBBeasy
14 | development team**, discuss ongoing and future projects, brainstorm
15 | ideas, and generally help each other out.
16 |
17 | We love hearing from our users!
18 |
--------------------------------------------------------------------------------
/bbbeasy-backend/app/config/access-cli.ini:
--------------------------------------------------------------------------------
1 | ; BBBEasy open source platform - https://riadvice.tn/
2 | ;
3 | ; Copyright (c) 2022-2023 RIADVICE SUARL and by respective authors (see below).
4 | ;
5 | ; This program is free software; you can redistribute it and/or modify it under the
6 | ; terms of the GNU Affero General Public License as published by the Free Software
7 | ; Foundation; either version 3.0 of the License, or (at your option) any later
8 | ; version.
9 | ;
10 | ; BBBeasy is distributed in the hope that it will be useful, but WITHOUT ANY
11 | ; WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
12 | ; PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.
13 | ;
14 | ; You should have received a copy of the GNU Affero General Public License along
15 | ; with BBBEasy; if not, see