@databricks/appkit-ui 0.12.0 → 0.12.2

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 (357) hide show
  1. package/CLAUDE.md +155 -147
  2. package/dist/cli/commands/docs.js +80 -17
  3. package/dist/cli/commands/docs.js.map +1 -1
  4. package/dist/react/charts/area/index.d.ts +2 -2
  5. package/dist/react/charts/bar/index.d.ts +2 -2
  6. package/dist/react/charts/base.d.ts +2 -2
  7. package/dist/react/charts/base.d.ts.map +1 -1
  8. package/dist/react/charts/create-chart.d.ts +2 -2
  9. package/dist/react/charts/create-chart.d.ts.map +1 -1
  10. package/dist/react/charts/heatmap/index.d.ts +2 -2
  11. package/dist/react/charts/line/index.d.ts +2 -2
  12. package/dist/react/charts/pie/index.d.ts +3 -3
  13. package/dist/react/charts/radar/index.d.ts +2 -2
  14. package/dist/react/charts/scatter/index.d.ts +2 -2
  15. package/dist/react/charts/wrapper.d.ts +2 -2
  16. package/dist/react/charts/wrapper.d.ts.map +1 -1
  17. package/dist/react/table/data-table.d.ts +2 -2
  18. package/dist/react/table/data-table.d.ts.map +1 -1
  19. package/dist/react/ui/accordion.d.ts +5 -5
  20. package/dist/react/ui/accordion.d.ts.map +1 -1
  21. package/dist/react/ui/alert-dialog.d.ts +12 -12
  22. package/dist/react/ui/alert.d.ts +4 -4
  23. package/dist/react/ui/alert.d.ts.map +1 -1
  24. package/dist/react/ui/aspect-ratio.d.ts +2 -2
  25. package/dist/react/ui/avatar.d.ts +4 -4
  26. package/dist/react/ui/badge.d.ts +2 -2
  27. package/dist/react/ui/breadcrumb.d.ts +8 -8
  28. package/dist/react/ui/button-group.d.ts +4 -4
  29. package/dist/react/ui/button.d.ts +2 -2
  30. package/dist/react/ui/calendar.d.ts +3 -3
  31. package/dist/react/ui/card.d.ts +8 -8
  32. package/dist/react/ui/carousel.d.ts +6 -6
  33. package/dist/react/ui/chart.d.ts +19 -19
  34. package/dist/react/ui/chart.d.ts.map +1 -1
  35. package/dist/react/ui/checkbox.d.ts +2 -2
  36. package/dist/react/ui/collapsible.d.ts +4 -4
  37. package/dist/react/ui/command.d.ts +10 -10
  38. package/dist/react/ui/context-menu.d.ts +16 -16
  39. package/dist/react/ui/dialog.d.ts +11 -11
  40. package/dist/react/ui/drawer.d.ts +11 -11
  41. package/dist/react/ui/drawer.d.ts.map +1 -1
  42. package/dist/react/ui/dropdown-menu.d.ts +16 -16
  43. package/dist/react/ui/empty.d.ts +7 -7
  44. package/dist/react/ui/field.d.ts +11 -11
  45. package/dist/react/ui/form.d.ts +9 -9
  46. package/dist/react/ui/form.d.ts.map +1 -1
  47. package/dist/react/ui/hover-card.d.ts +4 -4
  48. package/dist/react/ui/input-group.d.ts +7 -7
  49. package/dist/react/ui/input-otp.d.ts +5 -5
  50. package/dist/react/ui/input.d.ts +2 -2
  51. package/dist/react/ui/item.d.ts +11 -11
  52. package/dist/react/ui/kbd.d.ts +3 -3
  53. package/dist/react/ui/label.d.ts +2 -2
  54. package/dist/react/ui/menubar.d.ts +17 -17
  55. package/dist/react/ui/navigation-menu.d.ts +9 -9
  56. package/dist/react/ui/pagination.d.ts +8 -8
  57. package/dist/react/ui/popover.d.ts +5 -5
  58. package/dist/react/ui/progress.d.ts +2 -2
  59. package/dist/react/ui/radio-group.d.ts +3 -3
  60. package/dist/react/ui/resizable.d.ts +4 -4
  61. package/dist/react/ui/scroll-area.d.ts +3 -3
  62. package/dist/react/ui/select.d.ts +11 -11
  63. package/dist/react/ui/separator.d.ts +2 -2
  64. package/dist/react/ui/sheet.d.ts +9 -9
  65. package/dist/react/ui/sidebar.d.ts +41 -24
  66. package/dist/react/ui/sidebar.d.ts.map +1 -1
  67. package/dist/react/ui/sidebar.js.map +1 -1
  68. package/dist/react/ui/skeleton.d.ts +2 -2
  69. package/dist/react/ui/slider.d.ts +2 -2
  70. package/dist/react/ui/sonner.d.ts +2 -2
  71. package/dist/react/ui/spinner.d.ts +2 -2
  72. package/dist/react/ui/switch.d.ts +2 -2
  73. package/dist/react/ui/table.d.ts +9 -9
  74. package/dist/react/ui/tabs.d.ts +5 -5
  75. package/dist/react/ui/textarea.d.ts +2 -2
  76. package/dist/react/ui/toggle-group.d.ts +3 -3
  77. package/dist/react/ui/toggle.d.ts +2 -2
  78. package/dist/react/ui/tooltip.d.ts +5 -5
  79. package/dist/react/ui/tooltip.d.ts.map +1 -1
  80. package/docs/{docs/api → api}/appkit/Class.AppKitError.md +8 -8
  81. package/docs/{docs/api → api}/appkit/Class.AuthenticationError.md +9 -9
  82. package/docs/{docs/api → api}/appkit/Class.ConfigurationError.md +9 -9
  83. package/docs/{docs/api → api}/appkit/Class.ConnectionError.md +9 -9
  84. package/docs/{docs/api → api}/appkit/Class.ExecutionError.md +9 -9
  85. package/docs/{docs/api → api}/appkit/Class.InitializationError.md +9 -9
  86. package/docs/{docs/api → api}/appkit/Class.Plugin.md +22 -2
  87. package/docs/{docs/api → api}/appkit/Class.ResourceRegistry.md +11 -11
  88. package/docs/{docs/api → api}/appkit/Class.ServerError.md +9 -9
  89. package/docs/{docs/api → api}/appkit/Class.TunnelError.md +9 -9
  90. package/docs/{docs/api → api}/appkit/Class.ValidationError.md +9 -9
  91. package/docs/{docs/api → api}/appkit/Function.createApp.md +32 -3
  92. package/docs/{docs/api → api}/appkit/Function.createLakebasePool.md +1 -1
  93. package/docs/{docs/api → api}/appkit/Function.generateDatabaseCredential.md +2 -2
  94. package/docs/{docs/api → api}/appkit/Function.getLakebaseOrmConfig.md +1 -1
  95. package/docs/{docs/api → api}/appkit/Function.getLakebasePgConfig.md +1 -1
  96. package/docs/{docs/api → api}/appkit/Function.getPluginManifest.md +1 -1
  97. package/docs/{docs/api → api}/appkit/Function.getUsernameWithApiLookup.md +1 -1
  98. package/docs/{docs/api → api}/appkit/Function.getWorkspaceClient.md +1 -1
  99. package/docs/{docs/api → api}/appkit/Interface.ResourceEntry.md +8 -8
  100. package/docs/{docs/api → api}/appkit/Interface.ResourceRequirement.md +1 -1
  101. package/docs/{docs/api → api}/appkit-ui/styling.md +1 -1
  102. package/docs/{docs/api → api}/appkit-ui/ui/Sidebar.md +304 -37
  103. package/docs/api/appkit.md +78 -0
  104. package/docs/{docs/api.md → api.md} +4 -4
  105. package/docs/{docs/app-management.md → app-management.md} +2 -2
  106. package/docs/{docs/architecture.md → architecture.md} +6 -6
  107. package/docs/{docs/configuration.md → configuration.md} +2 -2
  108. package/docs/development/ai-assisted-development.md +88 -0
  109. package/docs/{docs/development → development}/llm-guide.md +8 -7
  110. package/docs/{docs/development → development}/local-development.md +2 -2
  111. package/docs/{docs/development → development}/project-setup.md +11 -11
  112. package/docs/{docs/development → development}/remote-bridge.md +1 -1
  113. package/docs/{docs/development → development}/type-generation.md +2 -2
  114. package/docs/development.md +22 -0
  115. package/docs/plugins/analytics.md +169 -0
  116. package/docs/{docs/plugins → plugins}/custom-plugins.md +6 -6
  117. package/docs/{docs/plugins → plugins}/server.md +1 -1
  118. package/docs/{docs/plugins.md → plugins.md} +2 -2
  119. package/{docs/docs.md → docs.md} +36 -5
  120. package/llms.txt +155 -147
  121. package/package.json +2 -1
  122. package/docs/docs/api/appkit/Class.AppKitError/index.html +0 -79
  123. package/docs/docs/api/appkit/Class.AuthenticationError/index.html +0 -110
  124. package/docs/docs/api/appkit/Class.ConfigurationError/index.html +0 -112
  125. package/docs/docs/api/appkit/Class.ConnectionError/index.html +0 -120
  126. package/docs/docs/api/appkit/Class.ExecutionError/index.html +0 -116
  127. package/docs/docs/api/appkit/Class.InitializationError/index.html +0 -104
  128. package/docs/docs/api/appkit/Class.Plugin/index.html +0 -168
  129. package/docs/docs/api/appkit/Class.ResourceRegistry/index.html +0 -150
  130. package/docs/docs/api/appkit/Class.ServerError/index.html +0 -108
  131. package/docs/docs/api/appkit/Class.TunnelError/index.html +0 -108
  132. package/docs/docs/api/appkit/Class.ValidationError/index.html +0 -106
  133. package/docs/docs/api/appkit/Enumeration.RequestedClaimsPermissionSet/index.html +0 -21
  134. package/docs/docs/api/appkit/Enumeration.ResourceType/index.html +0 -53
  135. package/docs/docs/api/appkit/Function.appKitTypesPlugin/index.html +0 -24
  136. package/docs/docs/api/appkit/Function.createApp/index.html +0 -24
  137. package/docs/docs/api/appkit/Function.createLakebasePool/index.html +0 -24
  138. package/docs/docs/api/appkit/Function.generateDatabaseCredential/index.html +0 -30
  139. package/docs/docs/api/appkit/Function.getExecutionContext/index.html +0 -26
  140. package/docs/docs/api/appkit/Function.getLakebaseOrmConfig/index.html +0 -39
  141. package/docs/docs/api/appkit/Function.getLakebasePgConfig/index.html +0 -27
  142. package/docs/docs/api/appkit/Function.getPluginManifest/index.html +0 -26
  143. package/docs/docs/api/appkit/Function.getResourceRequirements/index.html +0 -28
  144. package/docs/docs/api/appkit/Function.getUsernameWithApiLookup/index.html +0 -35
  145. package/docs/docs/api/appkit/Function.getWorkspaceClient/index.html +0 -22
  146. package/docs/docs/api/appkit/Function.isSQLTypeMarker/index.html +0 -25
  147. package/docs/docs/api/appkit/Interface.BasePluginConfig/index.html +0 -28
  148. package/docs/docs/api/appkit/Interface.CacheConfig/index.html +0 -63
  149. package/docs/docs/api/appkit/Interface.DatabaseCredential/index.html +0 -28
  150. package/docs/docs/api/appkit/Interface.GenerateDatabaseCredentialRequest/index.html +0 -32
  151. package/docs/docs/api/appkit/Interface.ITelemetry/index.html +0 -73
  152. package/docs/docs/api/appkit/Interface.LakebasePoolConfig/index.html +0 -75
  153. package/docs/docs/api/appkit/Interface.PluginManifest/index.html +0 -67
  154. package/docs/docs/api/appkit/Interface.RequestedClaims/index.html +0 -26
  155. package/docs/docs/api/appkit/Interface.RequestedResource/index.html +0 -27
  156. package/docs/docs/api/appkit/Interface.ResourceEntry/index.html +0 -83
  157. package/docs/docs/api/appkit/Interface.ResourceFieldEntry/index.html +0 -26
  158. package/docs/docs/api/appkit/Interface.ResourceRequirement/index.html +0 -51
  159. package/docs/docs/api/appkit/Interface.StreamExecutionSettings/index.html +0 -26
  160. package/docs/docs/api/appkit/Interface.TelemetryConfig/index.html +0 -32
  161. package/docs/docs/api/appkit/Interface.ValidationResult/index.html +0 -29
  162. package/docs/docs/api/appkit/TypeAlias.ConfigSchema/index.html +0 -21
  163. package/docs/docs/api/appkit/TypeAlias.IAppRouter/index.html +0 -18
  164. package/docs/docs/api/appkit/TypeAlias.ResourcePermission/index.html +0 -18
  165. package/docs/docs/api/appkit/TypeAlias.ToPlugin/index.html +0 -23
  166. package/docs/docs/api/appkit/Variable.sql/index.html +0 -98
  167. package/docs/docs/api/appkit/index.html +0 -30
  168. package/docs/docs/api/appkit-ui/data/AreaChart/index.html +0 -29
  169. package/docs/docs/api/appkit-ui/data/BarChart/index.html +0 -29
  170. package/docs/docs/api/appkit-ui/data/DataTable/index.html +0 -36
  171. package/docs/docs/api/appkit-ui/data/DonutChart/index.html +0 -29
  172. package/docs/docs/api/appkit-ui/data/HeatmapChart/index.html +0 -35
  173. package/docs/docs/api/appkit-ui/data/LineChart/index.html +0 -29
  174. package/docs/docs/api/appkit-ui/data/PieChart/index.html +0 -29
  175. package/docs/docs/api/appkit-ui/data/RadarChart/index.html +0 -29
  176. package/docs/docs/api/appkit-ui/data/ScatterChart/index.html +0 -29
  177. package/docs/docs/api/appkit-ui/genie/GenieChat/index.html +0 -26
  178. package/docs/docs/api/appkit-ui/genie/GenieChatInput/index.html +0 -24
  179. package/docs/docs/api/appkit-ui/genie/GenieChatMessage/index.html +0 -24
  180. package/docs/docs/api/appkit-ui/genie/GenieChatMessageList/index.html +0 -24
  181. package/docs/docs/api/appkit-ui/index.html +0 -23
  182. package/docs/docs/api/appkit-ui/styling/index.html +0 -74
  183. package/docs/docs/api/appkit-ui/ui/Accordion/index.html +0 -48
  184. package/docs/docs/api/appkit-ui/ui/Alert/index.html +0 -41
  185. package/docs/docs/api/appkit-ui/ui/AlertDialog/index.html +0 -97
  186. package/docs/docs/api/appkit-ui/ui/AspectRatio/index.html +0 -27
  187. package/docs/docs/api/appkit-ui/ui/Avatar/index.html +0 -41
  188. package/docs/docs/api/appkit-ui/ui/Badge/index.html +0 -27
  189. package/docs/docs/api/appkit-ui/ui/Breadcrumb/index.html +0 -69
  190. package/docs/docs/api/appkit-ui/ui/Button/index.html +0 -27
  191. package/docs/docs/api/appkit-ui/ui/ButtonGroup/index.html +0 -38
  192. package/docs/docs/api/appkit-ui/ui/Calendar/index.html +0 -34
  193. package/docs/docs/api/appkit-ui/ui/Card/index.html +0 -69
  194. package/docs/docs/api/appkit-ui/ui/Carousel/index.html +0 -55
  195. package/docs/docs/api/appkit-ui/ui/ChartContainer/index.html +0 -58
  196. package/docs/docs/api/appkit-ui/ui/Checkbox/index.html +0 -27
  197. package/docs/docs/api/appkit-ui/ui/Collapsible/index.html +0 -41
  198. package/docs/docs/api/appkit-ui/ui/Command/index.html +0 -83
  199. package/docs/docs/api/appkit-ui/ui/ContextMenu/index.html +0 -111
  200. package/docs/docs/api/appkit-ui/ui/Dialog/index.html +0 -90
  201. package/docs/docs/api/appkit-ui/ui/Drawer/index.html +0 -90
  202. package/docs/docs/api/appkit-ui/ui/DropdownMenu/index.html +0 -111
  203. package/docs/docs/api/appkit-ui/ui/Empty/index.html +0 -54
  204. package/docs/docs/api/appkit-ui/ui/Field/index.html +0 -87
  205. package/docs/docs/api/appkit-ui/ui/FormControl/index.html +0 -59
  206. package/docs/docs/api/appkit-ui/ui/HoverCard/index.html +0 -39
  207. package/docs/docs/api/appkit-ui/ui/Input/index.html +0 -27
  208. package/docs/docs/api/appkit-ui/ui/InputGroup/index.html +0 -59
  209. package/docs/docs/api/appkit-ui/ui/InputOTP/index.html +0 -48
  210. package/docs/docs/api/appkit-ui/ui/Item/index.html +0 -78
  211. package/docs/docs/api/appkit-ui/ui/Kbd/index.html +0 -30
  212. package/docs/docs/api/appkit-ui/ui/Label/index.html +0 -27
  213. package/docs/docs/api/appkit-ui/ui/Menubar/index.html +0 -117
  214. package/docs/docs/api/appkit-ui/ui/NavigationMenu/index.html +0 -76
  215. package/docs/docs/api/appkit-ui/ui/Pagination/index.html +0 -69
  216. package/docs/docs/api/appkit-ui/ui/Popover/index.html +0 -45
  217. package/docs/docs/api/appkit-ui/ui/Progress/index.html +0 -27
  218. package/docs/docs/api/appkit-ui/ui/RadioGroup/index.html +0 -33
  219. package/docs/docs/api/appkit-ui/ui/ResizableHandle/index.html +0 -41
  220. package/docs/docs/api/appkit-ui/ui/ScrollArea/index.html +0 -34
  221. package/docs/docs/api/appkit-ui/ui/Select/index.html +0 -82
  222. package/docs/docs/api/appkit-ui/ui/Separator/index.html +0 -27
  223. package/docs/docs/api/appkit-ui/ui/Sheet/index.html +0 -76
  224. package/docs/docs/api/appkit-ui/ui/Sidebar/index.html +0 -183
  225. package/docs/docs/api/appkit-ui/ui/Skeleton/index.html +0 -27
  226. package/docs/docs/api/appkit-ui/ui/Slider/index.html +0 -27
  227. package/docs/docs/api/appkit-ui/ui/Spinner/index.html +0 -24
  228. package/docs/docs/api/appkit-ui/ui/Switch/index.html +0 -27
  229. package/docs/docs/api/appkit-ui/ui/Table/index.html +0 -69
  230. package/docs/docs/api/appkit-ui/ui/Tabs/index.html +0 -48
  231. package/docs/docs/api/appkit-ui/ui/Textarea/index.html +0 -27
  232. package/docs/docs/api/appkit-ui/ui/Toaster/index.html +0 -27
  233. package/docs/docs/api/appkit-ui/ui/Toggle/index.html +0 -27
  234. package/docs/docs/api/appkit-ui/ui/ToggleGroup/index.html +0 -33
  235. package/docs/docs/api/appkit-ui/ui/Tooltip/index.html +0 -46
  236. package/docs/docs/api/appkit.md +0 -78
  237. package/docs/docs/api/index.html +0 -28
  238. package/docs/docs/app-management/index.html +0 -106
  239. package/docs/docs/architecture/index.html +0 -71
  240. package/docs/docs/category/development/index.html +0 -16
  241. package/docs/docs/category/development.md +0 -3
  242. package/docs/docs/configuration/index.html +0 -66
  243. package/docs/docs/core-principles/index.html +0 -38
  244. package/docs/docs/development/ai-assisted-development/index.html +0 -33
  245. package/docs/docs/development/ai-assisted-development.md +0 -26
  246. package/docs/docs/development/index.html +0 -35
  247. package/docs/docs/development/llm-guide/index.html +0 -84
  248. package/docs/docs/development/local-development/index.html +0 -27
  249. package/docs/docs/development/project-setup/index.html +0 -69
  250. package/docs/docs/development/remote-bridge/index.html +0 -76
  251. package/docs/docs/development/type-generation/index.html +0 -65
  252. package/docs/docs/development.md +0 -22
  253. package/docs/docs/index.html +0 -58
  254. package/docs/docs/plugins/analytics/index.html +0 -53
  255. package/docs/docs/plugins/analytics.md +0 -66
  256. package/docs/docs/plugins/caching/index.html +0 -23
  257. package/docs/docs/plugins/custom-plugins/index.html +0 -49
  258. package/docs/docs/plugins/execution-context/index.html +0 -40
  259. package/docs/docs/plugins/index.html +0 -29
  260. package/docs/docs/plugins/lakebase/index.html +0 -62
  261. package/docs/docs/plugins/plugin-management/index.html +0 -44
  262. package/docs/docs/plugins/server/index.html +0 -45
  263. /package/docs/{docs/api → api}/appkit/Enumeration.RequestedClaimsPermissionSet.md +0 -0
  264. /package/docs/{docs/api → api}/appkit/Enumeration.ResourceType.md +0 -0
  265. /package/docs/{docs/api → api}/appkit/Function.appKitTypesPlugin.md +0 -0
  266. /package/docs/{docs/api → api}/appkit/Function.getExecutionContext.md +0 -0
  267. /package/docs/{docs/api → api}/appkit/Function.getResourceRequirements.md +0 -0
  268. /package/docs/{docs/api → api}/appkit/Function.isSQLTypeMarker.md +0 -0
  269. /package/docs/{docs/api → api}/appkit/Interface.BasePluginConfig.md +0 -0
  270. /package/docs/{docs/api → api}/appkit/Interface.CacheConfig.md +0 -0
  271. /package/docs/{docs/api → api}/appkit/Interface.DatabaseCredential.md +0 -0
  272. /package/docs/{docs/api → api}/appkit/Interface.GenerateDatabaseCredentialRequest.md +0 -0
  273. /package/docs/{docs/api → api}/appkit/Interface.ITelemetry.md +0 -0
  274. /package/docs/{docs/api → api}/appkit/Interface.LakebasePoolConfig.md +0 -0
  275. /package/docs/{docs/api → api}/appkit/Interface.PluginManifest.md +0 -0
  276. /package/docs/{docs/api → api}/appkit/Interface.RequestedClaims.md +0 -0
  277. /package/docs/{docs/api → api}/appkit/Interface.RequestedResource.md +0 -0
  278. /package/docs/{docs/api → api}/appkit/Interface.ResourceFieldEntry.md +0 -0
  279. /package/docs/{docs/api → api}/appkit/Interface.StreamExecutionSettings.md +0 -0
  280. /package/docs/{docs/api → api}/appkit/Interface.TelemetryConfig.md +0 -0
  281. /package/docs/{docs/api → api}/appkit/Interface.ValidationResult.md +0 -0
  282. /package/docs/{docs/api → api}/appkit/TypeAlias.ConfigSchema.md +0 -0
  283. /package/docs/{docs/api → api}/appkit/TypeAlias.IAppRouter.md +0 -0
  284. /package/docs/{docs/api → api}/appkit/TypeAlias.ResourcePermission.md +0 -0
  285. /package/docs/{docs/api → api}/appkit/TypeAlias.ToPlugin.md +0 -0
  286. /package/docs/{docs/api → api}/appkit/Variable.sql.md +0 -0
  287. /package/docs/{docs/api → api}/appkit-ui/data/AreaChart.md +0 -0
  288. /package/docs/{docs/api → api}/appkit-ui/data/BarChart.md +0 -0
  289. /package/docs/{docs/api → api}/appkit-ui/data/DataTable.md +0 -0
  290. /package/docs/{docs/api → api}/appkit-ui/data/DonutChart.md +0 -0
  291. /package/docs/{docs/api → api}/appkit-ui/data/HeatmapChart.md +0 -0
  292. /package/docs/{docs/api → api}/appkit-ui/data/LineChart.md +0 -0
  293. /package/docs/{docs/api → api}/appkit-ui/data/PieChart.md +0 -0
  294. /package/docs/{docs/api → api}/appkit-ui/data/RadarChart.md +0 -0
  295. /package/docs/{docs/api → api}/appkit-ui/data/ScatterChart.md +0 -0
  296. /package/docs/{docs/api → api}/appkit-ui/genie/GenieChat.md +0 -0
  297. /package/docs/{docs/api → api}/appkit-ui/genie/GenieChatInput.md +0 -0
  298. /package/docs/{docs/api → api}/appkit-ui/genie/GenieChatMessage.md +0 -0
  299. /package/docs/{docs/api → api}/appkit-ui/genie/GenieChatMessageList.md +0 -0
  300. /package/docs/{docs/api → api}/appkit-ui/ui/Accordion.md +0 -0
  301. /package/docs/{docs/api → api}/appkit-ui/ui/Alert.md +0 -0
  302. /package/docs/{docs/api → api}/appkit-ui/ui/AlertDialog.md +0 -0
  303. /package/docs/{docs/api → api}/appkit-ui/ui/AspectRatio.md +0 -0
  304. /package/docs/{docs/api → api}/appkit-ui/ui/Avatar.md +0 -0
  305. /package/docs/{docs/api → api}/appkit-ui/ui/Badge.md +0 -0
  306. /package/docs/{docs/api → api}/appkit-ui/ui/Breadcrumb.md +0 -0
  307. /package/docs/{docs/api → api}/appkit-ui/ui/Button.md +0 -0
  308. /package/docs/{docs/api → api}/appkit-ui/ui/ButtonGroup.md +0 -0
  309. /package/docs/{docs/api → api}/appkit-ui/ui/Calendar.md +0 -0
  310. /package/docs/{docs/api → api}/appkit-ui/ui/Card.md +0 -0
  311. /package/docs/{docs/api → api}/appkit-ui/ui/Carousel.md +0 -0
  312. /package/docs/{docs/api → api}/appkit-ui/ui/ChartContainer.md +0 -0
  313. /package/docs/{docs/api → api}/appkit-ui/ui/Checkbox.md +0 -0
  314. /package/docs/{docs/api → api}/appkit-ui/ui/Collapsible.md +0 -0
  315. /package/docs/{docs/api → api}/appkit-ui/ui/Command.md +0 -0
  316. /package/docs/{docs/api → api}/appkit-ui/ui/ContextMenu.md +0 -0
  317. /package/docs/{docs/api → api}/appkit-ui/ui/Dialog.md +0 -0
  318. /package/docs/{docs/api → api}/appkit-ui/ui/Drawer.md +0 -0
  319. /package/docs/{docs/api → api}/appkit-ui/ui/DropdownMenu.md +0 -0
  320. /package/docs/{docs/api → api}/appkit-ui/ui/Empty.md +0 -0
  321. /package/docs/{docs/api → api}/appkit-ui/ui/Field.md +0 -0
  322. /package/docs/{docs/api → api}/appkit-ui/ui/FormControl.md +0 -0
  323. /package/docs/{docs/api → api}/appkit-ui/ui/HoverCard.md +0 -0
  324. /package/docs/{docs/api → api}/appkit-ui/ui/Input.md +0 -0
  325. /package/docs/{docs/api → api}/appkit-ui/ui/InputGroup.md +0 -0
  326. /package/docs/{docs/api → api}/appkit-ui/ui/InputOTP.md +0 -0
  327. /package/docs/{docs/api → api}/appkit-ui/ui/Item.md +0 -0
  328. /package/docs/{docs/api → api}/appkit-ui/ui/Kbd.md +0 -0
  329. /package/docs/{docs/api → api}/appkit-ui/ui/Label.md +0 -0
  330. /package/docs/{docs/api → api}/appkit-ui/ui/Menubar.md +0 -0
  331. /package/docs/{docs/api → api}/appkit-ui/ui/NavigationMenu.md +0 -0
  332. /package/docs/{docs/api → api}/appkit-ui/ui/Pagination.md +0 -0
  333. /package/docs/{docs/api → api}/appkit-ui/ui/Popover.md +0 -0
  334. /package/docs/{docs/api → api}/appkit-ui/ui/Progress.md +0 -0
  335. /package/docs/{docs/api → api}/appkit-ui/ui/RadioGroup.md +0 -0
  336. /package/docs/{docs/api → api}/appkit-ui/ui/ResizableHandle.md +0 -0
  337. /package/docs/{docs/api → api}/appkit-ui/ui/ScrollArea.md +0 -0
  338. /package/docs/{docs/api → api}/appkit-ui/ui/Select.md +0 -0
  339. /package/docs/{docs/api → api}/appkit-ui/ui/Separator.md +0 -0
  340. /package/docs/{docs/api → api}/appkit-ui/ui/Sheet.md +0 -0
  341. /package/docs/{docs/api → api}/appkit-ui/ui/Skeleton.md +0 -0
  342. /package/docs/{docs/api → api}/appkit-ui/ui/Slider.md +0 -0
  343. /package/docs/{docs/api → api}/appkit-ui/ui/Spinner.md +0 -0
  344. /package/docs/{docs/api → api}/appkit-ui/ui/Switch.md +0 -0
  345. /package/docs/{docs/api → api}/appkit-ui/ui/Table.md +0 -0
  346. /package/docs/{docs/api → api}/appkit-ui/ui/Tabs.md +0 -0
  347. /package/docs/{docs/api → api}/appkit-ui/ui/Textarea.md +0 -0
  348. /package/docs/{docs/api → api}/appkit-ui/ui/Toaster.md +0 -0
  349. /package/docs/{docs/api → api}/appkit-ui/ui/Toggle.md +0 -0
  350. /package/docs/{docs/api → api}/appkit-ui/ui/ToggleGroup.md +0 -0
  351. /package/docs/{docs/api → api}/appkit-ui/ui/Tooltip.md +0 -0
  352. /package/docs/{docs/api → api}/appkit-ui.md +0 -0
  353. /package/docs/{docs/core-principles.md → core-principles.md} +0 -0
  354. /package/docs/{docs/plugins → plugins}/caching.md +0 -0
  355. /package/docs/{docs/plugins → plugins}/execution-context.md +0 -0
  356. /package/docs/{docs/plugins → plugins}/lakebase.md +0 -0
  357. /package/docs/{docs/plugins → plugins}/plugin-management.md +0 -0
