@cdmbase/wiki-browser 12.0.18-alpha.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (367) hide show
  1. package/LICENSE +21 -0
  2. package/lib/components/Logo.d.ts +4 -0
  3. package/lib/components/Logo.d.ts.map +1 -0
  4. package/lib/components/Logo.js +16 -0
  5. package/lib/components/Logo.js.map +1 -0
  6. package/lib/components/help/SidebarSearch.d.ts +8 -0
  7. package/lib/components/help/SidebarSearch.d.ts.map +1 -0
  8. package/lib/components/help/SidebarSearch.js +111 -0
  9. package/lib/components/help/SidebarSearch.js.map +1 -0
  10. package/lib/components/help/index.d.ts +2 -0
  11. package/lib/components/help/index.d.ts.map +1 -0
  12. package/lib/components/landing/FeatureCard.d.ts +13 -0
  13. package/lib/components/landing/FeatureCard.d.ts.map +1 -0
  14. package/lib/components/landing/FeatureCard.js +85 -0
  15. package/lib/components/landing/FeatureCard.js.map +1 -0
  16. package/lib/components/landing/QuickLinkCard.d.ts +8 -0
  17. package/lib/components/landing/QuickLinkCard.d.ts.map +1 -0
  18. package/lib/components/landing/QuickLinkCard.js +26 -0
  19. package/lib/components/landing/QuickLinkCard.js.map +1 -0
  20. package/lib/components/landing/SearchInput.d.ts +10 -0
  21. package/lib/components/landing/SearchInput.d.ts.map +1 -0
  22. package/lib/components/landing/SearchInput.js +223 -0
  23. package/lib/components/landing/SearchInput.js.map +1 -0
  24. package/lib/components/landing/index.d.ts +4 -0
  25. package/lib/components/landing/index.d.ts.map +1 -0
  26. package/lib/components/welcome.d.ts +3 -0
  27. package/lib/components/welcome.d.ts.map +1 -0
  28. package/lib/compute.d.ts +4 -0
  29. package/lib/compute.d.ts.map +1 -0
  30. package/lib/compute.js +96 -0
  31. package/lib/compute.js.map +1 -0
  32. package/lib/config/env-config.d.ts +4 -0
  33. package/lib/config/env-config.d.ts.map +1 -0
  34. package/lib/config/env-config.js +7 -0
  35. package/lib/config/env-config.js.map +1 -0
  36. package/lib/docs.config.d.ts +48 -0
  37. package/lib/docs.config.d.ts.map +1 -0
  38. package/lib/index.d.ts +4 -0
  39. package/lib/index.d.ts.map +1 -0
  40. package/lib/index.js +2 -0
  41. package/lib/index.js.map +1 -0
  42. package/lib/loaders/search.d.ts +1 -0
  43. package/lib/loaders/search.d.ts.map +1 -0
  44. package/lib/module.d.ts +4 -0
  45. package/lib/module.d.ts.map +1 -0
  46. package/lib/module.js +11 -0
  47. package/lib/module.js.map +1 -0
  48. package/lib/pages/ArticlePage/ArticlePage.d.ts +4 -0
  49. package/lib/pages/ArticlePage/ArticlePage.d.ts.map +1 -0
  50. package/lib/pages/ArticlePage/ArticlePage.js +222 -0
  51. package/lib/pages/ArticlePage/ArticlePage.js.map +1 -0
  52. package/lib/pages/ArticlePage/index.d.ts +3 -0
  53. package/lib/pages/ArticlePage/index.d.ts.map +1 -0
  54. package/lib/pages/ArticlePage/index.js +3 -0
  55. package/lib/pages/ArticlePage/index.js.map +1 -0
  56. package/lib/pages/CategoryCollection/CategoryCollection.d.ts +4 -0
  57. package/lib/pages/CategoryCollection/CategoryCollection.d.ts.map +1 -0
  58. package/lib/pages/CategoryCollection/CategoryCollection.js +103 -0
  59. package/lib/pages/CategoryCollection/CategoryCollection.js.map +1 -0
  60. package/lib/pages/CategoryCollection/index.d.ts +3 -0
  61. package/lib/pages/CategoryCollection/index.d.ts.map +1 -0
  62. package/lib/pages/CategoryCollection/index.js +3 -0
  63. package/lib/pages/CategoryCollection/index.js.map +1 -0
  64. package/lib/pages/Help/HelpIndex.d.ts +4 -0
  65. package/lib/pages/Help/HelpIndex.d.ts.map +1 -0
  66. package/lib/pages/Help/HelpIndex.js +44 -0
  67. package/lib/pages/Help/HelpIndex.js.map +1 -0
  68. package/lib/pages/Help/index.d.ts +4 -0
  69. package/lib/pages/Help/index.d.ts.map +1 -0
  70. package/lib/pages/Help/index.js +226 -0
  71. package/lib/pages/Help/index.js.map +1 -0
  72. package/lib/pages/Landing/index.d.ts +3 -0
  73. package/lib/pages/Landing/index.d.ts.map +1 -0
  74. package/lib/pages/Landing/index.js +281 -0
  75. package/lib/pages/Landing/index.js.map +1 -0
  76. package/lib/routes.json +2533 -0
  77. package/lib/seo.d.ts +22 -0
  78. package/lib/seo.d.ts.map +1 -0
  79. package/lib/slot-fill/FooterFill.d.ts +3 -0
  80. package/lib/slot-fill/FooterFill.d.ts.map +1 -0
  81. package/lib/slot-fill/FooterFill.js +18 -0
  82. package/lib/slot-fill/FooterFill.js.map +1 -0
  83. package/lib/slot-fill/LogoFill.d.ts +5 -0
  84. package/lib/slot-fill/LogoFill.d.ts.map +1 -0
  85. package/lib/slot-fill/LogoFill.js +74 -0
  86. package/lib/slot-fill/LogoFill.js.map +1 -0
  87. package/lib/slot-fill/consts.d.ts +5 -0
  88. package/lib/slot-fill/consts.d.ts.map +1 -0
  89. package/lib/slot-fill/consts.js +1 -0
  90. package/lib/slot-fill/consts.js.map +1 -0
  91. package/lib/slot-fill/index.d.ts +4 -0
  92. package/lib/slot-fill/index.d.ts.map +1 -0
  93. package/lib/templates/assets/images/add-link-frontend.png +0 -0
  94. package/lib/templates/assets/images/add-package-backend.png +0 -0
  95. package/lib/templates/assets/images/add-to-backend-module.png +0 -0
  96. package/lib/templates/assets/images/add-upload-client-frontend.png +0 -0
  97. package/lib/templates/assets/images/additional-parameters.png +0 -0
  98. package/lib/templates/assets/images/aeh-implementation.png +0 -0
  99. package/lib/templates/assets/images/aeh-usage.png +0 -0
  100. package/lib/templates/assets/images/apollo-client/recommendation_cache_mgmt.png +0 -0
  101. package/lib/templates/assets/images/app-deploy-new-version/jenkins1.PNG +0 -0
  102. package/lib/templates/assets/images/app-deploy-new-version/jenkins2.PNG +0 -0
  103. package/lib/templates/assets/images/auth-wrapper-code.png +0 -0
  104. package/lib/templates/assets/images/cdebase.png +0 -0
  105. package/lib/templates/assets/images/cdm-locales-directory.png +0 -0
  106. package/lib/templates/assets/images/client-settings.png +0 -0
  107. package/lib/templates/assets/images/codegen_file_update.png +0 -0
  108. package/lib/templates/assets/images/configuration.png +0 -0
  109. package/lib/templates/assets/images/copy-plugin.png +0 -0
  110. package/lib/templates/assets/images/docusaurus.png +0 -0
  111. package/lib/templates/assets/images/error-link.png +0 -0
  112. package/lib/templates/assets/images/error-sample.png +0 -0
  113. package/lib/templates/assets/images/extension copy.png +0 -0
  114. package/lib/templates/assets/images/extension.png +0 -0
  115. package/lib/templates/assets/images/graphql/graphql-folder-backend.png +0 -0
  116. package/lib/templates/assets/images/graphql/graphql-folder-with-gql.png +0 -0
  117. package/lib/templates/assets/images/i18n-config.png +0 -0
  118. package/lib/templates/assets/images/image.png +0 -0
  119. package/lib/templates/assets/images/logo.svg +10 -0
  120. package/lib/templates/assets/images/logo1.svg +1 -0
  121. package/lib/templates/assets/images/modify-upload-false-server.png +0 -0
  122. package/lib/templates/assets/images/navigation-auth-enabled.png +0 -0
  123. package/lib/templates/assets/images/org-dashboard-navigation.png +0 -0
  124. package/lib/templates/assets/images/org-navigation.png +0 -0
  125. package/lib/templates/assets/images/preferences_graphql_type.png +0 -0
  126. package/lib/templates/assets/images/provider.png +0 -0
  127. package/lib/templates/assets/images/route-config.png +0 -0
  128. package/lib/templates/assets/images/service-accounts.png +0 -0
  129. package/lib/templates/assets/images/source-code/source-code-environments.png +0 -0
  130. package/lib/templates/assets/images/source-code/source-code-organization.png +0 -0
  131. package/lib/templates/assets/images/spin-clone-develop-deployment/jenkins-changes.png +0 -0
  132. package/lib/templates/assets/images/spin-clone-develop-deployment/lerna-changes.png +0 -0
  133. package/lib/templates/assets/images/spin-clone-develop-deployment/root-package-json-changes.png +0 -0
  134. package/lib/templates/assets/images/spin-clone-develop-deployment/values-dev-changes.png +0 -0
  135. package/lib/templates/assets/images/sso-mappers.png +0 -0
  136. package/lib/templates/assets/images/sso-picture-mapper.png +0 -0
  137. package/lib/templates/assets/images/sso-settings.png +0 -0
  138. package/lib/templates/assets/images/timesheet_apollo_cache.png +0 -0
  139. package/lib/templates/assets/images/timesheet_query.png +0 -0
  140. package/lib/templates/assets/images/tutorial/docsVersionDropdown.png +0 -0
  141. package/lib/templates/assets/images/tutorial/localeDropdown.png +0 -0
  142. package/lib/templates/assets/images/unauthenticated.png +0 -0
  143. package/lib/templates/assets/images/undraw_docusaurus_mountain.svg +170 -0
  144. package/lib/templates/assets/images/undraw_docusaurus_react.svg +169 -0
  145. package/lib/templates/assets/images/undraw_docusaurus_tree.svg +1 -0
  146. package/lib/templates/assets/images/vite-plugin-config.png +0 -0
  147. package/lib/templates/content/docs/Generators/Project/generate-fullproject.md +12 -0
  148. package/lib/templates/content/docs/LLM/Logger.llm.md +194 -0
  149. package/lib/templates/content/docs/LLM/backend-proxies-services-llm.md +2687 -0
  150. package/lib/templates/content/docs/LLM/backend-service-llm.md +3384 -0
  151. package/lib/templates/content/docs/LLM/db_migration_llm.md +954 -0
  152. package/lib/templates/content/docs/LLM/frontend/REMIX-15.3-upgrade-llm.md +1245 -0
  153. package/lib/templates/content/docs/LLM/inngest/INNGEST_FUNCTION_DEVELOPMENT_GUIDE_LLM.md +1241 -0
  154. package/lib/templates/content/docs/LLM/inngest/INNGEST_NAMESPACE_LLM.md +384 -0
  155. package/lib/templates/content/docs/LLM/llm_workflow_namespace.md +384 -0
  156. package/lib/templates/content/docs/LLM/organization-components-form-llm.md +1395 -0
  157. package/lib/templates/content/docs/LLM/page-component-llm.md +173 -0
  158. package/lib/templates/content/docs/LLM/preferences-settings-llm.md +2781 -0
  159. package/lib/templates/content/docs/LLM/tailwind-css-llm.md +502 -0
  160. package/lib/templates/content/docs/UI/SchemaBasedUI.md +334 -0
  161. package/lib/templates/content/docs/UI/SlotFillComponent.md +334 -0
  162. package/lib/templates/content/docs/adminide-modules/account/auth0-login.md +31 -0
  163. package/lib/templates/content/docs/adminide-modules/account/index.md +14 -0
  164. package/lib/templates/content/docs/adminide-modules/account/keycloak-remix-setup.md +86 -0
  165. package/lib/templates/content/docs/adminide-modules/account/remix-auth-setup.md +79 -0
  166. package/lib/templates/content/docs/adminide-modules/account/various-auth-qatest.md +157 -0
  167. package/lib/templates/content/docs/adminide-modules/api-builders/graphql.md +906 -0
  168. package/lib/templates/content/docs/adminide-modules/billing/payments/index.md +14 -0
  169. package/lib/templates/content/docs/adminide-modules/billing/payments/stripe/index.md +14 -0
  170. package/lib/templates/content/docs/adminide-modules/billing/payments/stripe/settingup-stripe-locally.md +25 -0
  171. package/lib/templates/content/docs/adminide-modules/billing/tier-config.md +293 -0
  172. package/lib/templates/content/docs/adminide-modules/connectors/Connector.md +207 -0
  173. package/lib/templates/content/docs/adminide-modules/file-upload/index.md +16 -0
  174. package/lib/templates/content/docs/adminide-modules/file-upload/setup.md +435 -0
  175. package/lib/templates/content/docs/adminide-modules/file-upload/upload-file-using-signed-url.md +161 -0
  176. package/lib/templates/content/docs/adminide-modules/preferences/AddAdditionalPermissions.md +151 -0
  177. package/lib/templates/content/docs/adminide-modules/preferences/Configuration.md +241 -0
  178. package/lib/templates/content/docs/adminide-modules/preferences/Policy-Configuration.md +61 -0
  179. package/lib/templates/content/docs/adminide-modules/preferences/UI-components/ResourceSettingsLoader.md +319 -0
  180. package/lib/templates/content/docs/adminide-modules/preferences/contribute_scope_target.md +280 -0
  181. package/lib/templates/content/docs/adminide-modules/preferences/generate-urii.md +94 -0
  182. package/lib/templates/content/docs/adminide-modules/preferences/index.md +28 -0
  183. package/lib/templates/content/docs/adminide-modules/preferences/machine-configuration.md +157 -0
  184. package/lib/templates/content/docs/adminide-modules/preferences/pageSettings/generateCdecodeUri.md +1289 -0
  185. package/lib/templates/content/docs/adminide-modules/preferences/pageSettings/migratingFromUseSettings.md +215 -0
  186. package/lib/templates/content/docs/adminide-modules/preferences/permissions/Roles-Permissions.md +72 -0
  187. package/lib/templates/content/docs/adminide-modules/preferences/permissions/settingUserPermissions.md +139 -0
  188. package/lib/templates/content/docs/adminide-modules/preferences/preference-dependency.md +138 -0
  189. package/lib/templates/content/docs/adminide-modules/preferences/route-based-configuration.md +41 -0
  190. package/lib/templates/content/docs/adminide-modules/preferences/schema-configuration.md +71 -0
  191. package/lib/templates/content/docs/adminide-modules/preferences/supported.md +24 -0
  192. package/lib/templates/content/docs/adminide-modules/preferences/useSettingsLoader.md +248 -0
  193. package/lib/templates/content/docs/adminide-modules/project-tools/auth-providers.md +1317 -0
  194. package/lib/templates/content/docs/adminide-modules/project-tools/keycloak-guide.md +543 -0
  195. package/lib/templates/content/docs/adminide-modules/project-tools/tenant-management/tenant-based-authentication.md +846 -0
  196. package/lib/templates/content/docs/adminide-modules/project-tools/tenant-management/tenant-management.md +708 -0
  197. package/lib/templates/content/docs/adminide-modules/project-tools/tenant-management/tenants.md +1117 -0
  198. package/lib/templates/content/docs/chrome-extension/index.md +14 -0
  199. package/lib/templates/content/docs/chrome-extension/setup.md +30 -0
  200. package/lib/templates/content/docs/contributing/adding-package.md +23 -0
  201. package/lib/templates/content/docs/contributing/adding_new_modules.md +99 -0
  202. package/lib/templates/content/docs/contributing/architecture-updates.md +19 -0
  203. package/lib/templates/content/docs/contributing/avoid-using-promises-ui.md +116 -0
  204. package/lib/templates/content/docs/contributing/coding-guidelines.md +111 -0
  205. package/lib/templates/content/docs/contributing/do-and-dont.md +42 -0
  206. package/lib/templates/content/docs/contributing/faq.md +22 -0
  207. package/lib/templates/content/docs/contributing/folder-setup/browser.md +12 -0
  208. package/lib/templates/content/docs/contributing/folder-setup/config.md +12 -0
  209. package/lib/templates/content/docs/contributing/folder-setup/containers-server.md +12 -0
  210. package/lib/templates/content/docs/contributing/folder-setup/core.md +12 -0
  211. package/lib/templates/content/docs/contributing/folder-setup/graphql.md +12 -0
  212. package/lib/templates/content/docs/contributing/folder-setup/index.md +30 -0
  213. package/lib/templates/content/docs/contributing/folder-setup/module.md +12 -0
  214. package/lib/templates/content/docs/contributing/folder-setup/server.md +12 -0
  215. package/lib/templates/content/docs/contributing/folder-setup/services.md +12 -0
  216. package/lib/templates/content/docs/contributing/folder-setup/store.md +12 -0
  217. package/lib/templates/content/docs/contributing/frontend-coding.md +30 -0
  218. package/lib/templates/content/docs/contributing/git-subtree-sharing.md +73 -0
  219. package/lib/templates/content/docs/contributing/graphql-subscriptions.md +69 -0
  220. package/lib/templates/content/docs/contributing/how-to-contribute.md +30 -0
  221. package/lib/templates/content/docs/contributing/how_to_check_pure_esm.md +29 -0
  222. package/lib/templates/content/docs/contributing/index.md +60 -0
  223. package/lib/templates/content/docs/contributing/installation-issues.md +23 -0
  224. package/lib/templates/content/docs/contributing/keyboard-shortcut.md +131 -0
  225. package/lib/templates/content/docs/contributing/language/locale-support.md +12 -0
  226. package/lib/templates/content/docs/contributing/lerna-build-tools.md +516 -0
  227. package/lib/templates/content/docs/contributing/lerna-yarn-workspaces.md +95 -0
  228. package/lib/templates/content/docs/contributing/lint-and-formatter.md +20 -0
  229. package/lib/templates/content/docs/contributing/mobile-setup.md +16 -0
  230. package/lib/templates/content/docs/contributing/project-setup.md +233 -0
  231. package/lib/templates/content/docs/contributing/react/index.md +14 -0
  232. package/lib/templates/content/docs/contributing/react/lazy-component.md +70 -0
  233. package/lib/templates/content/docs/contributing/run-various-options.md +124 -0
  234. package/lib/templates/content/docs/contributing/schema-first-graphql-types.md +37 -0
  235. package/lib/templates/content/docs/contributing/source-code-organization.md +57 -0
  236. package/lib/templates/content/docs/contributing/staging-docker.md +88 -0
  237. package/lib/templates/content/docs/contributing/third-party/apollo-client-v3-tutorials.md +28 -0
  238. package/lib/templates/content/docs/contributing/third-party/index.md +18 -0
  239. package/lib/templates/content/docs/contributing/typescript-contribution.md +16 -0
  240. package/lib/templates/content/docs/devops/app-deploy-new-version.md +30 -0
  241. package/lib/templates/content/docs/devops/index.md +14 -0
  242. package/lib/templates/content/docs/devops/mobile-jenkins-build.md +40 -0
  243. package/lib/templates/content/docs/devops/versioning-the-project.md +128 -0
  244. package/lib/templates/content/docs/error-handler/application-error-handler.md +40 -0
  245. package/lib/templates/content/docs/error-handler/error-handling.md +26 -0
  246. package/lib/templates/content/docs/error-handler/index.md +16 -0
  247. package/lib/templates/content/docs/error-handler/logging-errors.md +14 -0
  248. package/lib/templates/content/docs/feature-api/copy-operation.md +427 -0
  249. package/lib/templates/content/docs/feature-api/feature-browser/assets.md +46 -0
  250. package/lib/templates/content/docs/feature-api/feature-browser/auth-permissions.md +12 -0
  251. package/lib/templates/content/docs/feature-api/feature-browser/feature.md +131 -0
  252. package/lib/templates/content/docs/feature-api/feature-browser/index.md +22 -0
  253. package/lib/templates/content/docs/feature-api/feature-browser/routes-menu.md +110 -0
  254. package/lib/templates/content/docs/feature-api/feature-browser/routing-convention.md +124 -0
  255. package/lib/templates/content/docs/feature-api/feature-browser/routing.md +338 -0
  256. package/lib/templates/content/docs/feature-api/feature-mobile/auth-permissions.md +20 -0
  257. package/lib/templates/content/docs/feature-api/feature-mobile/feature.md +130 -0
  258. package/lib/templates/content/docs/feature-api/feature-mobile/index.md +18 -0
  259. package/lib/templates/content/docs/feature-api/feature-mobile/navigation.md +187 -0
  260. package/lib/templates/content/docs/feature-api/feature-server/Scheduling.md +44 -0
  261. package/lib/templates/content/docs/feature-api/feature-server/dataloader.md +320 -0
  262. package/lib/templates/content/docs/feature-api/feature-server/dependency-injection.md +81 -0
  263. package/lib/templates/content/docs/feature-api/feature-server/feature.md +65 -0
  264. package/lib/templates/content/docs/feature-api/feature-server/generic-dataloader.md +135 -0
  265. package/lib/templates/content/docs/feature-api/feature-server/index.md +40 -0
  266. package/lib/templates/content/docs/feature-api/feature-server/migration.md +127 -0
  267. package/lib/templates/content/docs/feature-api/feature-server/mongo-model.md +72 -0
  268. package/lib/templates/content/docs/feature-api/feature-server/permissions.md +12 -0
  269. package/lib/templates/content/docs/feature-api/feature-server/policies.md +57 -0
  270. package/lib/templates/content/docs/feature-api/feature-server/preferences.md +57 -0
  271. package/lib/templates/content/docs/feature-api/feature-server/repositories.md +114 -0
  272. package/lib/templates/content/docs/feature-api/feature-server/resolvers.md +126 -0
  273. package/lib/templates/content/docs/feature-api/feature-server/rules.md +132 -0
  274. package/lib/templates/content/docs/feature-api/feature-server/schema.md +12 -0
  275. package/lib/templates/content/docs/feature-api/feature-server/services.md +102 -0
  276. package/lib/templates/content/docs/feature-api/feature-server/setup-resource-crud.md +359 -0
  277. package/lib/templates/content/docs/feature-api/index.md +18 -0
  278. package/lib/templates/content/docs/graphql/apolloClient-mutation.md +94 -0
  279. package/lib/templates/content/docs/graphql/index.md +14 -0
  280. package/lib/templates/content/docs/graphql/scalars.md +15 -0
  281. package/lib/templates/content/docs/help/index.md +14 -0
  282. package/lib/templates/content/docs/help/intro.md +16 -0
  283. package/lib/templates/content/docs/intl/ant-design-menu-translation.md +74 -0
  284. package/lib/templates/content/docs/intl/intl-namespace.md +129 -0
  285. package/lib/templates/content/docs/intl/vite-plugin-intl.md +87 -0
  286. package/lib/templates/content/docs/intl/webpack-plugin-intl.md +12 -0
  287. package/lib/templates/content/docs/intro.md +18 -0
  288. package/lib/templates/content/docs/knowledge/basic-fullstack.md +238 -0
  289. package/lib/templates/content/docs/mailing/index.md +14 -0
  290. package/lib/templates/content/docs/mailing/mailing-template.md +148 -0
  291. package/lib/templates/content/docs/mobile/App-navigation-generator.md +410 -0
  292. package/lib/templates/content/docs/mobile/MobileTestCases.md +264 -0
  293. package/lib/templates/content/docs/mobile/eas-profile-build.md +107 -0
  294. package/lib/templates/content/docs/mobile/expo-push-notification-setup.md +216 -0
  295. package/lib/templates/content/docs/mobile/index.md +14 -0
  296. package/lib/templates/content/docs/mobile/routes.md +83 -0
  297. package/lib/templates/content/docs/organization/adding-account-context.md +116 -0
  298. package/lib/templates/content/docs/organization/adding-org-mobile-navigation.md +22 -0
  299. package/lib/templates/content/docs/organization/adding-org-web-navigation.md +12 -0
  300. package/lib/templates/content/docs/organization/index.md +20 -0
  301. package/lib/templates/content/docs/organization/initialization.md +20 -0
  302. package/lib/templates/content/docs/organization/organization-resource-vs-resource.md +112 -0
  303. package/lib/templates/content/docs/remix/configuration/component-structure-best-practices.md +152 -0
  304. package/lib/templates/content/docs/remix/configuration/configurations.md +218 -0
  305. package/lib/templates/content/docs/remix/configuration/css-import-and-stylesheets.md +142 -0
  306. package/lib/templates/content/docs/remix/configuration/dont-subcomponent-network.md +166 -0
  307. package/lib/templates/content/docs/remix/configuration/generated-data-loaders.md +122 -0
  308. package/lib/templates/content/docs/remix/configuration/generated-resource-loaders.md +257 -0
  309. package/lib/templates/content/docs/remix/configuration/query-params-generator.md +216 -0
  310. package/lib/templates/content/docs/remix/configuration/routes-extra-icons.md +103 -0
  311. package/lib/templates/content/docs/remix/configuration/routes-json-advanced.md +86 -0
  312. package/lib/templates/content/docs/remix/configuration/routes-json-auth.md +113 -0
  313. package/lib/templates/content/docs/remix/configuration/routes-json-best-practices.md +55 -0
  314. package/lib/templates/content/docs/remix/configuration/routes-json-fields.md +79 -0
  315. package/lib/templates/content/docs/remix/configuration/routes-json-graphql.md +79 -0
  316. package/lib/templates/content/docs/remix/configuration/routes-json-index.md +112 -0
  317. package/lib/templates/content/docs/remix/configuration/routes-json-loaders.md +165 -0
  318. package/lib/templates/content/docs/remix/configuration/routes-json-middleware.md +196 -0
  319. package/lib/templates/content/docs/remix/configuration/routes-json-overview.md +53 -0
  320. package/lib/templates/content/docs/remix/data-loaders.md +43 -0
  321. package/lib/templates/content/docs/remix/devtools/remix-devtools.md +58 -0
  322. package/lib/templates/content/docs/remix/examples/changes-using-servercode.md +79 -0
  323. package/lib/templates/content/docs/remix/extra-icons.md +62 -0
  324. package/lib/templates/content/docs/remix/extra-links.md +65 -0
  325. package/lib/templates/content/docs/remix/generated-data-loaders.md +114 -0
  326. package/lib/templates/content/docs/remix/queryParamsGenerator.md +89 -0
  327. package/lib/templates/content/docs/remix/resources.md +16 -0
  328. package/lib/templates/content/docs/remix/styles.md +132 -0
  329. package/lib/templates/content/docs/remix/wiki.md +12 -0
  330. package/lib/templates/content/docs/security/auth-wrapper/auth-wrapper.md +24 -0
  331. package/lib/templates/content/docs/security/index.md +18 -0
  332. package/lib/templates/content/docs/security/secure-button-mobilenative.md +88 -0
  333. package/lib/templates/content/docs/security/secure-button-web.md +89 -0
  334. package/lib/templates/content/docs/server-side/account-customization.md +82 -0
  335. package/lib/templates/content/docs/server-side/apollo/caching.md +164 -0
  336. package/lib/templates/content/docs/server-side/backend-architecture/FINAL-DECISION.md +209 -0
  337. package/lib/templates/content/docs/server-side/backend-architecture/TRUE-FINAL-ARCHITECTURE.md +603 -0
  338. package/lib/templates/content/docs/server-side/backend-architecture/index1.md +0 -0
  339. package/lib/templates/content/docs/server-side/backend-coding.md +839 -0
  340. package/lib/templates/content/docs/server-side/e2b/manageing-template.md +197 -0
  341. package/lib/templates/content/docs/server-side/index.md +14 -0
  342. package/lib/templates/content/docs/server-side/inngest-functions-module.md +309 -0
  343. package/lib/templates/content/docs/server-side/listen-stripe-events.md +43 -0
  344. package/lib/templates/content/docs/server-side/slug-service.md +323 -0
  345. package/lib/templates/content/docs/tests/index.md +18 -0
  346. package/lib/templates/content/docs/tests/jest-test-debug-vscode.md +40 -0
  347. package/lib/templates/content/docs/tests/known-errors.md +116 -0
  348. package/lib/templates/content/docs/tests/service-test-template.md +118 -0
  349. package/lib/templates/content/docs/tests/test-setup.md +93 -0
  350. package/lib/templates/content/docs/xstate.md +23 -0
  351. package/lib/types.d.ts +37 -0
  352. package/lib/types.d.ts.map +1 -0
  353. package/lib/utils/docsNavigation.d.ts +9 -0
  354. package/lib/utils/docsNavigation.d.ts.map +1 -0
  355. package/lib/utils/docsNavigation.js +37 -0
  356. package/lib/utils/docsNavigation.js.map +1 -0
  357. package/lib/utils/helpCenterUtils.d.ts +26 -0
  358. package/lib/utils/helpCenterUtils.d.ts.map +1 -0
  359. package/lib/utils/index.d.ts +3 -0
  360. package/lib/utils/index.d.ts.map +1 -0
  361. package/lib/utils/index.js +3 -0
  362. package/lib/utils/index.js.map +1 -0
  363. package/lib/utils/markdownLoader.d.ts +36 -0
  364. package/lib/utils/markdownLoader.d.ts.map +1 -0
  365. package/lib/utils/markdownLoader.js +2242 -0
  366. package/lib/utils/markdownLoader.js.map +1 -0
  367. package/package.json +71 -0
