insforge 0.3.2 → 1.2.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 (507) hide show
  1. package/.claude-plugin/marketplace.json +20 -0
  2. package/.cursor/rules/cursor-rules.mdc +94 -0
  3. package/.dockerignore +3 -0
  4. package/.env.example +33 -4
  5. package/.github/ISSUE_TEMPLATE/bug_report.yml +13 -60
  6. package/.github/ISSUE_TEMPLATE/config.yml +2 -2
  7. package/.github/ISSUE_TEMPLATE/feature_request.yml +10 -63
  8. package/.github/PULL_REQUEST_TEMPLATE.md +7 -0
  9. package/.github/workflows/build-image.yml +2 -1
  10. package/.github/workflows/e2e.yml +63 -0
  11. package/CHANGELOG.md +41 -0
  12. package/CLAUDE_PLUGIN.md +104 -0
  13. package/CODE_OF_CONDUCT.md +128 -0
  14. package/CONTRIBUTING.md +1 -1
  15. package/Dockerfile +4 -1
  16. package/README.md +66 -18
  17. package/assets/mcpInstallv2.png +0 -0
  18. package/assets/sampleResponse.png +0 -0
  19. package/auth/index.html +13 -0
  20. package/auth/package.json +28 -0
  21. package/auth/public/favicon.ico +0 -0
  22. package/auth/src/App.tsx +33 -0
  23. package/auth/src/components/ErrorCard.tsx +37 -0
  24. package/auth/src/components/Layout.tsx +13 -0
  25. package/auth/src/index.css +19 -0
  26. package/auth/src/lib/broadcastService.ts +115 -0
  27. package/auth/src/lib/utils.ts +11 -0
  28. package/auth/src/main.tsx +22 -0
  29. package/auth/src/pages/ForgotPasswordPage.tsx +11 -0
  30. package/auth/src/pages/ResetPasswordPage.tsx +11 -0
  31. package/auth/src/pages/SignInPage.tsx +57 -0
  32. package/auth/src/pages/SignUpPage.tsx +57 -0
  33. package/auth/src/pages/VerifyEmailPage.tsx +20 -0
  34. package/auth/src/vite-env.d.ts +10 -0
  35. package/auth/tsconfig.json +32 -0
  36. package/auth/tsconfig.node.json +11 -0
  37. package/auth/vite.config.ts +25 -0
  38. package/backend/package.json +9 -9
  39. package/backend/src/api/{middleware → middlewares}/auth.ts +8 -9
  40. package/backend/src/api/middlewares/rate-limiters.ts +127 -0
  41. package/backend/src/api/routes/{ai.ts → ai/index.routes.ts} +20 -24
  42. package/backend/src/api/routes/auth/index.routes.ts +570 -0
  43. package/backend/src/api/routes/auth/oauth.routes.ts +448 -0
  44. package/backend/src/api/routes/{database.advance.ts → database/advance.routes.ts} +107 -65
  45. package/backend/src/api/routes/database/index.routes.ts +13 -0
  46. package/backend/src/api/routes/{database.records.ts → database/records.routes.ts} +22 -8
  47. package/backend/src/api/routes/{database.tables.ts → database/tables.routes.ts} +20 -23
  48. package/backend/src/api/routes/docs/index.routes.ts +76 -0
  49. package/backend/src/api/routes/functions/index.routes.ts +188 -0
  50. package/backend/src/api/routes/{logs.ts → logs/index.routes.ts} +25 -30
  51. package/backend/src/api/routes/{metadata.ts → metadata/index.routes.ts} +21 -31
  52. package/backend/src/api/routes/{secrets.ts → secrets/index.routes.ts} +27 -22
  53. package/backend/src/api/routes/{storage.ts → storage/index.routes.ts} +34 -53
  54. package/backend/src/api/routes/usage/index.routes.ts +89 -0
  55. package/backend/src/infra/config/app.config.ts +51 -0
  56. package/backend/src/{core/database/manager.ts → infra/database/database.manager.ts} +76 -85
  57. package/backend/src/infra/database/migrations/013_create-auth-schema-functions.sql +44 -0
  58. package/backend/src/infra/database/migrations/014_add-updated-at-trigger-user-table.sql +8 -0
  59. package/backend/src/infra/database/migrations/015_create-auth-config-and-email-otp-tables.sql +60 -0
  60. package/backend/src/infra/database/migrations/016_update-auth-config-and-email-otp.sql +24 -0
  61. package/backend/src/{core/secrets/encryption.ts → infra/security/encryption.manager.ts} +3 -2
  62. package/backend/src/infra/security/token.manager.ts +125 -0
  63. package/backend/src/{core/socket/socket.ts → infra/socket/socket.manager.ts} +15 -15
  64. package/backend/src/providers/ai/openrouter.provider.ts +377 -0
  65. package/backend/src/providers/email/base.provider.ts +41 -0
  66. package/backend/src/providers/email/cloud.provider.ts +187 -0
  67. package/backend/src/{core/logs/providers → providers/logs}/base.provider.ts +11 -11
  68. package/backend/src/{core/logs/providers → providers/logs}/cloudwatch.provider.ts +61 -38
  69. package/backend/src/providers/logs/local.provider.ts +185 -0
  70. package/backend/src/providers/oauth/base.provider.ts +29 -0
  71. package/backend/src/providers/oauth/discord.provider.ts +195 -0
  72. package/backend/src/providers/oauth/facebook.provider.ts +194 -0
  73. package/backend/src/providers/oauth/github.provider.ts +208 -0
  74. package/backend/src/providers/oauth/google.provider.ts +249 -0
  75. package/backend/src/providers/oauth/index.ts +7 -0
  76. package/backend/src/providers/oauth/linkedin.provider.ts +240 -0
  77. package/backend/src/providers/oauth/microsoft.provider.ts +169 -0
  78. package/backend/src/providers/oauth/x.provider.ts +202 -0
  79. package/backend/src/providers/storage/base.provider.ts +29 -0
  80. package/backend/src/providers/storage/local.provider.ts +103 -0
  81. package/backend/src/providers/storage/s3.provider.ts +313 -0
  82. package/backend/src/server.ts +70 -74
  83. package/backend/src/{core/ai/config.ts → services/ai/ai-config.service.ts} +19 -24
  84. package/backend/src/services/ai/ai-model.service.ts +60 -0
  85. package/backend/src/{core/ai/usage.ts → services/ai/ai-usage.service.ts} +28 -35
  86. package/backend/src/{core/ai/chat.ts → services/ai/chat-completion.service.ts} +37 -24
  87. package/backend/src/services/ai/helpers.ts +64 -0
  88. package/backend/src/{core/ai/image.ts → services/ai/image-generation.service.ts} +17 -19
  89. package/backend/src/services/ai/index.ts +13 -0
  90. package/backend/src/services/auth/auth-config.service.ts +250 -0
  91. package/backend/src/services/auth/auth-otp.service.ts +424 -0
  92. package/backend/src/services/auth/auth.service.ts +1136 -0
  93. package/backend/src/services/auth/index.ts +4 -0
  94. package/backend/src/{core/auth/oauth.ts → services/auth/oauth-config.service.ts} +106 -52
  95. package/backend/src/{core/database/advance.ts → services/database/database-advance.service.ts} +97 -131
  96. package/backend/src/services/database/database-table.service.ts +811 -0
  97. package/backend/src/services/email/email.service.ts +75 -0
  98. package/backend/src/{core/functions/functions.ts → services/functions/function.service.ts} +95 -88
  99. package/backend/src/{core/logs/audit.ts → services/logs/audit.service.ts} +92 -75
  100. package/backend/src/services/logs/log.service.ts +73 -0
  101. package/backend/src/{core/secrets/secrets.ts → services/secrets/secret.service.ts} +48 -66
  102. package/backend/src/services/storage/storage.service.ts +617 -0
  103. package/backend/src/services/usage/usage.service.ts +149 -0
  104. package/backend/src/types/auth.ts +66 -2
  105. package/backend/src/types/email.ts +8 -0
  106. package/backend/src/types/error-constants.ts +4 -0
  107. package/backend/src/types/logs.ts +0 -29
  108. package/backend/src/{core/socket/types.ts → types/socket.ts} +5 -6
  109. package/backend/src/utils/environment.ts +9 -3
  110. package/backend/src/utils/logger.ts +20 -2
  111. package/backend/src/utils/seed.ts +150 -57
  112. package/backend/src/utils/sql-parser.ts +1 -1
  113. package/backend/src/utils/utils.ts +114 -0
  114. package/backend/src/utils/validations.ts +40 -4
  115. package/backend/tests/local/test-ai-config.sh +129 -0
  116. package/backend/tests/local/test-ai-usage.sh +80 -0
  117. package/backend/tests/local/test-auth-router.sh +1 -1
  118. package/backend/tests/local/test-e2e.sh +1 -1
  119. package/backend/tests/local/test-functions.sh +123 -0
  120. package/backend/tests/local/test-logs.sh +132 -0
  121. package/backend/tests/local/test-public-bucket.sh +3 -3
  122. package/backend/tests/local/test-secrets.sh +14 -12
  123. package/backend/tests/local/test-traditional-rest.sh +2 -2
  124. package/backend/tests/manual/test-rawsql-modes.sh +244 -0
  125. package/backend/tests/test-config.sh +37 -1
  126. package/backend/tests/unit/cloud-token.test.ts +48 -0
  127. package/backend/tests/unit/constant.test.ts +8 -0
  128. package/backend/tests/unit/email.test.ts +372 -0
  129. package/backend/tests/unit/environment.test.ts +59 -0
  130. package/backend/tests/unit/helpers.test.ts +63 -0
  131. package/backend/tests/unit/logger.test.ts +22 -0
  132. package/backend/tests/unit/rate-limit.test.ts +154 -0
  133. package/backend/tests/unit/response.test.ts +58 -0
  134. package/backend/tests/unit/sql-parser.test.ts +74 -0
  135. package/backend/tests/unit/uuid.test.ts +21 -0
  136. package/backend/tests/unit/validations.test.ts +80 -0
  137. package/backend/tsconfig.json +1 -1
  138. package/backend/vitest.config.ts +11 -0
  139. package/claude-plugin/.claude-plugin/plugin.json +24 -0
  140. package/claude-plugin/README.md +133 -0
  141. package/claude-plugin/skills/insforge-schema-patterns/SKILL.md +270 -0
  142. package/docker-compose.prod.yml +60 -4
  143. package/docker-compose.yml +65 -4
  144. package/docker-init/db/db-init.sql +6 -34
  145. package/docker-init/logs/vector.yml +236 -0
  146. package/docs/README.md +44 -0
  147. package/docs/changelog.mdx +67 -0
  148. package/docs/core-concepts/ai/architecture.mdx +373 -0
  149. package/docs/core-concepts/ai/sdk.mdx +213 -0
  150. package/docs/core-concepts/authentication/architecture.mdx +278 -0
  151. package/docs/core-concepts/authentication/sdk.mdx +414 -0
  152. package/docs/core-concepts/authentication/ui-components/customization.mdx +529 -0
  153. package/docs/core-concepts/authentication/ui-components/nextjs.mdx +221 -0
  154. package/docs/core-concepts/authentication/ui-components/react-router.mdx +184 -0
  155. package/docs/core-concepts/authentication/ui-components/react.mdx +129 -0
  156. package/docs/core-concepts/database/architecture.mdx +256 -0
  157. package/docs/core-concepts/database/sdk.mdx +382 -0
  158. package/docs/core-concepts/functions/architecture.mdx +105 -0
  159. package/docs/core-concepts/functions/sdk.mdx +184 -0
  160. package/docs/core-concepts/storage/architecture.mdx +243 -0
  161. package/docs/core-concepts/storage/sdk.mdx +253 -0
  162. package/docs/deployment/README.md +94 -0
  163. package/docs/deployment/deploy-to-aws-ec2.md +565 -0
  164. package/docs/deployment/deploy-to-azure-virtual-machines.md +313 -0
  165. package/docs/deployment/deploy-to-google-cloud-compute-engine.md +613 -0
  166. package/docs/deployment/deploy-to-render.md +441 -0
  167. package/docs/docs.json +210 -0
  168. package/docs/examples/framework-guides/nextjs.mdx +131 -0
  169. package/docs/examples/framework-guides/nuxt.mdx +165 -0
  170. package/docs/examples/framework-guides/react.mdx +165 -0
  171. package/docs/examples/framework-guides/svelte.mdx +153 -0
  172. package/docs/examples/framework-guides/vue.mdx +159 -0
  173. package/docs/examples/overview.mdx +67 -0
  174. package/docs/favicon.svg +19 -0
  175. package/docs/images/changelog/nov-2025/auth-components.webp +0 -0
  176. package/docs/images/changelog/nov-2025/database-metadata.webp +0 -0
  177. package/docs/images/changelog/nov-2025/quickstart-prompts.webp +0 -0
  178. package/docs/images/changelog/nov-2025/sql-editor.webp +0 -0
  179. package/docs/images/changelog/nov-2025/usage-page.webp +0 -0
  180. package/docs/images/changelog/october-2025/csv-upload.webp +0 -0
  181. package/docs/images/changelog/october-2025/logs-feature.webp +0 -0
  182. package/docs/images/changelog/october-2025/oauth-providers.webp +0 -0
  183. package/docs/images/checks-passed.png +0 -0
  184. package/docs/images/dashboard-connect-expanded.png +0 -0
  185. package/docs/images/dashboard-connect.png +0 -0
  186. package/docs/images/hero-dark.png +0 -0
  187. package/docs/images/hero-light.png +0 -0
  188. package/docs/images/icons/ai.svg +4 -0
  189. package/docs/images/icons/auth.svg +1 -0
  190. package/docs/images/icons/database.svg +1 -0
  191. package/docs/images/icons/function.svg +1 -0
  192. package/docs/images/icons/storage.svg +1 -0
  193. package/docs/images/logos/nextjs.svg +4 -0
  194. package/docs/images/logos/nuxt.svg +4 -0
  195. package/docs/images/logos/react.svg +5 -0
  196. package/docs/images/logos/svelte.svg +4 -0
  197. package/docs/images/logos/vue.svg +5 -0
  198. package/docs/images/mcp-install.png +0 -0
  199. package/docs/images/onboarding-mcp.png +0 -0
  200. package/docs/insforge-instructions-sdk.md +55 -374
  201. package/docs/introduction.mdx +45 -0
  202. package/docs/logo/dark.svg +22 -0
  203. package/docs/logo/light.svg +20 -0
  204. package/docs/partnership.mdx +647 -0
  205. package/docs/quickstart.mdx +83 -0
  206. package/docs/showcase/2048-arena.png +0 -0
  207. package/docs/showcase/framegen-cloud.png +0 -0
  208. package/docs/showcase/line-connect-race.png +0 -0
  209. package/docs/showcase/moment-vibe.png +0 -0
  210. package/docs/showcase/national-flags.png +0 -0
  211. package/docs/showcase/pokemon-vibe.png +0 -0
  212. package/docs/showcase/pure-browse-buy.png +0 -0
  213. package/docs/showcase.mdx +52 -0
  214. package/docs/snippets/sdk-installation.mdx +22 -0
  215. package/docs/snippets/service-icons.mdx +27 -0
  216. package/eslint.config.js +10 -3
  217. package/frontend/package.json +10 -4
  218. package/frontend/src/App.tsx +13 -82
  219. package/frontend/src/assets/icons/connected.svg +3 -0
  220. package/frontend/src/assets/icons/loader.svg +9 -0
  221. package/frontend/src/assets/logos/apple.svg +4 -0
  222. package/frontend/src/assets/logos/discord.svg +1 -1
  223. package/frontend/src/assets/logos/facebook.svg +3 -0
  224. package/frontend/src/assets/logos/instagram.svg +2 -0
  225. package/frontend/src/assets/logos/linkedin.svg +3 -0
  226. package/frontend/src/assets/logos/microsoft.svg +1 -0
  227. package/frontend/src/assets/logos/spotify.svg +17 -0
  228. package/frontend/src/assets/logos/tiktok.svg +6 -0
  229. package/frontend/src/assets/logos/x.svg +3 -0
  230. package/frontend/src/components/Checkbox.tsx +27 -29
  231. package/frontend/src/components/CodeBlock.tsx +55 -2
  232. package/frontend/src/components/CodeEditor.tsx +92 -0
  233. package/frontend/src/components/ConfirmDialog.tsx +1 -1
  234. package/frontend/src/components/ConnectCTA.tsx +38 -0
  235. package/frontend/src/components/CopyButton.tsx +52 -15
  236. package/frontend/src/components/ErrorState.tsx +1 -2
  237. package/frontend/src/components/FeatureSidebar.tsx +6 -6
  238. package/frontend/src/components/FeatureSidebarItem.tsx +2 -2
  239. package/frontend/src/components/JsonHighlight.tsx +21 -9
  240. package/frontend/src/components/ProjectInfoModal.tsx +128 -0
  241. package/frontend/src/components/PromptDialog.tsx +1 -4
  242. package/frontend/src/components/SearchInput.tsx +1 -2
  243. package/frontend/src/components/Stepper.tsx +53 -0
  244. package/frontend/src/components/ThemeToggle.tsx +3 -3
  245. package/frontend/src/components/datagrid/DataGrid.tsx +25 -32
  246. package/frontend/src/components/datagrid/cell-editors/DateCellEditor.tsx +1 -2
  247. package/frontend/src/components/datagrid/cell-editors/JsonCellEditor.tsx +2 -4
  248. package/frontend/src/components/datagrid/index.ts +23 -0
  249. package/frontend/src/components/index.ts +23 -30
  250. package/frontend/src/components/layout/AppHeader.tsx +133 -92
  251. package/frontend/src/components/layout/AppSidebar.tsx +80 -170
  252. package/frontend/src/components/layout/Layout.tsx +12 -23
  253. package/frontend/src/components/layout/PrimaryMenu.tsx +187 -0
  254. package/frontend/src/components/layout/SecondaryMenu.tsx +70 -0
  255. package/frontend/src/components/layout/index.ts +5 -0
  256. package/frontend/src/components/radix/Tooltip.tsx +24 -13
  257. package/frontend/src/components/radix/index.ts +22 -0
  258. package/frontend/src/features/ai/components/AIConfigCard.tsx +129 -83
  259. package/frontend/src/features/ai/components/AIEmptyState.tsx +12 -7
  260. package/frontend/src/features/ai/components/ModalityFilterSidebar.tsx +101 -0
  261. package/frontend/src/features/ai/components/ModelSelectionDialog.tsx +135 -0
  262. package/frontend/src/features/ai/components/ModelSelectionGrid.tsx +51 -0
  263. package/frontend/src/features/ai/components/SystemPromptDialog.tsx +118 -0
  264. package/frontend/src/features/ai/components/index.ts +6 -0
  265. package/frontend/src/features/ai/helpers.ts +57 -71
  266. package/frontend/src/features/ai/hooks/useAIConfigs.ts +39 -113
  267. package/frontend/src/features/ai/hooks/useAIUsage.ts +0 -2
  268. package/frontend/src/features/ai/page/AIPage.tsx +67 -79
  269. package/frontend/src/features/ai/services/ai.service.ts +5 -5
  270. package/frontend/src/features/auth/components/AuthPreview.tsx +96 -0
  271. package/frontend/src/features/auth/components/OAuthConfigDialog.tsx +53 -30
  272. package/frontend/src/features/auth/components/UserFormDialog.tsx +13 -6
  273. package/frontend/src/features/auth/components/UsersDataGrid.tsx +44 -14
  274. package/frontend/src/features/auth/components/index.ts +5 -0
  275. package/frontend/src/features/auth/helpers.tsx +200 -0
  276. package/frontend/src/features/auth/hooks/useAnonToken.ts +30 -0
  277. package/frontend/src/features/auth/hooks/useAuthConfig.ts +48 -0
  278. package/frontend/src/features/auth/hooks/useOAuthConfig.ts +14 -10
  279. package/frontend/src/features/auth/hooks/useUsers.ts +43 -5
  280. package/frontend/src/features/auth/index.ts +3 -2
  281. package/frontend/src/features/auth/page/AuthMethodsPage.tsx +275 -0
  282. package/frontend/src/features/auth/page/ConfigurationPage.tsx +395 -0
  283. package/frontend/src/features/auth/page/UsersPage.tsx +285 -0
  284. package/frontend/src/features/auth/services/anonToken.service.ts +11 -0
  285. package/frontend/src/features/auth/services/config.service.ts +19 -0
  286. package/frontend/src/features/auth/services/{oauth.service.ts → oauth-config.service.ts} +4 -4
  287. package/frontend/src/features/auth/services/{auth.service.ts → user.service.ts} +7 -53
  288. package/frontend/src/features/dashboard/components/ConnectionSuccessBanner.tsx +35 -0
  289. package/frontend/src/features/dashboard/components/PromptCard.tsx +21 -0
  290. package/frontend/src/features/dashboard/components/PromptDialog.tsx +103 -0
  291. package/frontend/src/features/dashboard/components/StatsCard.tsx +50 -0
  292. package/frontend/src/features/dashboard/components/index.ts +4 -0
  293. package/frontend/src/features/dashboard/page/DashboardPage.tsx +187 -169
  294. package/frontend/src/features/dashboard/prompts/ai-chatbot.ts +13 -0
  295. package/frontend/src/features/dashboard/prompts/crm-system.ts +13 -0
  296. package/frontend/src/features/dashboard/prompts/ecommerce-platform.ts +12 -0
  297. package/frontend/src/features/dashboard/prompts/index.ts +31 -0
  298. package/frontend/src/features/dashboard/prompts/instagram-clone.ts +11 -0
  299. package/frontend/src/features/dashboard/prompts/notion-clone.ts +14 -0
  300. package/frontend/src/features/dashboard/prompts/reddit-clone.ts +12 -0
  301. package/frontend/src/features/database/components/DatabaseDataGrid.tsx +48 -17
  302. package/frontend/src/features/database/components/ForeignKeyCell.tsx +15 -34
  303. package/frontend/src/features/database/components/ForeignKeyPopover.tsx +19 -20
  304. package/frontend/src/features/database/components/LinkRecordModal.tsx +120 -125
  305. package/frontend/src/features/database/components/RecordFormDialog.tsx +22 -33
  306. package/frontend/src/features/database/components/RecordFormField.tsx +45 -47
  307. package/frontend/src/features/database/components/TableEmptyState.tsx +6 -5
  308. package/frontend/src/features/database/components/TableForm.tsx +28 -15
  309. package/frontend/src/features/database/components/TableFormColumn.tsx +2 -3
  310. package/frontend/src/features/database/components/TableSidebar.tsx +1 -1
  311. package/frontend/src/features/database/components/TablesEmptyState.tsx +48 -0
  312. package/frontend/src/features/database/components/TemplateCard.tsx +37 -0
  313. package/frontend/src/features/database/components/TemplatePreview.tsx +92 -0
  314. package/frontend/src/features/database/components/index.ts +19 -0
  315. package/frontend/src/features/database/constants.ts +28 -2
  316. package/frontend/src/features/database/contexts/SQLEditorContext.tsx +188 -0
  317. package/frontend/src/features/database/helpers.ts +2 -2
  318. package/frontend/src/features/database/hooks/useCSVImport.ts +29 -0
  319. package/frontend/src/features/database/hooks/useFullMetadata.ts +18 -0
  320. package/frontend/src/features/database/hooks/useRawSQL.ts +55 -0
  321. package/frontend/src/features/database/hooks/useRecords.ts +139 -0
  322. package/frontend/src/features/database/hooks/useTables.ts +131 -0
  323. package/frontend/src/features/database/index.ts +6 -1
  324. package/frontend/src/features/database/page/FunctionsPage.tsx +211 -0
  325. package/frontend/src/features/database/page/IndexesPage.tsx +240 -0
  326. package/frontend/src/features/database/page/PoliciesPage.tsx +248 -0
  327. package/frontend/src/features/database/page/SQLEditorPage.tsx +382 -0
  328. package/frontend/src/features/database/page/{DatabasePage.tsx → TablesPage.tsx} +186 -185
  329. package/frontend/src/features/database/page/TemplatesPage.tsx +39 -0
  330. package/frontend/src/features/database/page/TriggersPage.tsx +242 -0
  331. package/frontend/src/features/database/services/advance.service.ts +66 -0
  332. package/frontend/src/features/database/services/{database.service.ts → record.service.ts} +67 -64
  333. package/frontend/src/features/database/services/table.service.ts +64 -0
  334. package/frontend/src/features/database/templates/ai-chatbot.ts +402 -0
  335. package/frontend/src/features/database/templates/crm-system.ts +528 -0
  336. package/frontend/src/features/database/templates/ecommerce-platform.ts +553 -0
  337. package/frontend/src/features/database/templates/index.ts +34 -0
  338. package/frontend/src/features/database/templates/instagram-clone.ts +222 -0
  339. package/frontend/src/features/database/templates/notion-clone.ts +483 -0
  340. package/frontend/src/features/database/templates/reddit-clone.ts +526 -0
  341. package/frontend/src/features/functions/components/FunctionRow.tsx +2 -1
  342. package/frontend/src/features/functions/components/FunctionsSidebar.tsx +1 -1
  343. package/frontend/src/features/functions/components/SecretRow.tsx +1 -1
  344. package/frontend/src/features/functions/components/index.ts +5 -0
  345. package/frontend/src/features/functions/hooks/useFunctions.ts +4 -4
  346. package/frontend/src/features/{secrets → functions}/hooks/useSecrets.ts +5 -5
  347. package/frontend/src/features/functions/page/FunctionsPage.tsx +160 -17
  348. package/frontend/src/features/functions/{components/SecretsContent.tsx → page/SecretsPage.tsx} +8 -12
  349. package/frontend/src/features/functions/services/{functions.service.ts → function.service.ts} +2 -2
  350. package/frontend/src/features/{secrets/services/secrets.service.ts → functions/services/secret.service.ts} +2 -2
  351. package/frontend/src/features/login/hooks/usePartnerOrigin.ts +27 -0
  352. package/frontend/src/features/login/page/CloudLoginPage.tsx +79 -54
  353. package/frontend/src/features/login/page/LoginPage.tsx +16 -23
  354. package/frontend/src/features/login/services/partnership.service.ts +65 -0
  355. package/frontend/src/features/logs/components/LogsDataGrid.tsx +89 -0
  356. package/frontend/src/features/logs/components/SeverityBadge.tsx +18 -0
  357. package/frontend/src/features/logs/components/index.ts +2 -0
  358. package/frontend/src/features/logs/helpers.ts +24 -0
  359. package/frontend/src/features/logs/hooks/useAuditLogs.ts +4 -4
  360. package/frontend/src/features/logs/hooks/useLogSources.ts +137 -0
  361. package/frontend/src/features/logs/hooks/useLogs.ts +163 -0
  362. package/frontend/src/features/logs/hooks/useMcpUsage.ts +181 -0
  363. package/frontend/src/features/logs/index.ts +8 -2
  364. package/frontend/src/features/logs/page/AuditsPage.tsx +91 -38
  365. package/frontend/src/features/logs/page/LogsPage.tsx +152 -0
  366. package/frontend/src/features/logs/page/MCPLogsPage.tsx +84 -0
  367. package/frontend/src/features/logs/services/audit.service.ts +63 -0
  368. package/frontend/src/features/logs/services/log.service.ts +15 -110
  369. package/frontend/src/features/logs/services/usage.service.ts +31 -0
  370. package/frontend/src/features/onboard/components/McpConnectionStatus.tsx +68 -0
  371. package/frontend/src/features/onboard/components/OnboardingModal.tsx +267 -0
  372. package/frontend/src/features/onboard/components/VideoDemoModal.tsx +38 -0
  373. package/frontend/src/features/onboard/components/index.ts +4 -0
  374. package/frontend/src/features/onboard/components/mcp/CursorDeeplinkGenerator.tsx +2 -2
  375. package/frontend/src/features/onboard/components/mcp/{mcp-helper.tsx → helpers.tsx} +8 -8
  376. package/frontend/src/features/onboard/components/mcp/index.ts +2 -3
  377. package/frontend/src/features/onboard/index.ts +13 -3
  378. package/frontend/src/features/storage/components/BucketEmptyState.tsx +9 -6
  379. package/frontend/src/features/storage/components/BucketFormDialog.tsx +25 -41
  380. package/frontend/src/features/storage/components/FilePreviewDialog.tsx +20 -8
  381. package/frontend/src/features/storage/components/StorageDataGrid.tsx +4 -3
  382. package/frontend/src/features/storage/components/StorageManager.tsx +23 -34
  383. package/frontend/src/features/storage/components/index.ts +12 -0
  384. package/frontend/src/features/storage/hooks/useStorage.ts +208 -0
  385. package/frontend/src/features/storage/page/StoragePage.tsx +41 -115
  386. package/frontend/src/features/storage/services/storage.service.ts +22 -1
  387. package/frontend/src/features/visualizer/components/AuthNode.tsx +72 -56
  388. package/frontend/src/features/visualizer/components/BucketNode.tsx +4 -4
  389. package/frontend/src/features/visualizer/components/SchemaVisualizer.tsx +108 -80
  390. package/frontend/src/features/visualizer/components/TableNode.tsx +34 -41
  391. package/frontend/src/features/visualizer/components/VisualizerSkeleton.tsx +12 -4
  392. package/frontend/src/features/visualizer/page/VisualizerPage.tsx +33 -29
  393. package/frontend/src/index.css +1 -0
  394. package/frontend/src/lib/analytics/posthog.tsx +27 -0
  395. package/frontend/src/lib/contexts/AuthContext.tsx +38 -31
  396. package/frontend/src/lib/contexts/SocketContext.tsx +5 -6
  397. package/frontend/src/{features/metadata → lib}/hooks/useMetadata.ts +1 -1
  398. package/frontend/src/lib/hooks/useToast.tsx +6 -2
  399. package/frontend/src/lib/routing/AppRoutes.tsx +84 -0
  400. package/frontend/src/lib/routing/RequireAuth.tsx +27 -0
  401. package/frontend/src/lib/utils/cloudMessaging.ts +20 -0
  402. package/frontend/src/lib/utils/menuItems.ts +183 -0
  403. package/frontend/src/lib/utils/{validation-schemas.ts → schemaValidations.ts} +10 -5
  404. package/frontend/src/lib/utils/utils.ts +19 -1
  405. package/frontend/src/vite-env.d.ts +1 -0
  406. package/frontend/vite.config.ts +5 -3
  407. package/functions/server.ts +28 -3
  408. package/functions/worker-template.js +15 -4
  409. package/i18n/README.ar.md +130 -0
  410. package/i18n/README.de.md +130 -0
  411. package/i18n/README.es.md +154 -0
  412. package/i18n/README.fr.md +134 -0
  413. package/i18n/README.hi.md +129 -0
  414. package/i18n/README.ja.md +174 -0
  415. package/i18n/README.ko.md +137 -0
  416. package/i18n/README.pt-BR.md +131 -0
  417. package/i18n/README.ru.md +129 -0
  418. package/i18n/README.zh-CN.md +133 -0
  419. package/openapi/ai.yaml +31 -4
  420. package/openapi/auth.yaml +827 -146
  421. package/package.json +16 -7
  422. package/shared-schemas/package.json +1 -1
  423. package/shared-schemas/src/ai-api.schema.ts +34 -58
  424. package/shared-schemas/src/ai.schema.ts +5 -0
  425. package/shared-schemas/src/auth-api.schema.ts +154 -8
  426. package/shared-schemas/src/auth.schema.ts +42 -6
  427. package/shared-schemas/src/cloud-events.schema.ts +57 -0
  428. package/shared-schemas/src/database-api.schema.ts +3 -3
  429. package/shared-schemas/src/database.schema.ts +1 -1
  430. package/shared-schemas/src/index.ts +1 -0
  431. package/shared-schemas/src/logs-api.schema.ts +7 -1
  432. package/shared-schemas/src/logs.schema.ts +26 -0
  433. package/shared-schemas/src/metadata.schema.ts +9 -4
  434. package/test-gemini.sh +35 -0
  435. package/test-usage-admin.sh +57 -0
  436. package/test-usage.sh +50 -0
  437. package/zeabur/README.md +13 -0
  438. package/zeabur/template.yml +1032 -0
  439. package/.github/workflows/deploy-aws.yml +0 -130
  440. package/backend/src/api/routes/agent.ts +0 -29
  441. package/backend/src/api/routes/auth.oauth.ts +0 -482
  442. package/backend/src/api/routes/auth.ts +0 -386
  443. package/backend/src/api/routes/docs.ts +0 -66
  444. package/backend/src/api/routes/functions.ts +0 -183
  445. package/backend/src/api/routes/openapi.ts +0 -82
  446. package/backend/src/api/routes/usage.ts +0 -96
  447. package/backend/src/core/ai/client.ts +0 -242
  448. package/backend/src/core/ai/model.ts +0 -117
  449. package/backend/src/core/auth/auth.ts +0 -781
  450. package/backend/src/core/database/table.ts +0 -772
  451. package/backend/src/core/documentation/agent.ts +0 -689
  452. package/backend/src/core/documentation/openapi.ts +0 -856
  453. package/backend/src/core/logs/analytics.ts +0 -76
  454. package/backend/src/core/logs/providers/localdb.provider.ts +0 -246
  455. package/backend/src/core/storage/storage.ts +0 -923
  456. package/backend/src/utils/cloud-token.ts +0 -39
  457. package/backend/src/utils/helpers.ts +0 -49
  458. package/backend/src/utils/uuid.ts +0 -9
  459. package/backend/tests/manual/test-better-auth.sh +0 -303
  460. package/docker-init/db/logs.sql +0 -9
  461. package/frontend/README.md +0 -112
  462. package/frontend/src/components/datagrid/index.tsx +0 -20
  463. package/frontend/src/components/layout/CloudLayout.tsx +0 -95
  464. package/frontend/src/features/ai/components/AIConfigDialog.tsx +0 -76
  465. package/frontend/src/features/ai/components/AIConfigForm.tsx +0 -222
  466. package/frontend/src/features/ai/components/fields/ModalityField.tsx +0 -87
  467. package/frontend/src/features/ai/components/fields/ModelSelectionField.tsx +0 -134
  468. package/frontend/src/features/ai/components/fields/SystemPromptField.tsx +0 -33
  469. package/frontend/src/features/auth/components/AddOAuthDialog.tsx +0 -106
  470. package/frontend/src/features/auth/components/AuthMethodTab.tsx +0 -238
  471. package/frontend/src/features/auth/components/UsersTab.tsx +0 -114
  472. package/frontend/src/features/auth/page/AuthenticationPage.tsx +0 -169
  473. package/frontend/src/features/database/hooks/UseLinkModal.tsx +0 -78
  474. package/frontend/src/features/functions/components/FunctionViewer.tsx +0 -46
  475. package/frontend/src/features/functions/components/FunctionsContent.tsx +0 -88
  476. package/frontend/src/features/login/components/AuthErrorBoundary.tsx +0 -87
  477. package/frontend/src/features/login/components/PrivateRoute.tsx +0 -24
  478. package/frontend/src/features/logs/components/AnalyticsLogsTable.tsx +0 -313
  479. package/frontend/src/features/logs/components/LogsTable.tsx +0 -199
  480. package/frontend/src/features/logs/page/AnalyticsLogsPage.tsx +0 -530
  481. package/frontend/src/features/metadata/index.ts +0 -0
  482. package/frontend/src/features/metadata/page/MetadataPage.tsx +0 -136
  483. package/frontend/src/features/onboard/components/CompletionCard.tsx +0 -41
  484. package/frontend/src/features/onboard/components/OnboardButton.tsx +0 -84
  485. package/frontend/src/features/onboard/components/StepContent.tsx +0 -91
  486. package/frontend/src/features/onboard/components/TestConnectionStep.tsx +0 -53
  487. package/frontend/src/features/onboard/components/mcp/McpInstallation.tsx +0 -144
  488. package/frontend/src/features/onboard/page/OnBoardPage.tsx +0 -104
  489. package/frontend/src/features/onboard/types.ts +0 -8
  490. package/frontend/src/lib/contexts/OnboardStepContext.tsx +0 -68
  491. package/frontend/src/lib/hooks/useOnboardingCompletion.ts +0 -29
  492. /package/backend/src/api/{middleware → middlewares}/error.ts +0 -0
  493. /package/backend/src/api/{middleware → middlewares}/upload.ts +0 -0
  494. /package/backend/{migrations → src/infra/database/migrations}/000_create-base-tables.sql +0 -0
  495. /package/backend/{migrations → src/infra/database/migrations}/001_create-helper-functions.sql +0 -0
  496. /package/backend/{migrations → src/infra/database/migrations}/002_rename-auth-tables.sql +0 -0
  497. /package/backend/{migrations → src/infra/database/migrations}/003_create-users-table.sql +0 -0
  498. /package/backend/{migrations → src/infra/database/migrations}/004_add-reload-postgrest-func.sql +0 -0
  499. /package/backend/{migrations → src/infra/database/migrations}/005_enable-project-admin-modify-users.sql +0 -0
  500. /package/backend/{migrations → src/infra/database/migrations}/006_modify-ai-usage-table.sql +0 -0
  501. /package/backend/{migrations → src/infra/database/migrations}/007_drop-metadata-table.sql +0 -0
  502. /package/backend/{migrations → src/infra/database/migrations}/008_add-system-tables.sql +0 -0
  503. /package/backend/{migrations → src/infra/database/migrations}/009_add-function-secrets.sql +0 -0
  504. /package/backend/{migrations → src/infra/database/migrations}/010_modify-ai-config-modalities.sql +0 -0
  505. /package/backend/{migrations → src/infra/database/migrations}/011_refactor-secrets-table.sql +0 -0
  506. /package/backend/{migrations → src/infra/database/migrations}/012_add-storage-uploaded-by.sql +0 -0
  507. /package/frontend/src/{features/metadata → lib}/services/metadata.service.ts +0 -0