@@ -20,7 +20,7 @@ The backend SDK that provides the plugin architecture and core functionality. It
20
20
  * Cache management and streaming capabilities
21
21
  * Type generation for SQL queries
22
22
 
23
- See the [Plugins](/appkit/docs/plugins.md) and [API reference](/appkit/docs/api/appkit.md) documentation for detailed information.
23
+ See the [Plugins](./docs/plugins.md) and [API reference](./docs/api/appkit.md) documentation for detailed information.
24
24
 
25
25
  ### @databricks/appkit-ui[​](#databricksappkit-ui "Direct link to @databricks/appkit-ui")
26
26
 
@@ -31,7 +31,7 @@ A React UI library with pre-built components optimized for data applications:
31
31
  * Data visualization components
32
32
  * Type-safe integration with backend queries
33
33
 
34
- See the [API reference](/appkit/docs/api/appkit-ui.md) for component documentation.
34
+ See the [API reference](./docs/api/appkit-ui.md) for component documentation.
35
35
 
36
36
  ## Application layers[​](#application-layers "Direct link to Application layers")
37
37
 
@@ -63,7 +63,7 @@ Integration with Databricks services:
63
63
 
64
64
  ## See also[​](#see-also "Direct link to See also")
65
65
 
66
- * [Plugins](/appkit/docs/plugins.md): Deep dive into the plugin system
67
- * [API reference](/appkit/docs/api.md): Complete API documentation
68
- * [Development](/appkit/docs/development.md): Explore development workflows
69
- * [Core Principles](/appkit/docs/core-principles.md): Learn about AppKit's design philosophy
66
+ * [Plugins](./docs/plugins.md): Deep dive into the plugin system
67
+ * [API reference](./docs/api.md): Complete API documentation
68
+ * [Development](./docs/development.md): Explore development workflows
69
+ * [Core Principles](./docs/core-principles.md): Learn about AppKit's design philosophy
@@ -146,5 +146,5 @@ For advanced Databricks Apps configuration (authorization, networking, resource
146
146
 
147
147
  ## See also[​](#see-also "Direct link to See also")
148
148
 
149
- * [App management](/appkit/docs/app-management.md) - Deploying and managing apps
150
- * [Plugins](/appkit/docs/plugins.md) - Plugin configuration options
149
+ * [App management](./docs/app-management.md) - Deploying and managing apps
150
+ * [Plugins](./docs/plugins.md) - Plugin configuration options
@@ -0,0 +1,88 @@
1
+ # AI-Assisted development
2
+
3
+ ## Prerequisites[​](#prerequisites "Direct link to Prerequisites")
4
+
5
+ * [Node.js](https://nodejs.org) v22+ environment with `npm`
6
+ * Databricks CLI (v0.287.0 or higher): install and configure it according to the [official tutorial](https://docs.databricks.com/aws/en/dev-tools/cli/tutorial).
7
+ * A new Databricks app with AppKit installed. See [Bootstrap a new Databricks app](./docs.md#quick-start-options) for more details.
8
+
9
+ AppKit integrates with AI coding assistants through the Agent Skills.
10
+
11
+ ## Installing Agent Skills[​](#installing-agent-skills "Direct link to Installing Agent Skills")
12
+
13
+ To install the Databricks Agent Skills for your preferred AI assistant, run:
14
+
15
+ ```bash
16
+ databricks experimental aitools skills install
17
+
18
+ ```
19
+
20
+ ## Skills capabilities[​](#skills-capabilities "Direct link to Skills capabilities")
21
+
22
+ The Agent Skills expose the following capabilities for AI assistants:
23
+
24
+ * **Data exploration**: Query catalogs, schemas, tables, and execute SQL
25
+ * **CLI command execution**: Deploy and manage apps, and run other workspace operations
26
+ * **Workspace resource discovery**: Inspect and navigate workspace resources
27
+
28
+ ## Example prompts[​](#example-prompts "Direct link to Example prompts")
29
+
30
+ Here are some basic examples you can use to explore your app and workspace:
31
+
32
+ 1. Creating a new basic app
33
+
34
+ ```text
35
+ Create a new Databricks app that displays a dashboard of the users table in main.default.
36
+
37
+ ```
38
+
39
+ 1. Introspecting a table schema
40
+
41
+ ```text
42
+ Show me the schema of the users table in main.default.
43
+
44
+ ```
45
+
46
+ 1. Creating a new query
47
+
48
+ ```text
49
+ Create a new query to find users created in the last 7 days.
50
+
51
+ ```
52
+
53
+ 1. Deploying an app
54
+
55
+ ```text
56
+ Deploy the app to Databricks with the name "my-app".
57
+
58
+ ```
59
+
60
+ Possibilities are virtually endless. Ask your AI assistant to help you with your app and workspace.
61
+
62
+ ## LLM resources[​](#llm-resources "Direct link to LLM resources")
63
+
64
+ AppKit provides specialized guidance files to help AI coding assistants work more effectively with the projects.
65
+
66
+ If you're building applications using AppKit packages, reference the `llms.txt` file. There are two ways to access the documentation:
67
+
68
+ 1. Use the [hosted llms.txt file](https://databricks.github.io/appkit/llms.txt)
69
+ 2. Use the `npx @databricks/appkit docs` command to view the documentation in the terminal.
70
+
71
+ ```bash
72
+ npx @databricks/appkit docs # documentation index with section overview
73
+ npx @databricks/appkit docs <query> # for specific documentation file or section
74
+
75
+ ```
76
+
77
+ Examples of documentation queries:
78
+
79
+ ```bash
80
+ npx @databricks/appkit docs "appkit-ui API reference" # view a specific section
81
+ npx @databricks/appkit docs --full # full index with all API entries
82
+ npx @databricks/appkit docs ./docs.md # view a specific documentation file
83
+
84
+ ```
85
+
86
+ ## See more[​](#see-more "Direct link to See more")
87
+
88
+ To learn more about Agent Skills, see the [Agent Skills repository](https://github.com/databricks/databricks-agent-skills).
@@ -46,17 +46,18 @@ View API reference (docs only, NOT for scaffolding):
46
46
 
47
47
  ```bash
48
48
  # ONLY for viewing documentation - do NOT use for init/scaffold
49
- npx @databricks/appkit docs <path>
49
+ npx @databricks/appkit docs <query>
50
50
 
51
51
  ```
52
52
 
53
- **IMPORTANT**: ALWAYS run `npx @databricks/appkit docs` (no path) FIRST to see available pages. DO NOT guess paths - use the index to find correct paths.
53
+ **IMPORTANT**: ALWAYS run `npx @databricks/appkit docs` (no query) FIRST to see the documentation index. DO NOT guess paths - use the index to find correct paths.
54
54
 
55
- Examples of known paths:
55
+ Examples:
56
56
 
57
- * Root index: `npx @databricks/appkit docs`
58
- * API reference: `npx @databricks/appkit docs ./docs/docs/api.md`
59
- * Component docs: `npx @databricks/appkit docs ./docs/docs/api/appkit-ui/components/Sidebar.md`
57
+ * Documentation index: `npx @databricks/appkit docs`
58
+ * View a section: `npx @databricks/appkit docs "appkit-ui API reference"`
59
+ * Full index (all API entries): `npx @databricks/appkit docs --full`
60
+ * View specific doc: `npx @databricks/appkit docs ./docs/plugins/analytics.md`
60
61
 
61
62
  ## LLM checklist (before finalizing code)[​](#llm-checklist-before-finalizing-code "Direct link to LLM checklist (before finalizing code)")
62
63
 
@@ -64,7 +65,7 @@ Examples of known paths:
64
65
 
65
66
  * `package.json` has `"type": "module"`
66
67
  * `tsx` is in devDependencies for dev server
67
- * `dev` script uses `NODE_ENV=development tsx watch server/index.ts`
68
+ * `dev` script uses `NODE_ENV=development tsx watch server/server.ts`
68
69
  * `client/index.html` exists with `<div id="root"></div>` and script pointing to `client/src/main.tsx`
69
70
 
70
71
  ### Backend[​](#backend "Direct link to Backend")
@@ -4,9 +4,9 @@
4
4
 
5
5
  * [Node.js](https://nodejs.org) v22+ environment with `npm`
6
6
  * Databricks CLI (v0.287.0 or higher): install and configure it according to the [official tutorial](https://docs.databricks.com/aws/en/dev-tools/cli/tutorial).
7
- * A new Databricks app with AppKit installed. See the [Quick start](/appkit/docs.md#quick-start) for more details.
7
+ * A new Databricks app with AppKit installed. See [Bootstrap a new Databricks app](./docs.md#quick-start-options) for more details.
8
8
 
9
- Once your app is bootstrapped according to the [Quick start](/appkit/docs.md#quick-start) guide, you can start the development server with hot reload for both UI and backend code.
9
+ Once your app is bootstrapped according to the [Manual quick start](./docs.md#manual-quick-start) guide, you can start the development server with hot reload for both UI and backend code.
10
10
 
11
11
  In the application root directory, run the following command to start the development server:
12
12
 
@@ -9,7 +9,7 @@ Recommended structure (client/server split):
9
9
  ```text
10
10
  my-app/
11
11
  ├── server/
12
- │ ├── index.ts # backend entry point (AppKit)
12
+ │ ├── server.ts # backend entry point (AppKit)
13
13
  │ └── .env # optional local dev env vars (do not commit)
14
14
  ├── client/
15
15
  │ ├── index.html
@@ -44,9 +44,9 @@ The AppKit `server()` plugin automatically serves:
44
44
  "version": "0.0.0",
45
45
  "type": "module",
46
46
  "scripts": {
47
- "dev": "NODE_ENV=development tsx watch server/index.ts",
47
+ "dev": "NODE_ENV=development tsx watch server/server.ts",
48
48
  "build": "npm run build:server && npm run build:client",
49
- "build:server": "tsdown --out-dir build server/index.ts",
49
+ "build:server": "tsdown --out-dir build server/server.ts",
50
50
  "build:client": "tsc -b && vite build --config client/vite.config.ts",
51
51
  "start": "node build/index.mjs"
52
52
  },
@@ -149,7 +149,7 @@ export default defineConfig({
149
149
 
150
150
  ```
151
151
 
152
- ### `server/index.ts`[​](#serverindexts "Direct link to serverindexts")
152
+ ### `server/server.ts`[​](#serverserverts "Direct link to serverserverts")
153
153
 
154
154
  ```ts
155
155
  import { createApp, server } from "@databricks/appkit";
@@ -193,7 +193,7 @@ If you don't already have a `client/` folder, create one and move your Vite app
193
193
  * Move `vite.config.ts` → `client/vite.config.ts`
194
194
  * Move `src/` → `client/src/`
195
195
 
196
- ### 2. Create `server/index.ts` (New File)[​](#2-create-serverindexts-new-file "Direct link to 2-create-serverindexts-new-file")
196
+ ### 2. Create `server/server.ts` (New File)[​](#2-create-serverserverts-new-file "Direct link to 2-create-serverserverts-new-file")
197
197
 
198
198
  ```ts
199
199
  import { createApp, server } from "@databricks/appkit";
@@ -209,9 +209,9 @@ await createApp({
209
209
  ```json
210
210
  {
211
211
  "scripts": {
212
- "dev": "NODE_ENV=development tsx watch server/index.ts",
212
+ "dev": "NODE_ENV=development tsx watch server/server.ts",
213
213
  "build": "npm run build:server && npm run build:client",
214
- "build:server": "tsdown --out-dir build server/index.ts",
214
+ "build:server": "tsdown --out-dir build server/server.ts",
215
215
  "build:client": "tsc -b && vite build --config client/vite.config.ts",
216
216
  "start": "node build/index.mjs"
217
217
  }
@@ -228,7 +228,7 @@ AppKit's server plugin will automatically serve your Vite app in dev mode and `c
228
228
  To add SQL query execution capabilities:
229
229
 
230
230
  ```ts
231
- // server/index.ts
231
+ // server/server.ts
232
232
  import { createApp, server, analytics } from "@databricks/appkit";
233
233
 
234
234
  await createApp({
@@ -241,6 +241,6 @@ Then create `config/queries/` and add your `.sql` files.
241
241
 
242
242
  ## See also[​](#see-also "Direct link to See also")
243
243
 
244
- * [Local development](/appkit/docs/development/local-development.md) - Running the dev server
245
- * [Configuration](/appkit/docs/configuration.md) - Environment variables
246
- * [Plugins](/appkit/docs/plugins.md) - Plugin configuration
244
+ * [Local development](./docs/development/local-development.md) - Running the dev server
245
+ * [Configuration](./docs/configuration.md) - Environment variables
246
+ * [Plugins](./docs/plugins.md) - Plugin configuration
@@ -4,7 +4,7 @@
4
4
 
5
5
  * [Node.js](https://nodejs.org) v22+ environment with `npm`
6
6
  * Databricks CLI (v0.287.0 or higher): install and configure it according to the [official tutorial](https://docs.databricks.com/aws/en/dev-tools/cli/tutorial).
7
- * A new Databricks app with AppKit installed. See the [Quick start](/appkit/docs.md#quick-start) for more details.
7
+ * A new Databricks app with AppKit installed. See [Bootstrap a new Databricks app](./docs.md#quick-start-options) for more details.
8
8
 
9
9
  Remote bridge allows you to develop against a deployed backend while keeping your UI and queries local. This is useful for testing against production data or debugging deployed backend code without redeploying your app.
10
10
 
@@ -106,5 +106,5 @@ data?.forEach(row => {
106
106
 
107
107
  ## See also[​](#see-also "Direct link to See also")
108
108
 
109
- * [Plugins](/appkit/docs/plugins.md) - Analytics plugin configuration
110
- * [API Reference](/appkit/docs/api/appkit-ui.md) - Complete UI components API documentation
109
+ * [Plugins](./docs/plugins/analytics.md) - Analytics plugin configuration
110
+ * [API Reference](./docs/api/appkit-ui.md) - Complete UI components API documentation
@@ -0,0 +1,22 @@
1
+ # Development
2
+
3
+ AppKit provides multiple development workflows to suit different needs: local development with hot reload, AI-assisted development with Agent Skills, and remote tunneling to deployed backends.
4
+
5
+ ## Prerequisites[​](#prerequisites "Direct link to Prerequisites")
6
+
7
+ * [Node.js](https://nodejs.org) v22+ environment with `npm`
8
+ * Databricks CLI (v0.287.0 or higher): install and configure it according to the [official tutorial](https://docs.databricks.com/aws/en/dev-tools/cli/tutorial).
9
+ * A new Databricks app with AppKit installed. See [Bootstrap a new Databricks app](./docs.md#quick-start-options) for more details.
10
+
11
+ ## Development flows[​](#development-flows "Direct link to Development flows")
12
+
13
+ There are multiple supported development flows available with AppKit:
14
+
15
+ 1. **[Local development](./docs/development/local-development.md)**: Run the development server with hot reload for both UI and backend code. This is the default development flow and is suitable for most use cases.
16
+ 2. **[AI-assisted development](./docs/development/ai-assisted-development.md)**: Use an AI coding assistant with Agent Skills to explore data, run CLI commands, and scaffold your app interactively.
17
+ 3. **[Remote Bridge](./docs/development/remote-bridge.md)**: Create a remote bridge to a deployed backend while keeping your queries and UI local. This is useful for testing against production data or debugging deployed backend code without redeploying your app.
18
+
19
+ ## See also[​](#see-also "Direct link to See also")
20
+
21
+ * [App management](./docs/app-management.md): Manage your AppKit application throughout its lifecycle using the Databricks CLI
22
+ * [Architecture](./docs/architecture.md): Learn about the architecture of AppKit
@@ -0,0 +1,169 @@
1
+ # Analytics plugin
2
+
3
+ Enables SQL query execution against Databricks SQL Warehouses.
4
+
5
+ **Key features:**
6
+
7
+ * File-based SQL queries with automatic type generation
8
+ * Parameterized queries with type-safe [SQL helpers](./docs/api/appkit/Variable.sql.md)
9
+ * JSON and Arrow format support
10
+ * Built-in caching and retry logic
11
+ * Server-Sent Events (SSE) streaming
12
+
13
+ ## Basic usage[​](#basic-usage "Direct link to Basic usage")
14
+
15
+ ```ts
16
+ import { analytics, createApp, server } from "@databricks/appkit";
17
+
18
+ await createApp({
19
+ plugins: [server(), analytics({})],
20
+ });
21
+
22
+ ```
23
+
24
+ ## Query files[​](#query-files "Direct link to Query files")
25
+
26
+ * Put `.sql` files in `config/queries/`
27
+ * Query key is the filename without `.sql` (e.g. `spend_summary.sql` → `"spend_summary"`)
28
+
29
+ ### Execution context[​](#execution-context "Direct link to Execution context")
30
+
31
+ * `queryKey.sql` executes as **service principal** (shared cache)
32
+ * `queryKey.obo.sql` executes as **user** (OBO = on-behalf-of, per-user cache)
33
+
34
+ The execution context is determined by the SQL file name, not by the hook call.
35
+
36
+ ## SQL parameters[​](#sql-parameters "Direct link to SQL parameters")
37
+
38
+ Use `:paramName` placeholders and optionally annotate parameter types using SQL comments:
39
+
40
+ ```sql
41
+ -- @param startDate DATE
42
+ -- @param endDate DATE
43
+ -- @param limit NUMERIC
44
+ SELECT ...
45
+ WHERE usage_date BETWEEN :startDate AND :endDate
46
+ LIMIT :limit
47
+
48
+ ```
49
+
50
+ **Supported `-- @param` types** (case-insensitive):
51
+
52
+ * `STRING`, `NUMERIC`, `BOOLEAN`, `DATE`, `TIMESTAMP`, `BINARY`
53
+
54
+ ## Server-injected parameters[​](#server-injected-parameters "Direct link to Server-injected parameters")
55
+
56
+ `:workspaceId` is **injected by the server** and **must not** be annotated:
57
+
58
+ ```sql
59
+ WHERE workspace_id = :workspaceId
60
+
61
+ ```
62
+
63
+ ## HTTP endpoints[​](#http-endpoints "Direct link to HTTP endpoints")
64
+
65
+ The analytics plugin exposes these endpoints (mounted under `/api/analytics`):
66
+
67
+ * `POST /api/analytics/query/:query_key`
68
+ * `GET /api/analytics/arrow-result/:jobId`
69
+
70
+ ## Format options[​](#format-options "Direct link to Format options")
71
+
72
+ * `format: "JSON"` (default) returns JSON rows
73
+ * `format: "ARROW"` returns an Arrow "statement\_id" payload over SSE, then the client fetches binary Arrow from `/api/analytics/arrow-result/:jobId`
74
+
75
+ ## Frontend usage[​](#frontend-usage "Direct link to Frontend usage")
76
+
77
+ ### useAnalyticsQuery[​](#useanalyticsquery "Direct link to useAnalyticsQuery")
78
+
79
+ React hook that subscribes to an analytics query over SSE and returns its latest result.
80
+
81
+ ```ts
82
+ import { useAnalyticsQuery } from "@databricks/appkit-ui/react";
83
+
84
+ const { data, loading, error } = useAnalyticsQuery(queryKey, parameters, options);
85
+
86
+ ```
87
+
88
+ **Return type:**
89
+
90
+ ```ts
91
+ {
92
+ data: T | null; // query result (typed array for JSON, TypedArrowTable for ARROW)
93
+ loading: boolean; // true while the query is executing
94
+ error: string | null; // error message, or null on success
95
+ }
96
+
97
+ ```
98
+
99
+ **Options:**
100
+
101
+ | Option | Type | Default | Description |
102
+ | ------------------- | ------------------- | -------- | --------------------------------------- |
103
+ | `format` | `"JSON" \| "ARROW"` | `"JSON"` | Response format |
104
+ | `maxParametersSize` | `number` | `102400` | Max serialized parameters size in bytes |
105
+ | `autoStart` | `boolean` | `true` | Start query on mount |
106
+
107
+ **Example with loading/error/empty handling:**
108
+
109
+ ```tsx
110
+ import { useAnalyticsQuery } from "@databricks/appkit-ui/react";
111
+ import { sql } from "@databricks/appkit-ui/js";
112
+ import { Skeleton } from "@databricks/appkit-ui";
113
+
114
+ function SpendTable() {
115
+ const params = useMemo(() => ({
116
+ startDate: sql.date("2025-01-01"),
117
+ endDate: sql.date("2025-12-31"),
118
+ }), []);
119
+
120
+ const { data, loading, error } = useAnalyticsQuery("spend_summary", params);
121
+
122
+ if (loading) return <Skeleton className="h-32 w-full" />;
123
+ if (error) return <div className="text-destructive">{error}</div>;
124
+ if (!data?.length) return <div className="text-muted-foreground">No results</div>;
125
+
126
+ return (
127
+ <ul>
128
+ {data.map((row) => (
129
+ <li key={row.id}>{row.name}: ${row.cost_usd}</li>
130
+ ))}
131
+ </ul>
132
+ );
133
+ }
134
+
135
+ ```
136
+
137
+ ### Type-safe queries[​](#type-safe-queries "Direct link to Type-safe queries")
138
+
139
+ Augment the `QueryRegistry` interface to get full type inference on parameters and results:
140
+
141
+ ```ts
142
+ // config/appKitTypes.d.ts
143
+ declare module "@databricks/appkit-ui/react" {
144
+ interface QueryRegistry {
145
+ spend_summary: {
146
+ name: "spend_summary";
147
+ parameters: { startDate: string; endDate: string };
148
+ result: Array<{ id: string; name: string; cost_usd: number }>;
149
+ };
150
+ }
151
+ }
152
+
153
+ ```
154
+
155
+ See [Type generation](./docs/development/type-generation.md) for automatic generation from SQL files.
156
+
157
+ ### Memoization[​](#memoization "Direct link to Memoization")
158
+
159
+ **Always wrap parameters in `useMemo`** to avoid refetch loops. The hook re-executes whenever the parameters reference changes:
160
+
161
+ ```ts
162
+ // Good
163
+ const params = useMemo(() => ({ status: sql.string("active") }), []);
164
+ const { data } = useAnalyticsQuery("users", params);
165
+
166
+ // Bad - creates a new object every render, causing infinite refetches
167
+ const { data } = useAnalyticsQuery("users", { status: sql.string("active") });
168
+
169
+ ```
@@ -11,7 +11,7 @@ For a deeper understanding of the plugin structure, read on.
11
11
 
12
12
  ## Basic plugin example[​](#basic-plugin-example "Direct link to Basic plugin example")
13
13
 
14
- Extend the [`Plugin`](/appkit/docs/api/appkit/Class.Plugin.md) class and export with `toPlugin()`:
14
+ Extend the [`Plugin`](./docs/api/appkit/Class.Plugin.md) class and export with `toPlugin()`:
15
15
 
16
16
  ```typescript
17
17
  import { Plugin, toPlugin } from "@databricks/appkit";
@@ -128,7 +128,7 @@ This pattern allows:
128
128
 
129
129
  ## Key extension points[​](#key-extension-points "Direct link to Key extension points")
130
130
 
131
- * **Route injection**: Implement `injectRoutes()` to add custom endpoints using [`IAppRouter`](/appkit/docs/api/appkit/TypeAlias.IAppRouter.md)
131
+ * **Route injection**: Implement `injectRoutes()` to add custom endpoints using [`IAppRouter`](./docs/api/appkit/TypeAlias.IAppRouter.md)
132
132
 
133
133
  * **Lifecycle hooks**: Override `setup()`, and `shutdown()` methods
134
134
 
@@ -136,10 +136,10 @@ This pattern allows:
136
136
 
137
137
  <!-- -->
138
138
 
139
- * **Cache management**: Access the cache service via `this.cache`. See [`CacheConfig`](/appkit/docs/api/appkit/Interface.CacheConfig.md) for configuration.
140
- * **Telemetry**: Instrument your plugin with traces and metrics via `this.telemetry`. See [`ITelemetry`](/appkit/docs/api/appkit/Interface.ITelemetry.md).
139
+ * **Cache management**: Access the cache service via `this.cache`. See [`CacheConfig`](./docs/api/appkit/Interface.CacheConfig.md) for configuration.
140
+ * **Telemetry**: Instrument your plugin with traces and metrics via `this.telemetry`. See [`ITelemetry`](./docs/api/appkit/Interface.ITelemetry.md).
141
141
 
142
- * **Execution interceptors**: Use `execute()` and `executeStream()` with [`StreamExecutionSettings`](/appkit/docs/api/appkit/Interface.StreamExecutionSettings.md)
142
+ * **Execution interceptors**: Use `execute()` and `executeStream()` with [`StreamExecutionSettings`](./docs/api/appkit/Interface.StreamExecutionSettings.md)
143
143
 
144
144
  **Consuming your plugin programmatically**
145
145
 
@@ -158,4 +158,4 @@ AppKit.myPlugin.myCustomMethod();
158
158
 
159
159
  ```
160
160
 
161
- See the [`Plugin`](/appkit/docs/api/appkit/Class.Plugin.md) API reference for complete documentation.
161
+ See the [`Plugin`](./docs/api/appkit/Class.Plugin.md) API reference for complete documentation.
@@ -31,7 +31,7 @@ The Server plugin uses the deferred initialization phase to access routes from o
31
31
  The smallest valid AppKit server:
32
32
 
33
33
  ```ts
34
- // server/index.ts
34
+ // server/server.ts
35
35
  import { createApp, server } from "@databricks/appkit";
36
36
 
37
37
  await createApp({
@@ -2,7 +2,7 @@
2
2
 
3
3
  Plugins are modular extensions that add capabilities to your AppKit application. They follow a defined lifecycle and have access to shared services like caching, telemetry, and streaming.
4
4
 
5
- For complete API documentation, see the [`Plugin`](/appkit/docs/api/appkit/Class.Plugin.md) class reference.
5
+ For complete API documentation, see the [`Plugin`](./docs/api/appkit/Class.Plugin.md) class reference.
6
6
 
7
7
  ## Using plugins[​](#using-plugins "Direct link to Using plugins")
8
8
 
@@ -20,7 +20,7 @@ const AppKit = await createApp({
20
20
 
21
21
  ```
22
22
 
23
- For complete configuration options, see [`createApp`](/appkit/docs/api/appkit/Function.createApp.md).
23
+ For complete configuration options, see [`createApp`](./docs/api/appkit/Function.createApp.md).
24
24
 
25
25
  ## Plugin phases[​](#plugin-phases "Direct link to Plugin phases")
26
26
 
@@ -21,7 +21,38 @@ AppKit simplifies building data applications on Databricks by providing:
21
21
  * [Node.js](https://nodejs.org) v22+ environment with `npm`
22
22
  * Databricks CLI (v0.287.0 or higher): install and configure it according to the [official tutorial](https://docs.databricks.com/aws/en/dev-tools/cli/tutorial).
23
23
 
24
- ## Quick start[​](#quick-start "Direct link to Quick start")
24
+ ## Quick start options[​](#quick-start-options "Direct link to Quick start options")
25
+
26
+ There are two ways to get started with AppKit:
27
+
28
+ * **AI-assisted** (recommended): Use an AI coding assistant with Agent Skills to explore data, run CLI commands, and scaffold your app interactively.
29
+ * **Manual**: Use the Databricks CLI directly to create, bootstrap, and deploy your app.
30
+
31
+ Choose the path that best fits your workflow; both approaches produce the same kind of AppKit-based Databricks application.
32
+
33
+ ## AI-first quick start[​](#ai-first-quick-start "Direct link to AI-first quick start")
34
+
35
+ Databricks AppKit is designed to work with AI coding assistants through Agent Skills.
36
+
37
+ Install Agent Skills and configure it for use with your preferred AI assistant:
38
+
39
+ ```bash
40
+ databricks experimental aitools skills install
41
+
42
+ ```
43
+
44
+ Once configured for your development environment, you can use your AI assistant to create and deploy new Databricks applications, as well as to iteratively evolve your app's codebase.
45
+
46
+ Just prompt your AI assistant to create a new Databricks app, such as:
47
+
48
+ ```text
49
+ Create a new Databricks app that displays a dashboard of the nyc taxi trips dataset.
50
+
51
+ ```
52
+
53
+ To learn more about the Agent Skills, see the [AI-assisted development](./docs/development/ai-assisted-development.md) documentation.
54
+
55
+ ## Manual quick start[​](#manual-quick-start "Direct link to Manual quick start")
25
56
 
26
57
  Learn how to create and deploy a sample Databricks application that uses AppKit with the Databricks CLI.
27
58
 
@@ -44,7 +75,7 @@ The command will guide you through the process of:
44
75
  * (optionally) deploying the app to Databricks
45
76
  * (optionally) running the app in development mode
46
77
 
47
- Learn more about the various [development flows](/appkit/docs/development.md) available with AppKit.
78
+ Learn more about the various [development flows](./docs/development.md) available with AppKit.
48
79
 
49
80
  ### Deploy the app to Databricks[​](#deploy-the-app-to-databricks "Direct link to Deploy the app to Databricks")
50
81
 
@@ -59,6 +90,6 @@ This deploys the sample app to Databricks.
59
90
 
60
91
  ## Next steps[​](#next-steps "Direct link to Next steps")
61
92
 
62
- * **[App management](/appkit/docs/app-management.md)**: Manage your AppKit application throughout its lifecycle using the Databricks CLI
63
- * **[API reference](/appkit/docs/api/appkit.md)**: Explore the complete API documentation
64
- * **[Core concepts](/appkit/docs/core-principles.md)**: Learn about AppKit's design principles and architecture
93
+ * **[App management](./docs/app-management.md)**: Manage your AppKit application throughout its lifecycle using the Databricks CLI
94
+ * **[API reference](./docs/api/appkit.md)**: Explore the complete API documentation
95
+ * **[Core concepts](./docs/core-principles.md)**: Learn about AppKit's design principles and architecture