@@ -0,0 +1,233 @@
1
+ ---
2
+ meta:
3
+ title: Project Setup
4
+ description: Project Setup
5
+ date: '2023-06-02T00:00:00'
6
+ updated: '2024-06-02T00:00:00'
7
+ excerpt: Project Setup...
8
+ headers:
9
+ Cache-Control: no-cache
10
+ ---
11
+
12
+ ## Getting Started
13
+
14
+ If you want to develop FullStack locally you must follow the following instructions:
15
+
16
+ 1. Clone fullstack-pro locally. Replace the git url with the project url instead.
17
+
18
+ Example:
19
+
20
+ ```
21
+ git clone https://github.com/cdebase/fullstack-pro
22
+ cd fullstack-pro
23
+ ```
24
+
25
+ 2. Install dependencies and build packages.
26
+
27
+ a. make sure `python` version `2.7.16` or higher in `^2` version installed.
28
+
29
+ b. install `node-gyp` globally. For installation check [this document](https://github.com/nodejs/node-gyp#installation).
30
+
31
+ c. install `watchman` for macOS users
32
+
33
+ d. Node version supported is `>=16.0.0` and `yarn` version is `1.22`. You can Download Node from [here](https://nodejs.org/dist/v12.18.4/)
34
+
35
+ e. Insall and build packages using following command. Run from the root folder of this project.
36
+
37
+ ```
38
+ yarn global add lerna
39
+ yarn bootstrap
40
+ ```
41
+
42
+ 3. Setup environment file
43
+
44
+ You need to have environemnt file before you start the project. There is a sample file exist at `config/development/dev.env.sample` which you can copy as `config/development/dev.env`.
45
+
46
+ ```
47
+ cp ./config/development/dev.env.sample ./config/development/dev.env
48
+ ```
49
+
50
+ You may need to set personalized values in the `dev.env` file.
51
+
52
+ 4. Start server MongoDB and Redis (look for [Installation Section](#installation-of-prerequisties-servers))
53
+
54
+ > redis-server
55
+
56
+ > mongod
57
+
58
+ 5. Start both client and server together
59
+
60
+ ```
61
+ yarn start
62
+ ```
63
+
64
+ Alternatively (**recommended**), if you need to run `backend` and `frontend` on its respective terminal instead of one terminal then follow [How to Start Backend and Frontend seperately](./run-various-options#how-to-start-backend-and-frontend-seperately)
65
+
66
+ ### Server Enpoints:
67
+
68
+ The server endpoing you can get when the apps starts.
69
+
70
+ The graphql server endpoints typically are
71
+
72
+ > http://localhost:8080/graphql
73
+
74
+ The browser server endopoint is
75
+
76
+ > http://localhost:3000
77
+
78
+ ### Start Mobile (expo)
79
+
80
+ Follow the steps [here](./run-various-options#start-mobile-application)
81
+
82
+ ### Start Desktop (Electron)
83
+
84
+ Follow the stesp [here](./run-various-options#start-desktop-application)
85
+
86
+ ## How to run with HotReload for live changes both in the server and browser?
87
+
88
+ To run build with watch for dependent packages, for auto reloading changes into the server to be productive during development.
89
+
90
+ ```
91
+ yarn watch-packages
92
+ ```
93
+
94
+ If you also need to watch along with it, you can use as many scopes as required like below.
95
+
96
+ ```
97
+ yarn watch-packages -- --scope=@sample-stack/counter-module* --scope=@packageb
98
+ ```
99
+
100
+ To run build with watch for all the packages. Note: This will run watch on all packages under `packages-modules` and may saturate the resources in your laptop instead run above `watch-packages` command.
101
+
102
+ ```
103
+ yarn watch
104
+ ```
105
+
106
+ Sometimes if we have to run `build` or `watch` you can use the `lerna` [command](https://github.com/lerna/lerna/tree/master/commands/exec#usage) for the targeted packages
107
+
108
+ ```
109
+ lerna exec --scope=<package name> yarn watch
110
+ ```
111
+
112
+ - here `<package name>` will be the package you working on currently. If you have multiple packages, then you need to run it multiple times for each package in its respective terminal.
113
+
114
+ ## How to take changes from the branch?
115
+
116
+ Most of the changes at code level can be taken using `git` command.
117
+
118
+ But in some cases when `lerna's packages` are added or versions in `packages.json` are updated, to avoid getting installed duplicate pacakges due to monrepo architecture you need to first clean existing `node_modules` and reinstall again. This can be done with following command.
119
+
120
+ ```
121
+ yarn clean:force && git pull <branch_name> && yarn install && yarn build
122
+ ```
123
+
124
+ - here <branch_name> should be replaced with the branch you getting updates.
125
+
126
+ ## Installation of Prerequisties servers
127
+
128
+ Install redis and mongo and setup an instance with default settings on default port,
129
+ Please check the installation documentation of each one.
130
+
131
+ MongoDB install :
132
+
133
+ > https://www.mongodb.com/docs/manual/administration/install-community/
134
+
135
+ Redis install:
136
+
137
+ > https://redis.io/docs/getting-started/
138
+
139
+ ## Advance Options
140
+
141
+ ### To test Production build and run
142
+
143
+ You need to run Frontend and Backend in two seperate servers.
144
+
145
+ to start frontend server
146
+
147
+ ```
148
+ lerna exec --scope=*frontend-server yarn build
149
+ lerna exec --scope=*frontend-server yarn start:dev
150
+ ```
151
+
152
+ to start backend server
153
+
154
+ ```
155
+ lerna exec --scope=*backend-server yarn build
156
+ lerna exec --scope=*backend-server yarn start:dev
157
+ ```
158
+
159
+ Note: you can pass `:<env>` next to `start` to use env config.
160
+
161
+ - dev: to use `/config/development/dev.env`
162
+ - stage: to use `/config/staging/staging.env`
163
+
164
+ ### Docker build and run
165
+
166
+ Build three docker images by following the steps:
167
+
168
+ - Frontend Server
169
+
170
+ ```
171
+ lerna exec --scope=*frontend-server yarn docker:build
172
+ lerna exec --scope=*frontend-server yarn docker:run
173
+ ```
174
+
175
+ - Backend Server
176
+
177
+ ```
178
+ lerna exec --scope=*backend-server yarn docker:build
179
+ lerna exec --scope=*backend-server yarn docker:run
180
+ ```
181
+
182
+ - moleculer-server
183
+
184
+ ```
185
+ lerna exec --scope=*moleculer-server yarn docker:build
186
+ lerna exec --scope=*moleculer-server yarn docker:run
187
+ ```
188
+
189
+ Note: It uses `/config/staging/docker-staging.env` for environment variables.
190
+
191
+ For mac users,
192
+
193
+ ```
194
+ ###
195
+ ### To connect from docker to localhost, if you are using a Mac host, you can use -
196
+ #
197
+ # HOSTNAME= docker.for.mac.host.internal
198
+ # Or
199
+ #
200
+ # HOSTNAME = docker.for.mac.localhost
201
+ ###docker.for.mac.localhost
202
+
203
+ NATS_URL=nats://docker.for.mac.localhost:4222/
204
+ NATS_USER=test
205
+ NATS_PW=test
206
+ GRAPHQL_URL=http://docker.for.mac.localhost:8080/graphql
207
+ LOCAL_GRAPHQL_URL=http://docker.for.mac.localhost:8080/graphql
208
+ CLIENT_URL=http://localhost:3000
209
+ WEBHOOK_URL=http://docker.for.mac.localhost:8080
210
+ ... rest of the environment
211
+ ```
212
+
213
+ ### Environment settings needed for non-development
214
+
215
+ ```
216
+ GRAPHQL_URL
217
+ CLIENT_URL
218
+ NATS_URL
219
+ NATS_USER
220
+ NATS_PW
221
+ ```
222
+
223
+ ## Do's and Don't
224
+
225
+ Check [here](./do-and-dont.md)
226
+
227
+ ## Installation Issues
228
+
229
+ Check [here](./installation-issues.md)
230
+
231
+ ## FAQ
232
+
233
+ Check [here](./faq.md)
@@ -0,0 +1,14 @@
1
+ ---
2
+ meta:
3
+ title: React
4
+ description: React
5
+ date: '2023-06-02T00:00:00'
6
+ updated: '2024-06-02T00:00:00'
7
+ excerpt: React...
8
+ headers:
9
+ Cache-Control: no-cache
10
+ ---
11
+
12
+ ## React
13
+
14
+ **[Lazy Component](/docs/contributing/react/lazy-component)**
@@ -0,0 +1,70 @@
1
+ ---
2
+ meta:
3
+ title: Lazy Component
4
+ description: Lazy Component
5
+ date: '2023-06-02T00:00:00'
6
+ updated: '2024-06-02T00:00:00'
7
+ excerpt: Lazy Component...
8
+ headers:
9
+ Cache-Control: no-cache
10
+ ---
11
+
12
+ ## Lazy Component
13
+
14
+ ```
15
+ // SampleComponent
16
+
17
+ import React, { Suspense } from 'react';
18
+ import { Spinner } from '@chakra-ui/react';
19
+ import { BsPerson } from '@react-icons/all-files/bs/BsPerson';
20
+ import { GiHelp } from '@react-icons/all-files/gi/GiHelp';
21
+ import { lazy } from '@loadable/component';
22
+
23
+ const GlobalPreferencesLazy = lazy(() => import('./components/global-preferences'));
24
+ const HostingToolsLazy = lazy(() => import('./components/hosting-tools'));
25
+
26
+ const GlobalPreferences = () => (
27
+ <Suspense fallback={<Spinner />}>
28
+ <GlobalPreferencesLazy />
29
+ </Suspense>
30
+ );
31
+
32
+ const HostingTools = () => (
33
+ <Suspense fallback={<Spinner />}>
34
+ <HostingToolsLazy />
35
+ </Suspense>
36
+ );
37
+
38
+
39
+ export const accountPageStore: IPageStore[] | { [key: string]: any } = [
40
+ {
41
+ key: routeKeys.ACCOUNT_GLOBAL_PREFERENCES,
42
+ path: `${LAYOUT_PATH}${AccountRoutes.GlobalPreferences}`,
43
+ hideInMenu: true,
44
+ title: 'Global preferences',
45
+ icon: ConfigurationIcon,
46
+ authority: [IPreDefineAccountPermissions.secureUser],
47
+ description: 'See your default language, currency and timezone',
48
+ position: IMenuPosition.BOTTOM,
49
+ component: GlobalPreferences,
50
+ priority: 6,
51
+ },
52
+
53
+ {
54
+ key: routeKeys.ACCOUNT_HOSTING,
55
+ path: `${LAYOUT_PATH}${AccountRoutes.Hosting}`,
56
+ hideInMenu: true,
57
+ title: 'Professional hosting tools',
58
+ icon: PeopleIcon,
59
+ authority: [IPreDefineAccountPermissions.secureUser],
60
+ description: `Get professional tools if you manage several properties on ${config.APP_NAME}`,
61
+ position: IMenuPosition.BOTTOM,
62
+ component: HostingTools,
63
+ priority: 8,
64
+ },
65
+ ];
66
+
67
+ const filteredRoutes: IRouteData[] = getFilteredRoutes(accountPageStore, selectedRoutes);
68
+
69
+ export { filteredRoutes };
70
+ ```
@@ -0,0 +1,124 @@
1
+ ---
2
+ meta:
3
+ title: Run Various Options
4
+ description: Run Various Options
5
+ date: '2023-06-02T00:00:00'
6
+ updated: '2024-06-02T00:00:00'
7
+ excerpt: Run Various Options...
8
+ headers:
9
+ Cache-Control: no-cache
10
+ ---
11
+
12
+ ## SETUP and INSTALL
13
+
14
+ ### To Install the project and build all packages
15
+
16
+ `yarn bootstrap`
17
+
18
+ ### To clean install the project of already installed.
19
+
20
+ If you need to do a clean the existing node_modules and take latest changes from the remote head
21
+
22
+ `yarn clean:install`
23
+
24
+ ## LINTING
25
+
26
+ ### To check linting
27
+
28
+ `yarn lint <relative folder>`
29
+
30
+ ### To check and auto fix linting
31
+
32
+ `yarn format <relative folder>`
33
+
34
+ ## PACKAGES COMMANDS
35
+
36
+ ### To run build all packages
37
+
38
+ `yarn build`
39
+
40
+ ### To run all packages in watch mode
41
+
42
+ `yarn watch`
43
+
44
+ Note: It only run `packages` and `packages-modules` only in watch mode. Servers should be run separately.
45
+
46
+ Also check out `yarn watch-packages` to run watch on required packages.
47
+
48
+ ### To run build with watch for dependent packages
49
+
50
+ For auto reloading changes into the server to be productive during development.
51
+
52
+ ```
53
+ yarn watch-packages
54
+ ```
55
+
56
+ If you also need to watch along with it, you can as many scopes as required like below.
57
+
58
+ ```
59
+ yarn watch-packages -- --scope="@sample-stack/counter-module*" --scope="@packageb"
60
+ ```
61
+
62
+ ## TO START SERVERS
63
+
64
+ ### To run an individual package in watch mode
65
+
66
+ `lerna exec --scope="<package name>" yarn watch`
67
+
68
+ More details on how to use [lerna exec](https://github.com/lerna/lerna/tree/master/commands/exec#options)
69
+
70
+ To run any command on a package `<package_name>`
71
+
72
+ `lerna exec --scope="<package_name>" <command>`
73
+
74
+ ### How to Start Backend and Frontend separately
75
+
76
+ To start the frontend-server
77
+
78
+ `lerna exec --scope="*frontend-server" yarn watch`
79
+
80
+ To just start the backend-server
81
+
82
+ `lerna exec --scope="*backend-server" yarn watch`
83
+
84
+ ### To run both Frontend and Backend Server
85
+
86
+ `yarn start`
87
+
88
+ ### To run both Frontend and Backend Server but start frontend in SSR Mode
89
+
90
+ `yarn start:envSSR`
91
+
92
+ ### To run Frontend with production build in development
93
+
94
+ Build the package
95
+
96
+ `lerna exec --scope="*frontend-server" yarn build`
97
+
98
+ Start the server with `dev` environment file
99
+
100
+ `lerna exec --scope="*frontend-server" yarn start:dev`
101
+
102
+ Make sure backend is also running in separate terminal
103
+
104
+ `lerna exec --scope="*backend-server" yarn watch`
105
+
106
+ ### Start Mobile application
107
+
108
+ Before starting mobile expo, make sure to start the backend server of the web application first.
109
+
110
+ `lerna exec --scope="*backend-server" yarn watch`
111
+
112
+ And then start mobile expo application.
113
+
114
+ `lerna exec --scope="*mobile-device" yarn watch`
115
+
116
+ ### Start Desktop application
117
+
118
+ Before starting the desktop application, make sure to start the backend server of the web application first.
119
+
120
+ `lerna exec --scope="*backend-server" yarn watch`
121
+
122
+ And then start the desktop application.
123
+
124
+ `lerna exec --scope="*desktop" yarn watch`
@@ -0,0 +1,37 @@
1
+ ---
2
+ meta:
3
+ title: Schema First Graphql Types
4
+ description: Schema First Graphql Types
5
+ date: '2023-06-02T00:00:00'
6
+ updated: '2024-06-02T00:00:00'
7
+ excerpt: Schema First Graphql Types...
8
+ headers:
9
+ Cache-Control: no-cache
10
+ ---
11
+
12
+ ## Schema First Graphql Types
13
+
14
+ We use [GraphQL Code Generator](https://github.com/dotansimha/graphql-code-generator) to generate `types`.
15
+
16
+ The `graphql` schema is designed first and placed in the `server` side package.
17
+
18
+ ![graphl-folder-backend](/assets/images/graphql/graphql-folder-backend.png)
19
+
20
+ We don't place any built-in `query or mutation or subscription` within the Component. Instead we add the `queries` or `mutations` or `subscriptions` under `graphql` folder in the clien package (either on `browser` or `client` package). These will have `.gql` extension.
21
+
22
+ ![graphql-folder-with-gql](/assets/images/graphql/graphql-folder-with-gql.png)
23
+
24
+ The generated Wrapper component will be used in the component. The generated files can be determined by looking into `codegen.yaml` file which is at the `root` of the project.
25
+
26
+ ## To update to exising Graphql Schema follow the steps.
27
+
28
+ 1. Update the Graphql Schema first with required methods.
29
+
30
+ 2. Generate Graphql Types by running `npm run genreateGraphql`
31
+
32
+ 3. The generated code usually added to `<@sample-stack>/core` package and this package should be imported to use it. In order to auto build when the files changes in the package, make sure `watch` is run on that package.
33
+
34
+ 4. Write `resolvers` for the `Mutations | Query | Subscription` that are defined in the graphql schema.
35
+
36
+ The following video shows in-action
37
+ https://youtu.be/F1UZdcpjx3w
@@ -0,0 +1,57 @@
1
+ ---
2
+ meta:
3
+ title: Source Code Organization
4
+ description: Source Code Organization
5
+ date: '2023-06-02T00:00:00'
6
+ updated: '2024-06-02T00:00:00'
7
+ excerpt: Source Code Organization...
8
+ headers:
9
+ Cache-Control: no-cache
10
+ ---
11
+
12
+ ## Source Code Organization
13
+
14
+ Fullstack code consists of a layered and modular
15
+
16
+ # Layers
17
+
18
+ - `packages`: The base packages required for project.
19
+ - `packages-modules`: The entry point to core application based feature. An extended features to the `packages`.
20
+ - It may have dependencies of `packages`
21
+ - It wont' have any dependency of any of other modules within `packages-modules` except if it is a `core` package.
22
+ - `servers`: The entry point to server app for remote development.
23
+ - It has dependencies of `packages-modules`'s packages and/or `packages`
24
+ - `portable-devices`: The entry point to native apps like mobile and deskop.
25
+ - It has dependencies of `packages-modules`'s packages and/or `packages`.
26
+
27
+ ![source-code-organization](/assets/images/source-code/source-code-organization.png)
28
+
29
+ # Target Environments
30
+
31
+ The `module` is partitioned into the following sub packages:
32
+
33
+ - `platform`: Defines service injection support and the base services for the Project that are shared accross layers
34
+ - `core`: Source code that only requires basic JavaScript APIs and run in all the other target environments
35
+ - `clent`: Source code that only requires basic Client APIs such as `redux`, `redux-epic`, `apollo-client`, `hooks` without requiring Web APIs like `react`, `dom` etc.
36
+ - `browser`: Source code that requires [Web APIs](https://developer.mozilla.org/en-US/docs/Web/API), eg. DOM, React
37
+ - may have dependencies on: `core`, `client`
38
+ - `server`: Source code that requires [Node.JS](https://nodejs.org) APIs
39
+ - may have dependencies on: `core`
40
+ - `mobile`: Source code the requires [React Native](https://reactnative.dev/)
41
+ - `electron`: Source code that requires the [Electron renderer-process](https://github.com/atom/electron/tree/master/docs#modules-for-the-renderer-process-web-page) APIs
42
+ - may have dependencies on: `core`, `browser`, `client`
43
+ - `electron-main`: Source code that requires the [Electron main-process](https://github.com/atom/electron/tree/master/docs#modules-for-the-main-process) APIs
44
+ - may have dependencies on: `core`, `node`
45
+ - `browser-extension`: Source code that requires the [Chrome Extension](https://developer.chrome.com/docs/extensions/)
46
+ - `extension`: Source code of extension
47
+
48
+ You can add additional `target environments` based on the specific third party library
49
+
50
+ - `ant-ui`: Source code that requires the [antd components](https://ant.design/components/overview/)
51
+ - `chakra-ui`: Source code that requires the [Chakra-UI components](https://chakra-ui.com/docs/components)
52
+
53
+ ![source-code-organization](/assets/images/source-code/source-code-environments.png)
54
+
55
+ # Build and Run
56
+
57
+ We use [lerna](./lerna-build-tools.md) to compile the packages. Read more about it as it is needed to run the project.
@@ -0,0 +1,88 @@
1
+ ---
2
+ meta:
3
+ title: Docker Build and Running Frontend Server
4
+ description: Docker Build and Running Frontend Server
5
+ date: '2023-06-02T00:00:00'
6
+ updated: '2024-06-02T00:00:00'
7
+ excerpt: Docker Build and Running Frontend Server...
8
+ headers:
9
+ Cache-Control: no-cache
10
+ ---
11
+
12
+ # Technical Documentation: Docker Build and Running Frontend Server
13
+
14
+ This document provides instructions on how to build and run a frontend server in Docker. Ensure Docker is installed on your system before proceeding.
15
+
16
+ ## Prerequisites
17
+
18
+ - Docker installed on your system. You can follow the instructions on the official Docker website to install Docker: [Docker Installation Guide](https://docs.docker.com/get-docker/).
19
+
20
+ ## Setting Up Staging Environment
21
+
22
+ 1. **Create and configure the staging environment file:**
23
+
24
+ Create a file named `docker-staging.env` in the `config/staging/` directory and set the environment variables as shown below:
25
+
26
+ ```env
27
+ #
28
+ # HOSTNAME = docker.for.mac.localhost
29
+ ###docker.for.mac.localhost
30
+
31
+ NATS_USER=test
32
+ NATS_PW=test
33
+ NATS_URL=nats://docker.for.mac.localhost:4222/
34
+ GRAPHQL_URL=http://docker.for.mac.localhost:8080/graphql
35
+ LOCAL_GRAPHQL_URL=http://docker.for.mac.localhost:8080/graphql
36
+ MONGO_URL=mongodb://docker.for.mac.localhost:27017/sample-stack
37
+ REDIS_CLUSTER_URL='[{"port":6379,"host":"docker.for.mac.localhost"}]'
38
+ REDIS_URL=redis://docker.for.mac.localhost:6379
39
+ BACKEND_URL=http://docker.for.mac.localhost:8080
40
+ CLIENT_URL=http://localhost:3000
41
+ ZIPKIN_URL=test
42
+ ZIPKIN_PORT=test
43
+ LOG_LEVEL=trace
44
+ REDIS_CLUSTER_ENABLED=false
45
+ REDIS_SENTINEL_ENABLED=false
46
+ BACKEND_URL=http://localhost:8080
47
+ CONNECTION_ID=v1
48
+ LOCAL_BACKEND_URL=http://localhost:3000
49
+ ... add remaining env variables, make sure don't override above ones.
50
+ ```
51
+
52
+ 2. **Ensure all necessary services are available at the specified URLs in the `docker-staging.env` file.**
53
+
54
+ ## Branch Management
55
+
56
+ - **Switch to the `devpublish*` branch:**
57
+
58
+ If you are working on the `develop7` branch, the corresponding publish branch will be `devpublish7`. Switch to the appropriate `devpublish*` branch.
59
+
60
+ ```bash
61
+ git checkout devpublish7
62
+ ```
63
+
64
+ - **Note:** The `devpublish*` branch should be read-only. Any changes that need to be tested should be made in the corresponding `develop*` branch. If new packages need to be released, please request the admin to publish the packages.
65
+
66
+ ## Building and Running the Frontend Server in Docker
67
+
68
+ 1. **Build the Docker image and run the frontend server:**
69
+
70
+ Open a terminal and navigate to the root directory of your project.
71
+
72
+ 2. **Execute the following command:**
73
+
74
+ ```bash
75
+ lerna exec --scope="*frontend-server" yarn docker:build && lerna exec --scope="*frontend-server" yarn docker:run
76
+ ```
77
+
78
+ This command will:
79
+
80
+ - Build the Docker image for the frontend server.
81
+ - Run the Docker container for the frontend server.
82
+
83
+ ## Additional Notes
84
+
85
+ - Ensure that all dependent services (e.g., NATS, MongoDB, Redis) are running and accessible at the specified URLs in the environment file.
86
+ - The `CLIENT_URL` and `BACKEND_URL` values should be correctly set to match your local setup or desired staging environment.
87
+
88
+ By following these steps, you should be able to successfully build and run the frontend server in Docker using the provided environment configuration.
@@ -0,0 +1,28 @@
1
+ ---
2
+ meta:
3
+ title: ApolloClient(v3) tutorials
4
+ description: ApolloClient(v3) tutorials
5
+ date: '2023-06-02T00:00:00'
6
+ updated: '2024-06-02T00:00:00'
7
+ excerpt: ApolloClient(v3) tutorials...
8
+ headers:
9
+ Cache-Control: no-cache
10
+ ---
11
+
12
+ ## ApolloClient(v3) tutorials
13
+
14
+ Best pratices to use Apollo State management.
15
+
16
+ ![Best Practice](/assets/images/apollo-client/recommendation_cache_mgmt.png)
17
+
18
+ https://www.youtube.com/watch?v=xASrlg9rmR4&t=963s
19
+
20
+ To use Policies as replacement of redux selectors
21
+
22
+ https://www.nerdwallet.com/blog/engineering/redux-to-apollo-data-access-patterns/
23
+
24
+ To use Reactive Variables and Policies
25
+
26
+ https://www.apollographql.com/blog/apollo-client/caching/local-state-management-with-reactive-variables/
27
+
28
+ https://www.youtube.com/watch?v=C53-rtNNg4k&t=97s
@@ -0,0 +1,18 @@
1
+ ---
2
+ meta:
3
+ title: Knowledge Resources
4
+ description: Knowledge Resources
5
+ date: '2023-06-02T00:00:00'
6
+ updated: '2024-06-02T00:00:00'
7
+ excerpt: Knowledge Resources...
8
+ headers:
9
+ Cache-Control: no-cache
10
+ ---
11
+
12
+ ## Knowledge Resources
13
+
14
+ **[ApolloClient(v3) tutorials](/docs/contributing/third-party/apollo-client-v3-tutorials)**
15
+
16
+ ### Server Side Rendering and pre generated html
17
+
18
+ https://blog.logrocket.com/react-hydration-pre-rendered-html/
@@ -0,0 +1,16 @@
1
+ ---
2
+ meta:
3
+ title: Typescript Contribution
4
+ description: Typescript Contribution
5
+ date: '2023-06-02T00:00:00'
6
+ updated: '2024-06-02T00:00:00'
7
+ excerpt: Typescript Contribution...
8
+ headers:
9
+ Cache-Control: no-cache
10
+ ---
11
+
12
+ ## Typescript Contribution
13
+
14
+ React Typescript Code styles should be followed based on best practices
15
+
16
+ https://react-typescript-cheatsheet.netlify.app/docs/basic/getting-started/basic_type_example