@@ -0,0 +1,131 @@
1
+ <div align="center">
2
+ <a href="https://insforge.dev">
3
+ <img src="../assets/banner.png" alt="Insforge Logo">
4
+ </a>
5
+ </div>
6
+
7
+ <p align="center">
8
+ <a href="#quickstart-tldr">Começar</a> ·
9
+ <a href="https://docs.insforge.dev/introduction">Documentação</a> ·
10
+ <a href="https://discord.com/invite/MPxwj5xVvW">Discord</a>
11
+ </p>
12
+
13
+ <p align="center">
14
+ <a href="https://opensource.org/licenses/Apache-2.0"><img src="https://img.shields.io/badge/License-Apache%202.0-blue.svg" alt="Licença"></a>
15
+ <a href="https://discord.com/invite/MPxwj5xVvW"><img src="https://img.shields.io/badge/Discord-Entre%20na%20Comunidade-7289DA?logo=discord&logoColor=white" alt="Discord"></a>
16
+ <a href="https://github.com/InsForge/insforge/stargazers"><img src="https://img.shields.io/github/stars/InsForge/insforge?style=social" alt="GitHub Stars"></a>
17
+ </p>
18
+
19
+ # InsForge
20
+
21
+ **InsForge é a Alternativa Supabase Nativa para Agentes.**
22
+ Estamos construindo os recursos do Supabase de forma nativa para IA, permitindo que agentes de IA criem e gerenciem aplicações full-stack de forma autônoma.
23
+
24
+ ## Principais Recursos e Casos de Uso
25
+
26
+ ### Recursos Principais:
27
+ - **Autenticação** - Sistema completo de gerenciamento de usuários
28
+ - **Banco de Dados** - Armazenamento e recuperação de dados flexível
29
+ - **Armazenamento** - Gerenciamento e organização de arquivos
30
+ - **Funções Serverless** - Poder computacional escalável
31
+ - **Implantação de Sites** *(em breve)* - Implantação fácil de aplicações
32
+
33
+ ### Casos de Uso:
34
+ Criação de aplicações full-stack usando linguagem natural
35
+ - **Conecte agentes de IA ao InsForge**
36
+ - Permita que Claude, GPT ou outros agentes de IA gerenciem seu backend
37
+ - **Adicione backend a projetos no estilo Lovable ou Bolt**
38
+ - Backend instantâneo para frontends gerados por IA
39
+
40
+ ## Exemplos de Prompt:
41
+
42
+ <td align="center">
43
+ <img src="../assets/userflow.png" alt="userFlow">
44
+ <br>
45
+ </td>
46
+
47
+ ## Início Rápido (TLDR)
48
+
49
+ ### 1. Instalar e executar o InsForge
50
+
51
+ **Usar Docker (Recomendado)**
52
+ Pré-requisitos: [Docker](https://www.docker.com/) + [Node.js](https://nodejs.org/)
53
+
54
+ ```bash
55
+ # Executar com Docker
56
+ git clone https://github.com/insforge/insforge.git
57
+ cd insforge
58
+ cp .env.example .env
59
+ docker compose up
60
+ ```
61
+
62
+ ### 2. Conectar um Agente de IA
63
+
64
+ Visite o painel do InsForge (padrão: http://localhost:7131), faça login e siga o guia “Connect”, configurando seu MCP.
65
+
66
+ <div align="center">
67
+ <table>
68
+ <tr>
69
+ <td align="center">
70
+ <img src="../assets/signin.png" alt="Sign In">
71
+ <br>
72
+ <em>Entrar no InsForge</em>
73
+ </td>
74
+ <td align="center">
75
+ <img src="../assets/mcpInstallv2.png" alt="MCP Configuration">
76
+ <br>
77
+ <em>Configurar conexão MCP</em>
78
+ </td>
79
+ </tr>
80
+ </table>
81
+ </div>
82
+
83
+ ### 3. Testar a Conexão
84
+
85
+ No seu agente, envie:
86
+ > InsForge é minha plataforma de backend, qual é a estrutura atual do meu backend?
87
+
88
+ <div align="center">
89
+ <img src="../assets/sampleResponse.png" alt="Successful Connection Response" width="600">
90
+ <br>
91
+ <em>Exemplo de resposta bem-sucedida chamando ferramentas MCP do InsForge</em>
92
+ </div>
93
+
94
+ ### 4. Começar a Usar o InsForge
95
+
96
+ Comece a construir seu projeto em um novo diretório!
97
+ Crie seu próximo aplicativo de tarefas, clone do Instagram ou plataforma online em segundos!
98
+
99
+ **Exemplos de Prompts de Projeto:**
100
+ - "Crie um app de tarefas com autenticação de usuários"
101
+ - "Crie um Instagram com upload de imagens"
102
+
103
+ ## Arquitetura
104
+
105
+ <div align="center">
106
+ <img src="../assets/archDiagram.png" alt="Architecture Diagram">
107
+ <br>
108
+ </div>
109
+
110
+ ## Contribuindo
111
+
112
+ **Contribuições**: Se você tiver interesse em contribuir, confira nosso guia [CONTRIBUTING.md](CONTRIBUTING.md).
113
+ Agradecemos muito pull requests — todo tipo de ajuda é bem-vinda!
114
+
115
+ **Suporte**: Se precisar de ajuda, estamos disponíveis no nosso [canal do Discord](https://discord.com/invite/MPxwj5xVvW) ou envie um e-mail para [info@insforge.dev](mailto:info@insforge.dev)!
116
+
117
+ ## Documentação e Suporte
118
+
119
+ ### Documentação
120
+ - **[Documentação Oficial](https://docs.insforge.dev/introduction)** - Guias abrangentes e referências de API
121
+
122
+ ### Comunidade
123
+ - **[Discord](https://discord.com/invite/MPxwj5xVvW)** - Junte-se à nossa comunidade vibrante
124
+ - **[Twitter](https://x.com/InsForge_dev)** - Siga para atualizações e dicas
125
+
126
+ ### Contato
127
+ - **E-mail**: info@insforge.dev
128
+
129
+ ## Licença
130
+
131
+ Este projeto está licenciado sob a Licença Apache 2.0 — veja o arquivo [LICENSE](LICENSE) para mais detalhes.
@@ -0,0 +1,129 @@
1
+ <div align="center">
2
+ <a href="https://insforge.dev">
3
+ <img src="../assets/banner.png" alt="Insforge Logo">
4
+ </a>
5
+ </div>
6
+ <p align="center">
7
+ <a href="#quickstart-tldr">Начать работу</a> ·
8
+ <a href="https://docs.insforge.dev/introduction">Документация</a> ·
9
+ <a href="https://discord.gg/MPxwj5xVvW">Discord</a>
10
+ </p>
11
+ <p align="center">
12
+ <a href="https://opensource.org/licenses/Apache-2.0"><img src="https://img.shields.io/badge/License-Apache%202.0-blue.svg" alt="License"></a>
13
+ <a href="https://discord.gg/MPxwj5xVvW"><img src="https://img.shields.io/badge/Discord-Join%20Community-7289DA?logo=discord&logoColor=white" alt="Discord"></a>
14
+ <a href="https://github.com/InsForge/insforge/stargazers"><img src="https://img.shields.io/github/stars/InsForge/insforge?style=social" alt="GitHub Stars"></a>
15
+ </p>
16
+
17
+ # InsForge
18
+
19
+ **InsForge — это агентно-ориентированная альтернатива Supabase.** Мы создаём функциональность Supabase с использованием AI-нативного подхода, позволяя AI-агентам автономно создавать и управлять полнофункциональными приложениями.
20
+
21
+ ## Ключевые возможности и варианты использования
22
+
23
+ ### Основные возможности:
24
+ - **Аутентификация** — полная система управления пользователями
25
+ - **База данных** — гибкое хранение и получение данных
26
+ - **Хранилище** — управление и организация файлов
27
+ - **Бессерверные функции** — масштабируемые вычислительные мощности
28
+ - **Развёртывание сайтов** *(скоро)* — простое развёртывание приложений
29
+
30
+ ### Варианты использования: создание полнофункциональных приложений с помощью естественного языка
31
+ - **Подключайте AI-агентов к InsForge** — позвольте Claude, GPT или другим AI-агентам управлять вашим бэкендом
32
+ - **Добавляйте бэкенд в проекты в стиле Lovable или Bolt** — мгновенный бэкенд для фронтендов, сгенерированных AI
33
+
34
+ ## Примеры промптов:
35
+
36
+ <td align="center">
37
+ <img src="../assets/userflow.png" alt="userFlow">
38
+ <br>
39
+ </td>
40
+
41
+ ## Быстрый старт TLDR;
42
+
43
+ ### 1. Установите и запустите InsForge
44
+
45
+ **Используйте Docker (рекомендуется)**
46
+ Требования: [Docker](https://www.docker.com/) + [Node.js](https://nodejs.org/)
47
+
48
+ ```bash
49
+ # Запуск с Docker
50
+ git clone https://github.com/insforge/insforge.git
51
+ cd insforge
52
+ cp .env.example .env
53
+ docker compose up
54
+ ```
55
+
56
+ ### 2. Подключите AI-агента
57
+
58
+ Перейдите на панель управления InsForge (по умолчанию: http://localhost:7131), войдите в систему, следуйте руководству «Подключение» и настройте свой MCP.
59
+
60
+ <div align="center">
61
+ <table>
62
+ <tr>
63
+ <td align="center">
64
+ <img src="../assets/signin.png" alt="Sign In">
65
+ <br>
66
+ <em>Войдите в InsForge</em>
67
+ </td>
68
+ <td align="center">
69
+ <img src="../assets/mcpInstallv2.png" alt="MCP Configuration">
70
+ <br>
71
+ <em>Настройте подключение MCP</em>
72
+ </td>
73
+ </tr>
74
+ </table>
75
+ </div>
76
+
77
+ ### 3. Проверьте подключение
78
+
79
+ В вашем агенте отправьте:
80
+ ```
81
+ InsForge — моя бэкенд-платформа, какова моя текущая структура бэкенда?
82
+ ```
83
+
84
+ <div align="center">
85
+ <img src="../assets/sampleResponse.png" alt="Successful Connection Response" width="600">
86
+ <br>
87
+ <em>Пример успешного ответа при вызове инструментов InsForge MCP</em>
88
+ </div>
89
+
90
+ ### 4. Начните использовать InsForge
91
+
92
+ Начните создавать свой проект в новой директории! Создайте своё следующее приложение для задач, клон Instagram или онлайн-платформу за считанные секунды!
93
+
94
+ **Примеры промптов для проектов:**
95
+ - "Создай приложение для задач с аутентификацией пользователей"
96
+ - "Создай Instagram с загрузкой изображений"
97
+
98
+ ## Архитектура
99
+
100
+ <div align="center">
101
+ <img src="../assets/archDiagram.png" alt="Architecture Diagram">
102
+ <br>
103
+ </div>
104
+
105
+ ## Участие в проекте
106
+
107
+ **Участие**: Если вы заинтересованы во вкладе в проект, вы можете ознакомиться с нашим руководством здесь [CONTRIBUTING.md](CONTRIBUTING.md). Мы искренне ценим pull request'ы, любая помощь приветствуется!
108
+
109
+ **Поддержка**: Если вам нужна помощь или поддержка, мы отвечаем на нашем [Discord канале](https://discord.gg/MPxwj5xVvW), а также не стесняйтесь писать нам на [info@insforge.dev](mailto:info@insforge.dev)!
110
+
111
+ ## Документация и поддержка
112
+
113
+ ### Документация
114
+ - **[Официальная документация](https://docs.insforge.dev/introduction)** — исчерпывающие руководства и справочник по API
115
+
116
+ ### Сообщество
117
+ - **[Discord](https://discord.gg/MPxwj5xVvW)** — присоединяйтесь к нашему активному сообществу
118
+ - **[Twitter](https://x.com/InsForge_dev)** — подписывайтесь для получения новостей и советов
119
+
120
+ ### Контакты
121
+ - **Email**: [info@insforge.dev](mailto:info@insforge.dev)
122
+
123
+ ## Лицензия
124
+
125
+ Этот проект лицензирован под Apache License 2.0 — подробности смотрите в файле [LICENSE](LICENSE).
126
+
127
+ ---
128
+
129
+ [![Star History Chart](https://api.star-history.com/svg?repos=InsForge/insforge&type=Date)](https://www.star-history.com/#InsForge/insforge&Date)
@@ -0,0 +1,133 @@
1
+ <div align="center">
2
+ <a href="https://insforge.dev">
3
+ <img src="../assets/banner.png" alt="Insforge Logo">
4
+ </a>
5
+ </div>
6
+
7
+ <p align="center">
8
+ <a href="#快速开始">开始</a> ·
9
+ <a href="https://docs.insforge.dev/introduction">文档</a> ·
10
+ <a href="https://discord.com/invite/MPxwj5xVvW">Discord</a>
11
+ </p>
12
+ <p align="center">
13
+ <a href="https://opensource.org/licenses/Apache-2.0"><img src="https://img.shields.io/badge/License-Apache%202.0-blue.svg" alt="License"></a>
14
+ <a href="https://discord.com/invite/MPxwj5xVvW"><img src="https://img.shields.io/badge/Discord-Join%20Community-7289DA?logo=discord&logoColor=white" alt="Discord"></a>
15
+ <a href="https://github.com/InsForge/insforge/stargazers"><img src="https://img.shields.io/github/stars/InsForge/insforge?style=social" alt="GitHub Stars"></a>
16
+ </p>
17
+
18
+ # InsForge
19
+
20
+ **InsForge 是专为 AI 编程环境构建的(Agent-Native) Supabase 替代方案。** 我们以专为 AI 设计的架构实现 Supabase 的功能,使 AI 编程环境能够自主构建和管理全栈应用程序。
21
+ ## 主要功能与用例
22
+
23
+ ### 核心功能:
24
+ - **身份验证** - 完整的用户管理系统
25
+ - **数据库** - 灵活的数据存储和检索
26
+ - **存储** - 文件管理和组织
27
+ - **无服务器函数** - 可扩展的计算能力
28
+ - **站点部署** *(即将推出)* - 轻松部署应用程序
29
+
30
+ ### 用例: 使用自然语言部署全栈应用程序
31
+ - **将 AI 编程环境接入 InsForge** - 启用 Claude、GPT或其他 AI 编程环境管理您的后端
32
+ - **为 Lovable 或 Bolt 风格的“氛围编程”项目添加后端** - 为 AI 生成的前端提供即时后端支持
33
+
34
+ ## 提示词示例:
35
+
36
+ <td align="center">
37
+ <img src="../assets/userflow.png" alt="userFlow">
38
+ <br>
39
+ </td>
40
+
41
+ ## 快速开始
42
+
43
+ ### 1. 安装并运行 InsForge
44
+
45
+ **使用 Docker (推荐)**
46
+ 先决条件:[Docker](https://www.docker.com/) + [Node.js](https://nodejs.org/)
47
+
48
+ ```bash
49
+ # Run with Docker
50
+ git clone https://github.com/insforge/insforge.git
51
+ cd insforge
52
+ cp .env.example .env
53
+ docker compose up
54
+ ```
55
+
56
+ ### 2. 接入 AI 编程助手
57
+
58
+ 访问 InsForge 控制面板 (默认: http://localhost:7131),登录,并按照"Connect"指南设置您的 MCP。
59
+
60
+ <div align="center">
61
+ <table>
62
+ <tr>
63
+ <td align="center">
64
+ <img src="../assets/signin.png" alt="Sign In">
65
+ <br>
66
+ <em>登录 InsForge</em>
67
+ </td>
68
+ <td align="center">
69
+ <img src="../assets/mcpInstallv2.png" alt="MCP Configuration">
70
+ <br>
71
+ <em>配置 MCP 连接</em>
72
+ </td>
73
+ </tr>
74
+ </table>
75
+ </div>
76
+
77
+ ### 3. 测试连接
78
+
79
+ 在您的编程助手中,发送:
80
+ ```
81
+ InsForge is my backend platform, what is my current backend structure?
82
+ ```
83
+
84
+ <div align="center">
85
+ <img src="../assets/sampleResponse.png" alt="Successful Connection Response" width="600">
86
+ <br>
87
+ <em>调用 insforge MCP 工具的成功响应示例</em>
88
+ </div>
89
+
90
+ ### 4. 开始使用 InsForge
91
+
92
+ 在新目录中开始构建你的项目!只需几秒钟,即可构建你的下一个待办事项应用、Instagram 克隆版或在线平台!
93
+
94
+ **示例项目提示:**
95
+ - "Build a todo app with user authentication"
96
+ - "Create an Instagram with image upload"
97
+
98
+ ## 系统架构
99
+
100
+
101
+ <div align="center">
102
+ <img src="../assets/archDiagram.png" alt="Architecture Diagram">
103
+ <br>
104
+ </div>
105
+
106
+
107
+
108
+ ## 贡献
109
+
110
+ **贡献**:如果您有兴趣参与贡献,可以查看我们的贡献指南 [CONTRIBUTING.md](../CONTRIBUTING.md)。我们非常欢迎 pull requests(PR),衷心感谢任何形式的帮助!
111
+
112
+ **支持**:如果您需要任何帮助,欢迎通过我们的 [Discord channel](https://discord.com/invite/MPxwj5xVvW) 联系我们,我们会及时回复;也欢迎随时给我们发送邮件至 [info@insforge.dev](mailto:info@insforge.dev) !
113
+
114
+
115
+ ## 文档与支持
116
+
117
+ ### 文档
118
+ - **[Official Docs](https://docs.insforge.dev/introduction)** - 全面的指南与 API 参考
119
+
120
+ ### 社区
121
+ - **[Discord](https://discord.com/invite/MPxwj5xVvW)** - 加入我们充满活力的社区
122
+ - **[Twitter](https://x.com/InsForge_dev)** - 关注更新与提示
123
+
124
+ ### 联系我们
125
+ - **邮箱**: info@insforge.dev
126
+
127
+ ## 许可证
128
+
129
+ 该项目使用 Apache License 2.0 许可证 - 完整细节见 [LICENSE](../LICENSE) 文件.
130
+
131
+ ---
132
+
133
+ [![Star History Chart](https://api.star-history.com/svg?repos=InsForge/insforge&type=Date)](https://www.star-history.com/#InsForge/insforge&Date)
package/openapi/ai.yaml CHANGED
@@ -583,13 +583,22 @@ components:
583
583
  CreateAIConfigurationRequest:
584
584
  type: object
585
585
  required:
586
- - modality
586
+ - inputModality
587
+ - outputModality
587
588
  - provider
588
589
  - modelId
590
+
589
591
  properties:
590
- modality:
591
- type: string
592
- enum: [text, image]
592
+ inputModality:
593
+ type: array
594
+ items:
595
+ type: string
596
+ enum: [text, image]
597
+ outputModality:
598
+ type: array
599
+ items:
600
+ type: string
601
+ enum: [text, image]
593
602
  provider:
594
603
  type: string
595
604
  example: openrouter
@@ -672,6 +681,24 @@ components:
672
681
  createdAt:
673
682
  type: string
674
683
  format: date-time
684
+ provider:
685
+ type: string
686
+ nullable: true
687
+ model:
688
+ type: string
689
+ nullable: true
690
+ inputModality:
691
+ type: array
692
+ nullable: true
693
+ items:
694
+ type: string
695
+ enum: [text, image]
696
+ outputModality:
697
+ type: array
698
+ nullable: true
699
+ items:
700
+ type: string
701
+ enum: [text, image]
675
702
 
676
703
  ErrorResponse:
677
704
  type: object