@maniclang/workbench 0.1.11

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 (644) hide show
  1. package/CONTRIBUTING.md +40 -0
  2. package/README.md +155 -0
  3. package/dist/client/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2 +0 -0
  4. package/dist/client/assets/KaTeX_AMS-Regular-DMm9YOAa.woff +0 -0
  5. package/dist/client/assets/KaTeX_AMS-Regular-DRggAlZN.ttf +0 -0
  6. package/dist/client/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf +0 -0
  7. package/dist/client/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff +0 -0
  8. package/dist/client/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2 +0 -0
  9. package/dist/client/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff +0 -0
  10. package/dist/client/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2 +0 -0
  11. package/dist/client/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf +0 -0
  12. package/dist/client/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf +0 -0
  13. package/dist/client/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff +0 -0
  14. package/dist/client/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2 +0 -0
  15. package/dist/client/assets/KaTeX_Fraktur-Regular-CB_wures.ttf +0 -0
  16. package/dist/client/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2 +0 -0
  17. package/dist/client/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff +0 -0
  18. package/dist/client/assets/KaTeX_Main-Bold-Cx986IdX.woff2 +0 -0
  19. package/dist/client/assets/KaTeX_Main-Bold-Jm3AIy58.woff +0 -0
  20. package/dist/client/assets/KaTeX_Main-Bold-waoOVXN0.ttf +0 -0
  21. package/dist/client/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2 +0 -0
  22. package/dist/client/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf +0 -0
  23. package/dist/client/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff +0 -0
  24. package/dist/client/assets/KaTeX_Main-Italic-3WenGoN9.ttf +0 -0
  25. package/dist/client/assets/KaTeX_Main-Italic-BMLOBm91.woff +0 -0
  26. package/dist/client/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2 +0 -0
  27. package/dist/client/assets/KaTeX_Main-Regular-B22Nviop.woff2 +0 -0
  28. package/dist/client/assets/KaTeX_Main-Regular-Dr94JaBh.woff +0 -0
  29. package/dist/client/assets/KaTeX_Main-Regular-ypZvNtVU.ttf +0 -0
  30. package/dist/client/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf +0 -0
  31. package/dist/client/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2 +0 -0
  32. package/dist/client/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff +0 -0
  33. package/dist/client/assets/KaTeX_Math-Italic-DA0__PXp.woff +0 -0
  34. package/dist/client/assets/KaTeX_Math-Italic-flOr_0UB.ttf +0 -0
  35. package/dist/client/assets/KaTeX_Math-Italic-t53AETM-.woff2 +0 -0
  36. package/dist/client/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf +0 -0
  37. package/dist/client/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2 +0 -0
  38. package/dist/client/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff +0 -0
  39. package/dist/client/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2 +0 -0
  40. package/dist/client/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff +0 -0
  41. package/dist/client/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf +0 -0
  42. package/dist/client/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf +0 -0
  43. package/dist/client/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff +0 -0
  44. package/dist/client/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2 +0 -0
  45. package/dist/client/assets/KaTeX_Script-Regular-C5JkGWo-.ttf +0 -0
  46. package/dist/client/assets/KaTeX_Script-Regular-D3wIWfF6.woff2 +0 -0
  47. package/dist/client/assets/KaTeX_Script-Regular-D5yQViql.woff +0 -0
  48. package/dist/client/assets/KaTeX_Size1-Regular-C195tn64.woff +0 -0
  49. package/dist/client/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf +0 -0
  50. package/dist/client/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2 +0 -0
  51. package/dist/client/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf +0 -0
  52. package/dist/client/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2 +0 -0
  53. package/dist/client/assets/KaTeX_Size2-Regular-oD1tc_U0.woff +0 -0
  54. package/dist/client/assets/KaTeX_Size3-Regular-CTq5MqoE.woff +0 -0
  55. package/dist/client/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf +0 -0
  56. package/dist/client/assets/KaTeX_Size4-Regular-BF-4gkZK.woff +0 -0
  57. package/dist/client/assets/KaTeX_Size4-Regular-DWFBv043.ttf +0 -0
  58. package/dist/client/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2 +0 -0
  59. package/dist/client/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff +0 -0
  60. package/dist/client/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2 +0 -0
  61. package/dist/client/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf +0 -0
  62. package/dist/client/assets/abap-CRCWOmpq.js +1 -0
  63. package/dist/client/assets/apex-DnsZk_dE.js +1 -0
  64. package/dist/client/assets/azcli-1IWB1ccx.js +1 -0
  65. package/dist/client/assets/bat-DPkNLes8.js +1 -0
  66. package/dist/client/assets/bicep-Corcdgou.js +2 -0
  67. package/dist/client/assets/cameligo-CGrWLZr3.js +1 -0
  68. package/dist/client/assets/clojure-D9WOWImG.js +1 -0
  69. package/dist/client/assets/codicon-CgENjH2v.ttf +0 -0
  70. package/dist/client/assets/coffee-B7EJu28W.js +1 -0
  71. package/dist/client/assets/cpp-SEyurbux.js +1 -0
  72. package/dist/client/assets/csharp-BoL64M5l.js +1 -0
  73. package/dist/client/assets/csp-C46ZqvIl.js +1 -0
  74. package/dist/client/assets/css-DQU6DXDx.js +3 -0
  75. package/dist/client/assets/cssMode-CtRONlr8.js +4 -0
  76. package/dist/client/assets/cypher-D84EuPTj.js +1 -0
  77. package/dist/client/assets/dart-D8lhlL1r.js +1 -0
  78. package/dist/client/assets/dockerfile-DLk6rpji.js +1 -0
  79. package/dist/client/assets/ecl-BO6FnfXk.js +1 -0
  80. package/dist/client/assets/editor.worker-CZyr7Ur9.js +26 -0
  81. package/dist/client/assets/elixir-BRjLKONM.js +1 -0
  82. package/dist/client/assets/flow9-Cac8vKd7.js +1 -0
  83. package/dist/client/assets/freemarker2-BTSNJUl8.js +3 -0
  84. package/dist/client/assets/fsharp-fd1GTHhf.js +1 -0
  85. package/dist/client/assets/go-O9LJTZXk.js +1 -0
  86. package/dist/client/assets/graphql-LQdxqEYJ.js +1 -0
  87. package/dist/client/assets/handlebars-qkUBjVg6.js +1 -0
  88. package/dist/client/assets/hcl-DxDQ3s82.js +1 -0
  89. package/dist/client/assets/html-pguqE00h.js +1 -0
  90. package/dist/client/assets/htmlMode-BCCLuk2F.js +4 -0
  91. package/dist/client/assets/index-BFrMLHHu.css +1 -0
  92. package/dist/client/assets/index-CdBC-xgi.js +1250 -0
  93. package/dist/client/assets/ini-BvajGCUy.js +1 -0
  94. package/dist/client/assets/java-SYsfObOQ.js +1 -0
  95. package/dist/client/assets/javascript-ciDUXdez.js +1 -0
  96. package/dist/client/assets/jsonMode-BmkXC0tI.js +10 -0
  97. package/dist/client/assets/julia-DQXNmw_w.js +1 -0
  98. package/dist/client/assets/kotlin-qQ0MG-9I.js +1 -0
  99. package/dist/client/assets/less-GGFNNJHn.js +2 -0
  100. package/dist/client/assets/lexon-Canl7DCW.js +1 -0
  101. package/dist/client/assets/liquid-CwE4UIwf.js +1 -0
  102. package/dist/client/assets/lua-D28Ae8-K.js +1 -0
  103. package/dist/client/assets/m3-DPitgjJI.js +1 -0
  104. package/dist/client/assets/markdown-B811l8j2.js +1 -0
  105. package/dist/client/assets/mdx-K_9Emnjy.js +1 -0
  106. package/dist/client/assets/mips-CdjsipkG.js +1 -0
  107. package/dist/client/assets/msdax-CYqgjx_P.js +1 -0
  108. package/dist/client/assets/mysql-BHd6q0vd.js +1 -0
  109. package/dist/client/assets/objective-c-B1aVtJYH.js +1 -0
  110. package/dist/client/assets/pascal-BhNW15KB.js +1 -0
  111. package/dist/client/assets/pascaligo-5jv8CcQD.js +1 -0
  112. package/dist/client/assets/perl-DlYyT36c.js +1 -0
  113. package/dist/client/assets/pgsql-Dy0bjov7.js +1 -0
  114. package/dist/client/assets/php-120yhfDK.js +1 -0
  115. package/dist/client/assets/pla-CjnFlu4u.js +1 -0
  116. package/dist/client/assets/postiats-CQpG440k.js +1 -0
  117. package/dist/client/assets/powerquery-DdJtto1Z.js +1 -0
  118. package/dist/client/assets/powershell-Bu_VLpJB.js +1 -0
  119. package/dist/client/assets/protobuf-IBS6jZEB.js +2 -0
  120. package/dist/client/assets/pug-kFxLfcjb.js +1 -0
  121. package/dist/client/assets/python-BzIc0EVe.js +1 -0
  122. package/dist/client/assets/qsharp-q7JyzKFN.js +1 -0
  123. package/dist/client/assets/r-BIFz-_sK.js +1 -0
  124. package/dist/client/assets/razor-lXZl6dtu.js +1 -0
  125. package/dist/client/assets/redis-CHOsPHWR.js +1 -0
  126. package/dist/client/assets/redshift-CBifECDb.js +1 -0
  127. package/dist/client/assets/restructuredtext-CghPJEOS.js +1 -0
  128. package/dist/client/assets/ruby-CYWGW-b1.js +1 -0
  129. package/dist/client/assets/rust-DMDD0SHb.js +1 -0
  130. package/dist/client/assets/sb-BYAiYHFx.js +1 -0
  131. package/dist/client/assets/scala-Bqvq8jcR.js +1 -0
  132. package/dist/client/assets/scheme-Dhb-2j9p.js +1 -0
  133. package/dist/client/assets/scss-CTwUZ5N7.js +3 -0
  134. package/dist/client/assets/shell-CsDZo4DB.js +1 -0
  135. package/dist/client/assets/solidity-CME5AdoB.js +1 -0
  136. package/dist/client/assets/sophia-RYC1BQQz.js +1 -0
  137. package/dist/client/assets/sparql-KEyrF7De.js +1 -0
  138. package/dist/client/assets/sql-BdTr02Mf.js +1 -0
  139. package/dist/client/assets/st-C7iG7M4S.js +1 -0
  140. package/dist/client/assets/swift-D7IUmUK8.js +1 -0
  141. package/dist/client/assets/systemverilog-DgMryOEJ.js +1 -0
  142. package/dist/client/assets/tcl-PloMZuKG.js +1 -0
  143. package/dist/client/assets/tsMode-BAXmgo_t.js +11 -0
  144. package/dist/client/assets/twig-BfRIq3la.js +1 -0
  145. package/dist/client/assets/typescript-Cdf8nS1n.js +1 -0
  146. package/dist/client/assets/typespec-CzxlYoT_.js +1 -0
  147. package/dist/client/assets/vb-BwAE3J76.js +1 -0
  148. package/dist/client/assets/wgsl-B_1kOXbF.js +298 -0
  149. package/dist/client/assets/xml-DGyPgYnj.js +1 -0
  150. package/dist/client/assets/yaml-Dqv3HtbL.js +1 -0
  151. package/dist/client/index.html +14 -0
  152. package/dist/client/manic-logo.png +0 -0
  153. package/dist/client/wasm/manic_lang.d.ts +74 -0
  154. package/dist/client/wasm/manic_lang.js +302 -0
  155. package/dist/client/wasm/manic_lang_bg.wasm +0 -0
  156. package/dist/client/wasm/manic_lang_bg.wasm.d.ts +13 -0
  157. package/dist/server/agentProtocol.d.ts +131 -0
  158. package/dist/server/agentProtocol.js +21 -0
  159. package/dist/server/agentProtocol.js.map +1 -0
  160. package/dist/server/agentRuns.d.ts +46 -0
  161. package/dist/server/agentRuns.js +138 -0
  162. package/dist/server/agentRuns.js.map +1 -0
  163. package/dist/server/agentThreads.d.ts +20 -0
  164. package/dist/server/agentThreads.js +205 -0
  165. package/dist/server/agentThreads.js.map +1 -0
  166. package/dist/server/aiSecrets.d.ts +21 -0
  167. package/dist/server/aiSecrets.js +68 -0
  168. package/dist/server/aiSecrets.js.map +1 -0
  169. package/dist/server/app.d.ts +34 -0
  170. package/dist/server/app.js +804 -0
  171. package/dist/server/app.js.map +1 -0
  172. package/dist/server/assets.d.ts +34 -0
  173. package/dist/server/assets.js +659 -0
  174. package/dist/server/assets.js.map +1 -0
  175. package/dist/server/candidateFix.d.ts +28 -0
  176. package/dist/server/candidateFix.js +111 -0
  177. package/dist/server/candidateFix.js.map +1 -0
  178. package/dist/server/cli.d.ts +2 -0
  179. package/dist/server/cli.js +118 -0
  180. package/dist/server/cli.js.map +1 -0
  181. package/dist/server/diagnostics.d.ts +13 -0
  182. package/dist/server/diagnostics.js +73 -0
  183. package/dist/server/diagnostics.js.map +1 -0
  184. package/dist/server/engineCheck.d.ts +7 -0
  185. package/dist/server/engineCheck.js +60 -0
  186. package/dist/server/engineCheck.js.map +1 -0
  187. package/dist/server/engineInstall.d.ts +34 -0
  188. package/dist/server/engineInstall.js +228 -0
  189. package/dist/server/engineInstall.js.map +1 -0
  190. package/dist/server/enginePaths.d.ts +3 -0
  191. package/dist/server/enginePaths.js +76 -0
  192. package/dist/server/enginePaths.js.map +1 -0
  193. package/dist/server/folderPicker.d.ts +1 -0
  194. package/dist/server/folderPicker.js +54 -0
  195. package/dist/server/folderPicker.js.map +1 -0
  196. package/dist/server/manicAgent.d.ts +75 -0
  197. package/dist/server/manicAgent.js +476 -0
  198. package/dist/server/manicAgent.js.map +1 -0
  199. package/dist/server/manicEnv.d.ts +18 -0
  200. package/dist/server/manicEnv.js +64 -0
  201. package/dist/server/manicEnv.js.map +1 -0
  202. package/dist/server/promptStore.d.ts +11 -0
  203. package/dist/server/promptStore.js +85 -0
  204. package/dist/server/promptStore.js.map +1 -0
  205. package/dist/server/renderJobs.d.ts +54 -0
  206. package/dist/server/renderJobs.js +290 -0
  207. package/dist/server/renderJobs.js.map +1 -0
  208. package/dist/server/settings.d.ts +40 -0
  209. package/dist/server/settings.js +262 -0
  210. package/dist/server/settings.js.map +1 -0
  211. package/dist/server/smartDraw.d.ts +7 -0
  212. package/dist/server/smartDraw.js +88 -0
  213. package/dist/server/smartDraw.js.map +1 -0
  214. package/dist/server/workspace.d.ts +27 -0
  215. package/dist/server/workspace.js +172 -0
  216. package/dist/server/workspace.js.map +1 -0
  217. package/examples/.manic-output/40b6f3b9-7638-4c0e-bb4f-570d45d1b225/job.json +26 -0
  218. package/examples/.manic-output/993f3788-f75e-445c-ba45-c401907b3c02/job.json +26 -0
  219. package/examples/.manic-output/993f3788-f75e-445c-ba45-c401907b3c02/markers.json +13 -0
  220. package/examples/.manic-output/993f3788-f75e-445c-ba45-c401907b3c02/out.mp4 +0 -0
  221. package/examples/.manic-workbench-threads/thread_3ce7448a13f64f9e887d1bc8106a97a8.json +45 -0
  222. package/examples/.manic-workbench-threads/thread_d494cda29249477591056234719e4a3a.json +21 -0
  223. package/examples/.manic-workbench-threads/thread_e98ebdc225184ea5b8ddda8b44541f63.json +29 -0
  224. package/examples/README.md +35 -0
  225. package/examples/a-story-1.manic +222 -0
  226. package/examples/a-story.manic +100 -0
  227. package/examples/achromat-cinematic.manic +105 -0
  228. package/examples/achromat.manic +32 -0
  229. package/examples/aes-decrypt.manic +359 -0
  230. package/examples/aes-encrypt.manic +359 -0
  231. package/examples/aes-round.manic +70 -0
  232. package/examples/aes-story.manic +622 -0
  233. package/examples/ai-story.manic +118 -0
  234. package/examples/analysis.manic +53 -0
  235. package/examples/archimedes_pi.manic +89 -0
  236. package/examples/area_under_curve.manic +131 -0
  237. package/examples/art-rakkan.manic +69 -0
  238. package/examples/aspheric-lens.manic +32 -0
  239. package/examples/astronomical-watch.manic +96 -0
  240. package/examples/asymptote-randomwalk3-reference.manic +58 -0
  241. package/examples/asymptote-tiling-reference.manic +65 -0
  242. package/examples/aws-clustered-web-services.manic +186 -0
  243. package/examples/aws-event-processing-clusters-poc.manic +97 -0
  244. package/examples/aws-three-tier-web-application.manic +134 -0
  245. package/examples/band.manic +43 -0
  246. package/examples/banner.manic +37 -0
  247. package/examples/bayes.manic +27 -0
  248. package/examples/bellcurve.manic +41 -0
  249. package/examples/bfs_dfs.manic +35 -0
  250. package/examples/block-tackle.manic +26 -0
  251. package/examples/bloom-scope.manic +172 -0
  252. package/examples/boolean.manic +46 -0
  253. package/examples/boxplot-wave.manic +93 -0
  254. package/examples/boxplot.manic +43 -0
  255. package/examples/brace.manic +46 -0
  256. package/examples/brachistochrone-annotated.manic +51 -0
  257. package/examples/brachistochrone.manic +27 -0
  258. package/examples/bubble_sort.manic +41 -0
  259. package/examples/bullet-block-annotated.manic +48 -0
  260. package/examples/bullet-block.manic +11 -0
  261. package/examples/bullet-impact.manic +65 -0
  262. package/examples/bungee.manic +9 -0
  263. package/examples/c4-internet-banking-components.manic +33 -0
  264. package/examples/c4-internet-banking-containers.manic +29 -0
  265. package/examples/c4-internet-banking.manic +26 -0
  266. package/examples/c4-story.manic +171 -0
  267. package/examples/c4-test.manic +52 -0
  268. package/examples/c4-zoom.manic +69 -0
  269. package/examples/calculus-demo.manic +129 -0
  270. package/examples/calculus-one.manic +288 -0
  271. package/examples/captions.manic +31 -0
  272. package/examples/car-suspension-annotated.manic +57 -0
  273. package/examples/car-suspension.manic +8 -0
  274. package/examples/cart-pendulum.manic +11 -0
  275. package/examples/charts-bar-line.manic +26 -0
  276. package/examples/charts-column-race.manic +19 -0
  277. package/examples/charts-gdp-race.manic +43 -0
  278. package/examples/charts-german-elections.manic +28 -0
  279. package/examples/charts-line-race.manic +21 -0
  280. package/examples/circle-in-three.manic +156 -0
  281. package/examples/circle-thirds-no-triangle.manic +161 -0
  282. package/examples/clip-window.manic +34 -0
  283. package/examples/cloud-feathers.manic +50 -0
  284. package/examples/cloud-jellyfish-v2.manic +87 -0
  285. package/examples/cloud-jellyfish.manic +48 -0
  286. package/examples/cloud-kaleidoscope.manic +48 -0
  287. package/examples/cloud-koi.manic +51 -0
  288. package/examples/cloud-lissajous.manic +23 -0
  289. package/examples/cloud-medusae.manic +46 -0
  290. package/examples/cloud-phoenix.manic +49 -0
  291. package/examples/cloud-plumes.manic +47 -0
  292. package/examples/cloud-pottery.manic +104 -0
  293. package/examples/cloud-shells.manic +50 -0
  294. package/examples/cloud-starfield.manic +23 -0
  295. package/examples/cloud-wave-lattice.manic +23 -0
  296. package/examples/cloud-word.manic +31 -0
  297. package/examples/cloud3-ripple.manic +53 -0
  298. package/examples/cloud3-sphere.manic +26 -0
  299. package/examples/clt.manic +35 -0
  300. package/examples/collide-blocks-annotated.manic +45 -0
  301. package/examples/collide-blocks.manic +11 -0
  302. package/examples/compare-pendulum.manic +11 -0
  303. package/examples/complex-flowchart.manic +196 -0
  304. package/examples/compound-pulley.manic +25 -0
  305. package/examples/conics.manic +46 -0
  306. package/examples/coordinates.manic +52 -0
  307. package/examples/correlation.manic +35 -0
  308. package/examples/covariance.manic +30 -0
  309. package/examples/creator-affine-fern-growth.manic +72 -0
  310. package/examples/creator-bowl-to-saddle.manic +86 -0
  311. package/examples/creator-branch-counting-tree3.manic +77 -0
  312. package/examples/creator-chaos-game-fern.manic +72 -0
  313. package/examples/creator-circle-inversion-chain.manic +61 -0
  314. package/examples/creator-convex-hull-depth.manic +59 -0
  315. package/examples/creator-coordinate-worlds.manic +182 -0
  316. package/examples/creator-ellipse-reflection-property.manic +59 -0
  317. package/examples/creator-free-kicks.manic +261 -0
  318. package/examples/creator-geometry-language-showcase.manic +259 -0
  319. package/examples/creator-geometry-morph-promo.manic +151 -0
  320. package/examples/creator-heightmap-world.manic +130 -0
  321. package/examples/creator-hilbert3-spatial-index.manic +203 -0
  322. package/examples/creator-how-rocket-launch-works.manic +192 -0
  323. package/examples/creator-implicit-surface-parameterized.manic +51 -0
  324. package/examples/creator-incenter-dissection.manic +56 -0
  325. package/examples/creator-lattice-paths.manic +118 -0
  326. package/examples/creator-line-inversion.manic +49 -0
  327. package/examples/creator-lsystem-fractal-curve.manic +121 -0
  328. package/examples/creator-mandelbrot-escape-test.manic +58 -0
  329. package/examples/creator-monty-hall.manic +104 -0
  330. package/examples/creator-noise-story.manic +123 -0
  331. package/examples/creator-one-tile-pattern-story.manic +169 -0
  332. package/examples/creator-pathfinding.manic +82 -0
  333. package/examples/creator-point-to-plane-distance.manic +167 -0
  334. package/examples/creator-race-quiz.manic +76 -0
  335. package/examples/creator-randomwalk3-diffusion.manic +72 -0
  336. package/examples/creator-reflected-ellipse.manic +48 -0
  337. package/examples/creator-rule90-sierpinski.manic +64 -0
  338. package/examples/creator-three-shadows-of-a-curve.manic +48 -0
  339. package/examples/creator-trigonometry-one-angle.manic +307 -0
  340. package/examples/creator-v2-latex-algebra.manic +29 -0
  341. package/examples/creator-v2-latex-calculus.manic +37 -0
  342. package/examples/creator-v2-latex-physics.manic +29 -0
  343. package/examples/creator-v2-olympiad-geometry.manic +92 -0
  344. package/examples/creator-v2-options-socials.manic +21 -0
  345. package/examples/creator-v2-timers.manic +25 -0
  346. package/examples/creator-v2-timing-square.manic +25 -0
  347. package/examples/creator-v2-timing.manic +34 -0
  348. package/examples/creator-v2.manic +36 -0
  349. package/examples/creator-why-rockets-use-stages.manic +198 -0
  350. package/examples/creator-wrap-real-line.manic +51 -0
  351. package/examples/cubic-graphs.manic +432 -0
  352. package/examples/curve-features.manic +41 -0
  353. package/examples/definedmotion-fourier-gallery.manic +171 -0
  354. package/examples/derivative-of-ln-x.manic +194 -0
  355. package/examples/diagonalise.manic +56 -0
  356. package/examples/dijkstra.manic +29 -0
  357. package/examples/dimensions-unfold.manic +211 -0
  358. package/examples/disc-integration.manic +172 -0
  359. package/examples/double-incline.manic +9 -0
  360. package/examples/double-integral3.manic +43 -0
  361. package/examples/double-pendulum.manic +35 -0
  362. package/examples/double-spring.manic +9 -0
  363. package/examples/drop-mass.manic +25 -0
  364. package/examples/eigen3.manic +34 -0
  365. package/examples/equal_cuts.manic +44 -0
  366. package/examples/equation.manic +16 -0
  367. package/examples/equilateral.manic +57 -0
  368. package/examples/euler_line.manic +51 -0
  369. package/examples/exponential-shells.manic +188 -0
  370. package/examples/extrude3.manic +37 -0
  371. package/examples/factorial-flowchart.manic +69 -0
  372. package/examples/fibonacci-sphere.manic +57 -0
  373. package/examples/flow-lorenz.manic +47 -0
  374. package/examples/fourier-series-live-wave.manic +114 -0
  375. package/examples/fourier-square-wave-live.manic +114 -0
  376. package/examples/fractal_tree.manic +39 -0
  377. package/examples/frame3-grid-policies.manic +48 -0
  378. package/examples/ftc.manic +54 -0
  379. package/examples/function_graph.manic +54 -0
  380. package/examples/galton-board-process.manic +150 -0
  381. package/examples/gcp-clustered-web-services.manic +186 -0
  382. package/examples/gcp-message-collecting.manic +139 -0
  383. package/examples/geo-pythagoras-short.manic +119 -0
  384. package/examples/glsl-boxgrid.manic +105 -0
  385. package/examples/glsl-parameter.manic +30 -0
  386. package/examples/glsl-raymarch.manic +59 -0
  387. package/examples/glsl-shapes.manic +122 -0
  388. package/examples/gradient-descent-field.manic +116 -0
  389. package/examples/gradient-fastest-descent-shorts.manic +153 -0
  390. package/examples/gradient-fastest-descent.manic +125 -0
  391. package/examples/gradient-pendulum-shorts.manic +117 -0
  392. package/examples/gradient.manic +74 -0
  393. package/examples/graph.manic +45 -0
  394. package/examples/graph_moving.manic +67 -0
  395. package/examples/grid-astar.manic +15 -0
  396. package/examples/grid-life-soup.manic +31 -0
  397. package/examples/grid-life-zoo.manic +46 -0
  398. package/examples/grid-life.manic +19 -0
  399. package/examples/grid-wfc.manic +13 -0
  400. package/examples/growing-fractal-tree3.manic +58 -0
  401. package/examples/gun-shot.manic +82 -0
  402. package/examples/hashmap.manic +38 -0
  403. package/examples/heightmap3-world.manic +64 -0
  404. package/examples/heightmap3.manic +23 -0
  405. package/examples/hilbert-curve3-space-filling.manic +117 -0
  406. package/examples/hill_run.manic +71 -0
  407. package/examples/histogram.manic +43 -0
  408. package/examples/hotdog-taco.manic +147 -0
  409. package/examples/hue_wave.manic +35 -0
  410. package/examples/hypothesis.manic +32 -0
  411. package/examples/image.manic +29 -0
  412. package/examples/incircle_tangents.manic +64 -0
  413. package/examples/incline-bumper.manic +11 -0
  414. package/examples/incline-pulley.manic +11 -0
  415. package/examples/incline-showcase.manic +55 -0
  416. package/examples/inline-math.manic +16 -0
  417. package/examples/inscribed-angle-short.manic +56 -0
  418. package/examples/integral-sqrt-tanx.manic +255 -0
  419. package/examples/integrals.manic +274 -0
  420. package/examples/inverse-derivatives.manic +94 -0
  421. package/examples/k8s-cluster-components.manic +82 -0
  422. package/examples/k8s-stateful-architecture.manic +134 -0
  423. package/examples/k8s-three-tier.manic +146 -0
  424. package/examples/kapitza.manic +11 -0
  425. package/examples/latex-disintegration.manic +123 -0
  426. package/examples/lens-paper.manic +36 -0
  427. package/examples/lens-prescription.manic +33 -0
  428. package/examples/lens-system.manic +34 -0
  429. package/examples/lens.manic +31 -0
  430. package/examples/limit-infinity.manic +30 -0
  431. package/examples/limit.manic +33 -0
  432. package/examples/linear-algebra-3d.manic +50 -0
  433. package/examples/linear-algebra.manic +115 -0
  434. package/examples/linear-map.manic +39 -0
  435. package/examples/linear-map3.manic +33 -0
  436. package/examples/linear-system.manic +99 -0
  437. package/examples/linear_transform.manic +43 -0
  438. package/examples/linked_list.manic +38 -0
  439. package/examples/lln.manic +31 -0
  440. package/examples/loop-cinematic.manic +41 -0
  441. package/examples/loop-track.manic +11 -0
  442. package/examples/lorenz-attractor.manic +55 -0
  443. package/examples/lorenz-shells.manic +43 -0
  444. package/examples/lost-in-patterns.manic +149 -0
  445. package/examples/lsystem-asymptote-curves.manic +81 -0
  446. package/examples/manic-ml-activation-focus.manic +133 -0
  447. package/examples/manic-ml-cnn-edge-story.manic +102 -0
  448. package/examples/manic-ml-forward-pass.manic +93 -0
  449. package/examples/manic-ml-learning-step.manic +116 -0
  450. package/examples/manic-ml-logits-sampling.manic +112 -0
  451. package/examples/manic-ml-scalar-to-tensor.manic +143 -0
  452. package/examples/manic-ml-token-embedding.manic +110 -0
  453. package/examples/manic-ml-transformer-attention.manic +102 -0
  454. package/examples/manic-ml-transformer-block.manic +116 -0
  455. package/examples/manic-promo.manic +64 -0
  456. package/examples/map-attractor.manic +45 -0
  457. package/examples/mask-lens.manic +33 -0
  458. package/examples/matrix.manic +37 -0
  459. package/examples/matrix3.manic +101 -0
  460. package/examples/matrix_addition.manic +66 -0
  461. package/examples/matrix_addition_plane.manic +91 -0
  462. package/examples/maxwell-boltzmann-effusion-v2.manic +142 -0
  463. package/examples/maxwell-boltzmann-process.manic +86 -0
  464. package/examples/microservices-platform.manic +140 -0
  465. package/examples/molecule.manic +8 -0
  466. package/examples/morph-icons.manic +29 -0
  467. package/examples/morph.manic +29 -0
  468. package/examples/morph3.manic +49 -0
  469. package/examples/motion-flow-foundation.manic +148 -0
  470. package/examples/motion-graphics-v2-story.manic +189 -0
  471. package/examples/motion-graphics-v2.manic +81 -0
  472. package/examples/motion-graphics.manic +81 -0
  473. package/examples/multivariable3.manic +26 -0
  474. package/examples/mystory.manic +9 -0
  475. package/examples/newton.manic +39 -0
  476. package/examples/newtons-cradle.manic +10 -0
  477. package/examples/nine_point.manic +59 -0
  478. package/examples/noise-terrain.manic +16 -0
  479. package/examples/off-axis.manic +32 -0
  480. package/examples/onprem-advanced-web-service-v2.manic +196 -0
  481. package/examples/onprem-advanced-web-service.manic +175 -0
  482. package/examples/orthocenter.manic +63 -0
  483. package/examples/param3.manic +43 -0
  484. package/examples/parameter-journeys.manic +154 -0
  485. package/examples/parameterized-field-advection.manic +57 -0
  486. package/examples/parameterized-generated-families3.manic +83 -0
  487. package/examples/particles-flow.manic +61 -0
  488. package/examples/pascal-triangle.manic +92 -0
  489. package/examples/pendulum-annotated.manic +72 -0
  490. package/examples/pendulum-damped.manic +35 -0
  491. package/examples/pendulum.manic +38 -0
  492. package/examples/perfect-reel.manic +43 -0
  493. package/examples/pie.manic +41 -0
  494. package/examples/pieday.manic +113 -0
  495. package/examples/piston.manic +7 -0
  496. package/examples/popkorn-field.manic +38 -0
  497. package/examples/prism-cinematic.manic +36 -0
  498. package/examples/prism.manic +32 -0
  499. package/examples/probability.manic +57 -0
  500. package/examples/process-branching-dispatch.manic +71 -0
  501. package/examples/process-stream-observe.manic +54 -0
  502. package/examples/projection.manic +57 -0
  503. package/examples/prompt-test-10.manic +257 -0
  504. package/examples/prompt-test-11.manic +168 -0
  505. package/examples/prompt-test-12.manic +177 -0
  506. package/examples/prompt-test-13.manic +228 -0
  507. package/examples/prompt-test-14.manic +319 -0
  508. package/examples/prompt-test-15.manic +325 -0
  509. package/examples/prompt-test-16.manic +252 -0
  510. package/examples/prompt-test-2.manic +239 -0
  511. package/examples/prompt-test-3.manic +336 -0
  512. package/examples/prompt-test-4.manic +195 -0
  513. package/examples/prompt-test-5.manic +223 -0
  514. package/examples/prompt-test-6.manic +222 -0
  515. package/examples/prompt-test-7.manic +156 -0
  516. package/examples/prompt-test-8.manic +266 -0
  517. package/examples/prompt-test-9.manic +171 -0
  518. package/examples/prompt-test.manic +158 -0
  519. package/examples/pulley-annotated.manic +54 -0
  520. package/examples/pulley-paper.manic +52 -0
  521. package/examples/pulley-scale.manic +23 -0
  522. package/examples/pulley.manic +24 -0
  523. package/examples/quadratic-formula-continuity.manic +110 -0
  524. package/examples/quiz-euler.manic +52 -0
  525. package/examples/quiz-geometry-2.manic +107 -0
  526. package/examples/quiz-geometry.manic +108 -0
  527. package/examples/quiz-skins.manic +22 -0
  528. package/examples/raft-cm.manic +24 -0
  529. package/examples/ramp.manic +25 -0
  530. package/examples/ray-fan.manic +27 -0
  531. package/examples/raymarch-alpha.manic +39 -0
  532. package/examples/raymarch-boxgrid.manic +47 -0
  533. package/examples/raymarch-docker-latency.manic +74 -0
  534. package/examples/raymarch-metaballs.manic +37 -0
  535. package/examples/raymarch-sculpture.manic +39 -0
  536. package/examples/raymarch-shapes3.manic +31 -0
  537. package/examples/reactive-integral.manic +172 -0
  538. package/examples/reactive-math-journey.manic +185 -0
  539. package/examples/reactive-math-notation.manic +150 -0
  540. package/examples/reactive-multiformat.manic +130 -0
  541. package/examples/reactive-world.manic +111 -0
  542. package/examples/refraction-paper.manic +40 -0
  543. package/examples/refraction.manic +32 -0
  544. package/examples/resonance.manic +10 -0
  545. package/examples/rewrite-exponential-cubic.manic +141 -0
  546. package/examples/rewrite-integration.manic +199 -0
  547. package/examples/riemann_rainbow.manic +61 -0
  548. package/examples/riemann_readout.manic +61 -0
  549. package/examples/robot-arm.manic +25 -0
  550. package/examples/rref.manic +48 -0
  551. package/examples/second-law-thermodynamics.manic +385 -0
  552. package/examples/series-parallel-springs.manic +8 -0
  553. package/examples/serverless-processing.manic +145 -0
  554. package/examples/shader-cellular.manic +35 -0
  555. package/examples/shader-fractal.manic +45 -0
  556. package/examples/shader-fx.manic +34 -0
  557. package/examples/shader-glitch-grid.manic +55 -0
  558. package/examples/shader-parameter.manic +25 -0
  559. package/examples/shader-patterns.manic +37 -0
  560. package/examples/shader-plasma.manic +43 -0
  561. package/examples/shader-shapes-dsl.manic +46 -0
  562. package/examples/shader-shapes.manic +37 -0
  563. package/examples/shader-warp.manic +22 -0
  564. package/examples/shapes-howto.manic +411 -0
  565. package/examples/sine_wave.manic +42 -0
  566. package/examples/skew.manic +40 -0
  567. package/examples/smoke.rs +57 -0
  568. package/examples/solids3.manic +22 -0
  569. package/examples/some-story.manic +299 -0
  570. package/examples/spinning-cylinder-flow.manic +87 -0
  571. package/examples/spline.manic +21 -0
  572. package/examples/spot-diagram.manic +32 -0
  573. package/examples/spring-annotated.manic +60 -0
  574. package/examples/spring-chain.manic +11 -0
  575. package/examples/spring-damped.manic +33 -0
  576. package/examples/spring-incline.manic +10 -0
  577. package/examples/spring-paper.manic +46 -0
  578. package/examples/spring-pendulum.manic +14 -0
  579. package/examples/spring.manic +33 -0
  580. package/examples/sqrt-tanx.manic +217 -0
  581. package/examples/ssl-handshake-sdf.manic +116 -0
  582. package/examples/stack_queue.manic +53 -0
  583. package/examples/statistics.manic +60 -0
  584. package/examples/story-addressable-asset-cues.manic +71 -0
  585. package/examples/story-dependent-chain-history.manic +56 -0
  586. package/examples/story-living-dependency-cloud.manic +50 -0
  587. package/examples/story-time-varying-field3.manic +57 -0
  588. package/examples/story.manic +4 -0
  589. package/examples/string-art-breath.manic +70 -0
  590. package/examples/string-wave.manic +10 -0
  591. package/examples/summary.manic +48 -0
  592. package/examples/svg-howto.manic +172 -0
  593. package/examples/svg-import.manic +18 -0
  594. package/examples/systems-architecture-poc.manic +92 -0
  595. package/examples/systems-arrow-patterns.manic +151 -0
  596. package/examples/systems-foundation.manic +71 -0
  597. package/examples/systems-rabbitmq-consumers.manic +118 -0
  598. package/examples/table.manic +39 -0
  599. package/examples/table_braces.manic +54 -0
  600. package/examples/tangent-length-short.manic +57 -0
  601. package/examples/tangent.manic +29 -0
  602. package/examples/tangents.manic +54 -0
  603. package/examples/taylor.manic +44 -0
  604. package/examples/terminal_boot.manic +40 -0
  605. package/examples/test.manic +61 -0
  606. package/examples/text-guide.manic +304 -0
  607. package/examples/textbook-coordinate-worlds.manic +129 -0
  608. package/examples/textbook-doubly-list.manic +33 -0
  609. package/examples/textbook-function-to-solid.manic +126 -0
  610. package/examples/textbook-geometry-dimension-reduction.manic +129 -0
  611. package/examples/textbook-incline-fbd.manic +43 -0
  612. package/examples/textbook-length-area-volume.manic +137 -0
  613. package/examples/textbook-matrix-inverses.manic +172 -0
  614. package/examples/textbook-pulley.manic +35 -0
  615. package/examples/textbook-statistical-dimensions.manic +151 -0
  616. package/examples/textbook-tension.manic +39 -0
  617. package/examples/textbook-watermelon-sections.manic +216 -0
  618. package/examples/thales-semicircle-short.manic +53 -0
  619. package/examples/three-d-v2-lab.manic +83 -0
  620. package/examples/three-d-v2-story.manic +106 -0
  621. package/examples/three-d-v2.manic +69 -0
  622. package/examples/three_d.manic +39 -0
  623. package/examples/timing-v2-scene.manic +47 -0
  624. package/examples/trajectory.manic +28 -0
  625. package/examples/transform_copy.manic +35 -0
  626. package/examples/transforms.manic +54 -0
  627. package/examples/trapped-light-dimensions.manic +226 -0
  628. package/examples/tree-of-leaves.manic +215 -0
  629. package/examples/triangle.manic +68 -0
  630. package/examples/two_person_walk.manic +296 -0
  631. package/examples/two_pointer.manic +32 -0
  632. package/examples/type-to-sdf.manic +139 -0
  633. package/examples/typewriter.manic +28 -0
  634. package/examples/vector_field.manic +32 -0
  635. package/examples/vertical-spring.manic +10 -0
  636. package/examples/volume3.manic +21 -0
  637. package/examples/volumes-solid-of-revolution.manic +111 -0
  638. package/examples/walk.manic +154 -0
  639. package/examples/wheel-duo.manic +91 -0
  640. package/examples/wheel-radial.manic +78 -0
  641. package/examples/wheel-square.manic +83 -0
  642. package/examples/wireframe-spheres.manic +37 -0
  643. package/examples/zeroth-law-thermodynamics.manic +269 -0
  644. package/package.json +59 -0
@@ -0,0 +1,56 @@
1
+ title("How Rotations Become a Drawing");
2
+ canvas("9:16");
3
+ template("blank");
4
+
5
+ watermark(mark, (w*0.16, h*0.055), "Made With Manic");
6
+ text(kicker, (cx, h*0.085), "ENGINE FOUNDATION · DEPENDENT CHAINS");
7
+ text(headline, (cx, h*0.13), "A drawing can hide inside rotating links");
8
+ text(caption, (cx, h*0.83), "Each endpoint begins where the previous endpoint finishes.");
9
+ size(kicker,20); color(kicker,dim); bold(kicker); hidden(kicker);
10
+ size(headline,34); bold(headline); wrap(headline,w*0.84); hidden(headline);
11
+ size(caption,22); color(caption,dim); wrap(caption,w*0.80); hidden(caption);
12
+
13
+ camera3((0,-18,13),(0,0,0),46);
14
+ collection3(harmonics,(0,0,0),7,(0,0,0),7,0.10);
15
+ links3(arms,harmonics,chain);
16
+ trail3(memory,harmonics,6,0.035);
17
+ child3(tip,harmonics,6,0.14);
18
+ color(harmonics,cyan);
19
+ color(arms,magenta);
20
+ color(memory,gold);
21
+ color(tip,gold);
22
+ hidden(harmonics); hidden(arms); hidden(memory); hidden(tip);
23
+
24
+ step("question") {
25
+ show(kicker,0.35);
26
+ show(headline,0.45);
27
+ show(caption,0.40);
28
+ }
29
+ wait(0.35);
30
+
31
+ step("build-the-chain") {
32
+ par {
33
+ show(harmonics,0.55);
34
+ show(arms,0.65);
35
+ show(memory,0.45);
36
+ show(tip,0.45);
37
+ cue(tick);
38
+ say(caption,"Seven stable links share one generated dependency chain.",0.40);
39
+ }
40
+ }
41
+ wait(0.30);
42
+
43
+ step("remember-the-tip") {
44
+ par {
45
+ chain3(harmonics,"2.2 1.1 0.72 0.52 0.40 0.32 0.26","1 -3 5 -7 9 -11 13",8.0);
46
+ say(caption,"Only the moving tip writes history; the rest remain a readable mechanism.",0.45);
47
+ }
48
+ }
49
+ wait(0.45);
50
+
51
+ step("takeaway") {
52
+ cue(chime);
53
+ pulse(tip,0.7);
54
+ say(caption,"The same foundation serves epicycles, linkages, robot arms, and live derived plots.",0.45);
55
+ }
56
+ wait(1.2);
@@ -0,0 +1,50 @@
1
+ title("The Dependency Cloud That Refuses to Freeze");
2
+ canvas("9:16");
3
+ template("paper");
4
+
5
+ watermark(mark, (w*0.16, h*0.055), "Made With Manic");
6
+ text(kicker, (cx, h*0.085), "ENGINE FOUNDATION · BATCHED RELATIONSHIPS");
7
+ text(headline, (cx, h*0.13), "Can 180 dependencies move as one idea?");
8
+ text(caption, (cx, h*0.82), "One collection. Stable children. Every relationship stays truthful.");
9
+ size(kicker, 20); color(kicker, dim); bold(kicker); hidden(kicker);
10
+ size(headline, 34); bold(headline); wrap(headline, w*0.82); hidden(headline);
11
+ size(caption, 22); color(caption, dim); wrap(caption, w*0.78); hidden(caption);
12
+
13
+ camera3((14,-20,13),(0,0,0),46);
14
+ collection3(services,(0,0,0),180,(4.2,2.6,2.2),41,0.055);
15
+ links3(dependencies,services,nearest,2);
16
+ color(services,cyan);
17
+ color(dependencies,dim);
18
+ hidden(services);
19
+ hidden(dependencies);
20
+
21
+ step("the-problem") {
22
+ show(kicker,0.35);
23
+ show(headline,0.45);
24
+ show(caption,0.40);
25
+ }
26
+ wait(0.45);
27
+
28
+ step("the-system-awakens") {
29
+ par {
30
+ show(services,0.65);
31
+ show(dependencies,0.85);
32
+ say(caption,"The engine batches the repeated geometry but preserves every indexed identity.",0.45);
33
+ }
34
+ }
35
+ wait(0.35);
36
+
37
+ step("relationships-remain-live") {
38
+ par {
39
+ drift3(services,6.0,0.42);
40
+ orbit3(35,24,28.0,6.0,smooth);
41
+ say(caption,"As the nodes drift, the nearest-neighbour graph is derived again from the same state.",0.45);
42
+ }
43
+ }
44
+ wait(0.45);
45
+
46
+ step("takeaway") {
47
+ pulse(services,0.7);
48
+ say(caption,"Large dependency scenes become one creator intention—not hundreds of scripts.",0.45);
49
+ }
50
+ wait(1.2);
@@ -0,0 +1,57 @@
1
+ title("The Current Changes While We Travel");
2
+ canvas("9:16");
3
+ template("blank");
4
+
5
+ watermark(mark, (w*0.16, h*0.055), "Made With Manic");
6
+ text(kicker, (cx, h*0.085), "ENGINE FOUNDATION · LIVE 3D FIELDS");
7
+ text(headline, (cx, h*0.13), "What if the current changes mid-flight?");
8
+ text(caption, (cx, h*0.83), "The arrows and particles sample the same field at the same story time.");
9
+ size(kicker,20); color(kicker,dim); bold(kicker); hidden(kicker);
10
+ size(headline,34); bold(headline); wrap(headline,w*0.84); hidden(headline);
11
+ size(caption,22); color(caption,dim); wrap(caption,w*0.80); hidden(caption);
12
+
13
+ camera3((16,-20,14),(0,0,0),46);
14
+ vectorfield3(current,(0,0,0),(4.2,3.2,2.6),"-y + 0.7*sin(p*tau)","x + 0.35*cos(p*tau)","0.45*sin(z+p*tau)",6);
15
+ collection3(tracers,(0,0,0),90,(2.5,1.8,1.5),73,0.065);
16
+ child3(hero,tracers,0,0.14);
17
+ trail3(route,tracers,0,0.032);
18
+ color(current,dim);
19
+ color(tracers,cyan);
20
+ color(hero,gold);
21
+ color(route,gold);
22
+ hidden(current); hidden(tracers); hidden(hero); hidden(route);
23
+
24
+ step("question") {
25
+ show(kicker,0.35);
26
+ show(headline,0.45);
27
+ show(caption,0.40);
28
+ }
29
+ wait(0.35);
30
+
31
+ step("reveal-the-current") {
32
+ par {
33
+ show(current,0.70);
34
+ show(tracers,0.55);
35
+ show(hero,0.45);
36
+ show(route,0.45);
37
+ say(caption,"A bounded formula declares x, y, z and normalized time p.",0.40);
38
+ }
39
+ }
40
+ wait(0.30);
41
+
42
+ step("flow-and-follow") {
43
+ followshot3(hero,(0,0,0.15));
44
+ par {
45
+ advect3(tracers,current,7.0,1.15);
46
+ orbit3(55,26,29.0,7.0,smooth);
47
+ say(caption,"Deterministic RK4 moves every tracer while the camera follows one stable child.",0.45);
48
+ }
49
+ followshot3(none);
50
+ }
51
+ wait(0.45);
52
+
53
+ step("takeaway") {
54
+ cue(chime);
55
+ say(caption,"Field, motion, trail, and shot now tell one synchronized truth.",0.45);
56
+ }
57
+ wait(1.2);
@@ -0,0 +1,4 @@
1
+ title("story");
2
+ canvas("16:9");
3
+
4
+ // Build your story here.
@@ -0,0 +1,70 @@
1
+ // string-art-breath — a breathing string-art caustic (the "eye"), with an arc.
2
+ //
3
+ // 190 straight chords join point i to point 2i; their envelope is a cardioid
4
+ // caustic — an "eye" — and `link` keeps each string on its two anchors. Winding an
5
+ // anchor by an amount proportional to its index (a differential turn, not a rigid
6
+ // spin) grows and shrinks the caustic. The show: the eye BLOOMS from nothing,
7
+ // BREATHES with a quickening tempo up to a CLIMAX (flushing crimson), settles, then
8
+ // DISSOLVES back to nothing — every string dead straight the whole time.
9
+ //
10
+ // manic examples/string-art-breath.manic
11
+ canvas(1000, 1000);
12
+ template("paper");
13
+
14
+ let n = 190;
15
+ let cx = 500;
16
+ let cy = 500;
17
+ let rr = 430;
18
+ let pi = 3.14159265;
19
+
20
+ for i in 0..n {
21
+ let a = i * 2 * pi / n;
22
+ dot(o{i}, (cx + rr * cos(a), cy + rr * sin(a)), 1); hidden(o{i});
23
+ dot(p{i}, (cx + rr * cos(a), cy + rr * sin(a)), 1); hidden(p{i}); // starts unwound -> blank
24
+ link(s{i}, o{i}, p{i});
25
+ color(s{i}, #101010);
26
+ stroke(s{i}, 0.5);
27
+ tag(s{i}, strings);
28
+ }
29
+
30
+ // the wordmark, waiting in the wings for the finale
31
+ text(word, (cx, cy), "manic"); size(word, 104); color(word, #101010); hidden(word);
32
+
33
+ par {
34
+ // the breath: bloom -> breathe (quickening) -> climax -> settle -> dissolve.
35
+ // every turn is on one anchor by an index-proportional amount, so the caustic
36
+ // grows and shrinks as one.
37
+ for i in 0..n {
38
+ let f = i * 360 / n; // full wind: takes point i to point 2i (the eye forms)
39
+ let d = f * 0.45; // breath depth
40
+ seq {
41
+ turn(p{i}, (cx, cy), f, 4.0, out); // BLOOM into the eye
42
+ turn(p{i}, (cx, cy), -d, 3.0, smooth); // breathe open
43
+ turn(p{i}, (cx, cy), d, 3.0, smooth); // close
44
+ turn(p{i}, (cx, cy), -d * 1.2, 2.0, smooth); // deeper, quicker
45
+ turn(p{i}, (cx, cy), d * 1.2, 2.0, smooth);
46
+ turn(p{i}, (cx, cy), -d * 1.45, 1.4, smooth); // CLIMAX
47
+ turn(p{i}, (cx, cy), d * 1.45, 1.4, smooth);
48
+ turn(p{i}, (cx, cy), -d, 3.2, smooth); // settle
49
+ turn(p{i}, (cx, cy), d, 3.2, smooth);
50
+ turn(p{i}, (cx, cy), -f, 4.5, in); // DISSOLVE back to nothing
51
+ }
52
+ }
53
+ // colour drama: an ink eye that flushes crimson through the climax, then cools,
54
+ // and finally fades right out so no wire is left for the finale.
55
+ seq {
56
+ wait(9.0);
57
+ recolor(strings, #a80028, 3.0); // blood rushes in as it quickens
58
+ recolor(strings, #101010, 6.0); // cools back to ink
59
+ wait(6.5);
60
+ fade(strings, 3.0); // every string gone by ~27.5s
61
+ }
62
+ // finale: once the wires are gone, the wordmark rises
63
+ seq {
64
+ wait(27.5);
65
+ show(word, 1.4);
66
+ recolor(word, #ff2d95, 0.8); // a brand-magenta beat
67
+ pulse(word);
68
+ wait(1.4);
69
+ }
70
+ }
@@ -0,0 +1,10 @@
1
+ // string-wave.manic — a wave on a plucked string: N masses on springs, both ends
2
+ // fixed (the discretised wave equation). `stringwave(id,[center],[width],[amp],
3
+ // [pluck])`. Pluck it off-centre and the pulse splits into two, travels out, and
4
+ // reflects (inverting) off the fixed ends. Drawn as a rainbow chain that wiggles.
5
+ title("Wave on a string — pluck it and watch it travel");
6
+ canvas("16:9");
7
+ text(hdr, (cx, 70), "Pluck a string: the pulse splits, travels, and reflects off the ends"); size(hdr, 23); color(hdr, cyan); bold(hdr); display(hdr);
8
+ stringwave(sw, (cx, 380), 900, 110, 0.28);
9
+ text(cap, (cx, h - 40), "36 masses on springs, fixed at both ends — the wave equation, pre-simulated with RK4"); size(cap, 16); color(cap, dim); display(cap);
10
+ run(sw, 10);
@@ -0,0 +1,48 @@
1
+ // ============================================================================
2
+ // summary.manic — describe a dataset (stats Tier 1)
3
+ // ----------------------------------------------------------------------------
4
+ // `summary(id, (cx,cy), "v1 v2 v3 …", [width], [color])` is the descriptive-
5
+ // statistics workhorse: the data as dots on a number line, with the **mean**
6
+ // (gold), **median** (magenta) and **mode** (lime) marked, a translucent
7
+ // **±1σ spread band**, and a readout of **n / range / variance / std**.
8
+ // Pieces: `{id}.dots` (the cloud), `{id}.meanmark`/`.medianmark`/`.modemark`
9
+ // (+ `.*lbl`), `{id}.band`, `{id}.min`/`.max`, `{id}.readout`.
10
+ //
11
+ // TO ADAPT: paste your own numbers. Central tendency (mean/median/mode) and
12
+ // dispersion (range/variance/std) come out in one call.
13
+ // ============================================================================
14
+
15
+ title("Describe a dataset");
16
+ canvas("16:9");
17
+
18
+ text(hdr, (cx, 64), "20 daily temperatures — centre and spread");
19
+ size(hdr, 24); color(hdr, cyan); bold(hdr); display(hdr);
20
+
21
+ summary(sm, (cx, cy - 10),
22
+ "18 21 20 22 19 23 21 20 21 24 22 21 19 20 23 21 22 20 21 25", 640);
23
+ // reveal in beats
24
+ untraced(sm.line);
25
+ hidden(sm.dots);
26
+ hidden(sm.band);
27
+ hidden(sm.meanmark); hidden(sm.meanlbl);
28
+ hidden(sm.medianmark); hidden(sm.medianlbl);
29
+ hidden(sm.modemark); hidden(sm.modelbl);
30
+ hidden(sm.readout);
31
+
32
+ text(cap, (cx, h - 46), ""); size(cap, 22); color(cap, dim); display(cap);
33
+
34
+ say(cap, "start with the raw numbers, laid out on a line", 0.5);
35
+ draw(sm.line, 0.6);
36
+ show(sm.dots, 0.6);
37
+ wait(1.4);
38
+
39
+ say(cap, "the centre: mean, median and mode", 0.5);
40
+ show(sm.meanmark, 0.4); show(sm.meanlbl, 0.4);
41
+ show(sm.medianmark, 0.4); show(sm.medianlbl, 0.4);
42
+ show(sm.modemark, 0.4); show(sm.modelbl, 0.4);
43
+ wait(1.6);
44
+
45
+ say(cap, "the spread: most values fall within one standard deviation of the mean", 0.5);
46
+ to(sm.band, opacity, 0.12, 0.6);
47
+ show(sm.readout, 0.4);
48
+ wait(2.0);
@@ -0,0 +1,172 @@
1
+ // ============================================================================
2
+ // svg-howto.manic — "MADE OF EMOJI"
3
+ //
4
+ // Not a lecture — a spectacle. From one point, a storm of imported emoji
5
+ // explodes, swirls into a galaxy, then snaps into a beating heart — dozens of
6
+ // vectors choreographed by pure math, exploded again into a flag-lit finale.
7
+ // Every actor is an `svg()` import; nothing is a texture; it's all computed.
8
+ //
9
+ // manic examples/svg-howto.manic
10
+ // manic examples/svg-howto.manic --record out --preset reel
11
+ // ============================================================================
12
+
13
+ title("Made of Emoji — a vector spectacle");
14
+ canvas("16:9");
15
+ template("blank");
16
+
17
+ voice("elevenlabs"); // promo narration (ELEVENLABS_API_KEY)
18
+ // voice("elevenlabs", "alice");
19
+ // voice("elevenlabs", "jessica");
20
+ // voice("cartesia"); // voice("gtts"); // free fallback
21
+ // speak("…") = voice only; say(sub, "…") = on-screen text; both can run together.
22
+
23
+ // deep-space backdrop
24
+ rect(space, (cx, cy), w*2, h*2); filled(space); gradient(space, void, indigo, radial);
25
+
26
+ text(sub, (cx, h*0.9), ""); size(sub, 30); color(sub, fg); display(sub); glow(sub, 0.4);
27
+
28
+ // ---- the swarm: 30 heart emoji, rainbow-hued, all born at the centre ----
29
+ for i in 0..30 {
30
+ svg(sw{i}, (cx, cy), "asset:svg/emoji/heart.svg", 46);
31
+ hue(sw{i}, i*12); // rainbow, one hue apiece
32
+ tag(sw{i}, swarm); z(sw{i}, 5); hidden(sw{i});
33
+ }
34
+
35
+ // ---- burst engines (gold ignition, cyan confetti) ----
36
+ rect(bseed, (cx, cy), 24, 24); hidden(bseed);
37
+ particles(spark, bseed, 30, 6, 22, "random"); color(spark, gold); glow(spark, 0.9); hidden(spark);
38
+ rect(cseed, (cx, cy), 24, 24); hidden(cseed);
39
+ particles(conf, cseed, 30, 6, 22, "random"); color(conf, cyan); glow(conf, 0.9); hidden(conf);
40
+
41
+ // ---- the finale cast (flags + hero emoji rain in) ----
42
+ svg(rk, (cx, h + 120), "asset:svg/emoji/rocket.svg", 120); z(rk, 9); hidden(rk);
43
+ svg(hero0, (cx - 500, -80), "asset:svg/emoji/fire.svg", 80); hidden(hero0);
44
+ svg(hero1, (cx - 250, -80), "asset:svg/emoji/star.svg", 80); hidden(hero1);
45
+ svg(hero2, (cx + 250, -80), "asset:svg/emoji/party.svg", 80); hidden(hero2);
46
+ svg(hero3, (cx + 500, -80), "asset:svg/emoji/trophy.svg", 80); hidden(hero3);
47
+ svg(flag0, (cx - 420, -80), "asset:svg/flags/in.svg", 92); hidden(flag0);
48
+ svg(flag1, (cx - 140, -80), "asset:svg/flags/br.svg", 92); hidden(flag1);
49
+ svg(flag2, (cx + 140, -80), "asset:svg/flags/jp.svg", 92); hidden(flag2);
50
+ svg(flag3, (cx + 420, -80), "asset:svg/flags/de.svg", 92); hidden(flag3);
51
+
52
+ // ---- the sampler: a stack of diverse shapes to riffle through ----
53
+ svg(smp0, (cx, cy - 40), "asset:svg/emoji/rocket.svg", 220); hidden(smp0);
54
+ svg(smp1, (cx, cy - 40), "asset:svg/emoji/party.svg", 220); hidden(smp1);
55
+ svg(smp2, (cx, cy - 40), "asset:svg/emoji/brain.svg", 220); hidden(smp2);
56
+ svg(smp3, (cx, cy - 40), "asset:svg/flags/jp.svg", 240); hidden(smp3);
57
+ svg(smp4, (cx, cy - 40), "asset:svg/emoji/trophy.svg", 220); hidden(smp4);
58
+ svg(smp5, (cx, cy - 40), "asset:svg/lucide/cpu.svg", 200); hue(smp5, 190); hidden(smp5);
59
+ svg(smp6, (cx, cy - 40), "asset:svg/flags/br.svg", 240); hidden(smp6);
60
+ svg(smp7, (cx, cy - 40), "asset:svg/emoji/fire.svg", 220); hidden(smp7);
61
+ svg(smp8, (cx, cy - 40), "asset:svg/heroicons/bolt.svg", 200); hue(smp8, 48); hidden(smp8);
62
+ svg(smp9, (cx, cy - 40), "asset:svg/flags/in.svg", 240); hidden(smp9);
63
+ svg(smp10, (cx, cy - 40), "asset:svg/emoji/star.svg", 220); hidden(smp10);
64
+ svg(smp11, (cx, cy - 40), "asset:svg/lucide/globe.svg", 200); hue(smp11, 130); hidden(smp11);
65
+ svg(smp12, (cx, cy - 40), "asset:svg/emoji/earth.svg", 220); hidden(smp12);
66
+ svg(smp13, (cx, cy - 40), "asset:svg/flags/de.svg", 240); hidden(smp13);
67
+ svg(smp14, (cx, cy - 40), "asset:svg/heroicons/beaker.svg", 200); hue(smp14, 300); hidden(smp14);
68
+ svg(smp15, (cx, cy - 40), "asset:svg/emoji/heart.svg", 220); hidden(smp15);
69
+
70
+ text(mark, (cx, cy - 20), "MANIC"); size(mark, 110); color(mark, gold); bold(mark); display(mark); glow(mark, 1.2); hidden(mark);
71
+ text(tagl, (cx, cy + 78), "6,404 shapes · one file · all computed");
72
+ size(tagl, 26); color(tagl, cyan); display(tagl); hidden(tagl);
73
+
74
+ // ============================================================================
75
+ // THE SPECTACLE (fast, punchy)
76
+ // ============================================================================
77
+
78
+ // 1 — SINGULARITY: everything waits in one blinding point.
79
+ seq {
80
+ zoom(1.35, 0.01);
81
+ show(sw0, 0.3);
82
+ par { for i in 0..30 { show(sw{i}, 0.25); } } // a tight rainbow knot at centre
83
+ pulse(sw0);
84
+ say(sub, "One line…", 0.25);
85
+ speak("This… is one line of Manic.");
86
+ wait(0.2);
87
+ }
88
+
89
+ // 2 — BIG BANG: the storm explodes outward into a ring.
90
+ seq {
91
+ say(sub, "…one universe.", 0.25);
92
+ speak("From it, a whole universe of vectors explodes into being.");
93
+ show(spark, 0.05); burst(spark, 0.7);
94
+ par {
95
+ for i in 0..30 {
96
+ move(sw{i}, (cx + 300*cos(i*12*pi/180), cy + 300*sin(i*12*pi/180)), 0.7, out);
97
+ }
98
+ zoom(1.0, 0.7, smooth);
99
+ }
100
+ wait(0.15);
101
+ }
102
+
103
+ // 3 — GALAXY: the ring breathes (turn removed to test formation).
104
+ seq {
105
+ say(sub, "computed — never drawn.", 0.3);
106
+ speak("Import any SVG — an icon, a flag, an emoji — as living geometry. Not a picture. Real shapes you can move and colour.");
107
+ par { for i in 0..30 { pulse(sw{i}); } }
108
+ wait(0.2);
109
+ }
110
+
111
+ // 4 — THE HEART: dozens of vectors snap into a single shape.
112
+ seq {
113
+ say(sub, "shape them at will.", 0.3);
114
+ speak("Watch thirty of them snap into a single form — placed by pure math.");
115
+ par {
116
+ for i in 0..30 {
117
+ move(sw{i},
118
+ (cx + 208*sin(i*pi/15)*sin(i*pi/15)*sin(i*pi/15),
119
+ cy - (169*cos(i*pi/15) - 65*cos(2*i*pi/15) - 26*cos(3*i*pi/15) - 13*cos(4*i*pi/15)) + 40),
120
+ 1.1, smooth);
121
+ }
122
+ }
123
+ par { for i in 0..30 { pulse(sw{i}); } } // the heart beats
124
+ wait(0.4);
125
+ }
126
+
127
+ // 4.5 — THE LIBRARY: riffle the catalogue so they see the full range.
128
+ seq {
129
+ say(sub, "and not just hearts — 6,404 shapes, one line each.", 0.3);
130
+ speak("And it's not just hearts. Six thousand four hundred shapes ship inside — every icon, every flag, every emoji — each one line away.");
131
+ par { for i in 0..30 { fade(sw{i}, 0.4); } } // clear the heart
132
+ stagger(0.2) {
133
+ for i in 0..16 { seq { show(smp{i}, 0.14); fade(smp{i}, 0.3); } }
134
+ }
135
+ wait(0.2);
136
+ }
137
+
138
+ // 5 — CELEBRATION: flags and heroes rain in; confetti pops.
139
+ seq {
140
+ say(sub, "every shape. every colour. one file.", 0.35);
141
+ speak("Faithful colours. Real vectors. Recolour them, move them, explode them — all from one text file.");
142
+ show(conf, 0.05); burst(conf, 0.9);
143
+ stagger(0.06) {
144
+ move(flag0, (cx - 420, cy - 250), 0.7, overshoot); show(flag0, 0.1);
145
+ move(hero0, (cx - 500, cy + 250), 0.7, overshoot); show(hero0, 0.1);
146
+ move(flag1, (cx - 140, cy - 250), 0.7, overshoot); show(flag1, 0.1);
147
+ move(hero1, (cx - 250, cy + 250), 0.7, overshoot); show(hero1, 0.1);
148
+ move(flag2, (cx + 140, cy - 250), 0.7, overshoot); show(flag2, 0.1);
149
+ move(hero2, (cx + 250, cy + 250), 0.7, overshoot); show(hero2, 0.1);
150
+ move(flag3, (cx + 420, cy - 250), 0.7, overshoot); show(flag3, 0.1);
151
+ move(hero3, (cx + 500, cy + 250), 0.7, overshoot); show(hero3, 0.1);
152
+ }
153
+ wait(0.4);
154
+ }
155
+
156
+ // 6 — FINALE: it all bursts apart; a rocket tears through to the title.
157
+ seq {
158
+ say(sub, "", 0.1);
159
+ show(spark, 0.05); burst(spark, 0.8);
160
+ par {
161
+ fade(flag0, 0.5); fade(flag1, 0.5); fade(flag2, 0.5); fade(flag3, 0.5);
162
+ fade(hero0, 0.5); fade(hero1, 0.5); fade(hero2, 0.5); fade(hero3, 0.5);
163
+ }
164
+ show(rk, 0.2);
165
+ move(rk, (cx, cy + 40), 0.7, out);
166
+ par { flash(rk, cyan); pulse(rk); }
167
+ move(rk, (cx, -160), 0.6, in); // it launches off the top
168
+ par { show(mark, 0.5); show(tagl, 0.5); }
169
+ speak("This is Manic — turn plain text into vector spectacle. Try it free at eight g wifi dot org slash manic.");
170
+ flash(mark, gold);
171
+ wait(1.4);
172
+ }
@@ -0,0 +1,18 @@
1
+ // SVG vector import — bring artwork in as NATIVE path entities (not a texture).
2
+ // Each subpath of heart.svg becomes a traceable Polyline / filled Polygon, fitted
3
+ // to 320 px wide and centred; the pieces are tagged `heart`, so ONE verb animates
4
+ // the whole drawing. Imported colours reproduce faithfully (the #ff2d95 fill is
5
+ // kept literal, not re-themed). This is the 2D twin of `model3`'s OBJ import.
6
+ title("SVG Vector Import");
7
+ canvas("16:9");
8
+ template("neon");
9
+
10
+ svg(heart, (cx, cy), "asset:svg/heart.svg", 320);
11
+
12
+ hidden(heart);
13
+ show(heart, 0.8); // reveal — real geometry, faithful colours
14
+ wait(0.4);
15
+ pulse(heart, 0.9); // animate the whole drawing with one verb
16
+ wait(0.6);
17
+ recolor(heart, cyan); // …and recolour it — imported vectors are first-class
18
+ wait(1.2);
@@ -0,0 +1,92 @@
1
+ title("Systems Kit PoC — What Happens When You Click Buy?");
2
+ canvas("16:9");
3
+ template("mono");
4
+
5
+ let u = (w+h-abs(w-h))/1440;
6
+ watermark(mark, (w*0.15, h*0.07), "Made With Manic");
7
+ text(kicker, (cx, h*0.075), "SYSTEMS KIT · REQUEST JOURNEY");
8
+ text(headline, (cx, h*0.155), "What happens when you click Buy?");
9
+ text(caption, (cx, h*0.88), "One request keeps its identity while the architecture responds.");
10
+ size(kicker, 18*u); color(kicker, dim); bold(kicker);
11
+ size(headline, 34*u); bold(headline); wrap(headline, w*0.84);
12
+ size(caption, 19*u); color(caption, dim); wrap(caption, w*0.82);
13
+
14
+ architecture(shop, (cx, h*0.49), w*0.84, h*0.58);
15
+ node(browser, shop, "client", "Browser");
16
+ node(edge, shop, "aws:cloudfront", "CloudFront");
17
+ node(api, shop, "aws:api-gateway", "API Gateway");
18
+ node(checkout, shop, "aws:lambda", "Checkout");
19
+ node(orders, shop, "aws:dynamodb", "Orders");
20
+ node(events, shop, "aws:sqs", "Events");
21
+
22
+ connect(toEdge, browser, edge);
23
+ connect(toApi, edge, api);
24
+ connect(toCheckout, api, checkout);
25
+ connect(toOrders, checkout, orders);
26
+ connect(toEvents, orders, events);
27
+ request(order, browser, "BUY");
28
+
29
+ hidden(shop.nodes);
30
+ untraced(shop.connections);
31
+ hidden(order.parts);
32
+
33
+ step("architecture") {
34
+ stagger(0.10) {
35
+ show(browser, 0.30); show(edge, 0.30); show(api, 0.30);
36
+ show(checkout, 0.30); show(orders, 0.30); show(events, 0.30);
37
+ }
38
+ }
39
+ wait(0.25);
40
+
41
+ step("request") {
42
+ par {
43
+ show(order.parts, 0.30);
44
+ draw(shop.connections, 0.90);
45
+ say(caption, "The browser sends one request into the edge network.", 0.35);
46
+ }
47
+ }
48
+ wait(0.20);
49
+
50
+ step("edge") {
51
+ par {
52
+ route(order, toEdge, 0.90, smooth);
53
+ say(caption, "CloudFront receives it first, close to the customer.", 0.35);
54
+ }
55
+ }
56
+
57
+ step("api") {
58
+ par {
59
+ route(order, toApi, 0.90, smooth);
60
+ say(caption, "API Gateway validates and routes the operation.", 0.35);
61
+ }
62
+ }
63
+
64
+ step("compute") {
65
+ par {
66
+ route(order, toCheckout, 0.90, smooth);
67
+ say(caption, "Lambda executes the checkout logic.", 0.35);
68
+ }
69
+ }
70
+
71
+ step("persist") {
72
+ par {
73
+ route(order, toOrders, 0.90, smooth);
74
+ say(caption, "DynamoDB persists the order.", 0.35);
75
+ }
76
+ }
77
+
78
+ step("event") {
79
+ par {
80
+ route(order, toEvents, 0.90, smooth);
81
+ say(caption, "SQS decouples the work that can happen next.", 0.35);
82
+ }
83
+ }
84
+ wait(0.30);
85
+
86
+ step("takeaway") {
87
+ par {
88
+ pulse(shop.nodes, 0.75);
89
+ say(caption, "Architecture becomes understandable when we follow behavior—not only boxes and arrows.", 0.45);
90
+ }
91
+ }
92
+ wait(1.20);