atome 0.1.00009 → 0.4.5.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (354) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +4 -0
  3. data/README.md +74 -6
  4. data/Rakefile +14 -6
  5. data/app_builder_helpers/Rakefile +183 -25
  6. data/documentation/atome.md +14 -0
  7. data/documentation/database.JPG +0 -0
  8. data/documentation/framework/apis.md +14 -0
  9. data/documentation/framework/atome_explained.md +179 -0
  10. data/documentation/framework/box_content.md +53 -0
  11. data/documentation/framework/buld_the_gem.md +52 -0
  12. data/documentation/framework/datas_flows.md +28 -0
  13. data/documentation/framework/enhance_atome.md +79 -0
  14. data/documentation/framework/folder_architecture.md +47 -0
  15. data/documentation/framework/technical/rendering_flow.md +18 -0
  16. data/documentation/framework/technical/technical_description.md +23 -0
  17. data/documentation/framework/what_is_it.md +65 -0
  18. data/documentation/framework/what_it_can_do.md +25 -0
  19. data/documentation/images/1.png +0 -0
  20. data/documentation/images/2.png +0 -0
  21. data/documentation/images/3.png +0 -0
  22. data/documentation/images/atome.svg +12 -0
  23. data/documentation/images/list.png +0 -0
  24. data/documentation/images/logos/cordova.png +0 -0
  25. data/documentation/images/logos/freebsd.png +0 -0
  26. data/documentation/images/logos/opal.png +0 -0
  27. data/documentation/images/logos/puma.png +0 -0
  28. data/documentation/images/logos/roda.svg +1 -0
  29. data/documentation/images/logos/ruby.png +0 -0
  30. data/documentation/images/logos/tauri.png +0 -0
  31. data/documentation/installation/atome_server.md +184 -0
  32. data/documentation/tutorials/first_steps.md +148 -0
  33. data/documentation/tutorials/tutorials.md +15 -0
  34. data/documentation/tutorials/working_with_atome.md +60 -0
  35. data/exe/atome +178 -53
  36. data/lib/atome/atome_native_extensions.rb +5 -0
  37. data/lib/atome/extensions/geolocation.rb +14 -0
  38. data/lib/atome/extensions/helper.rb +123 -0
  39. data/lib/atome/extensions/ping.rb +13 -0
  40. data/lib/atome/extensions/sha.rb +6 -0
  41. data/lib/atome/extensions/utilities.rb +39 -0
  42. data/lib/atome/kernel/atome.rb +98 -0
  43. data/lib/atome/kernel/generators/generator.rb +387 -0
  44. data/lib/atome/kernel/generators/genesis.rb +265 -0
  45. data/lib/atome/kernel/generators/sanitizer.rb +77 -0
  46. data/lib/atome/kernel/generators/shapes.rb +40 -0
  47. data/lib/atome/kernel/properties/essential.rb +43 -0
  48. data/lib/atome/kernel/sparkle.rb +37 -0
  49. data/lib/atome/kernel/universe.rb +29 -0
  50. data/lib/atome/renderers/headless/properties/generator.rb +1 -0
  51. data/lib/atome/renderers/opal/atome_opal_extensions.rb +7 -0
  52. data/lib/atome/renderers/opal/extensions/color.rb +23 -0
  53. data/lib/atome/renderers/opal/extensions/geolocation.rb +14 -0
  54. data/lib/atome/renderers/opal/extensions/ping.rb +18 -0
  55. data/lib/atome/renderers/opal/extensions/sha.rb +12 -0
  56. data/lib/atome/renderers/opal/opal_browser.rb +2 -1
  57. data/lib/atome/renderers/opal/opal_parser.rb +1 -0
  58. data/lib/atome/renderers/opal/properties/generator.rb +1 -0
  59. data/lib/atome/renderers/renderer.rb +12 -0
  60. data/lib/atome/renderers/server/properties/generator.rb +9 -0
  61. data/lib/atome/version.rb +1 -1
  62. data/lib/atome.rb +55 -2
  63. data/vendor/assets/Guardfile +4 -0
  64. data/vendor/assets/Rakefile +3 -0
  65. data/vendor/assets/application/index.rb +4 -0
  66. data/vendor/assets/build/css/style.css +21 -8
  67. data/vendor/assets/build/favicon.ico +0 -0
  68. data/vendor/assets/build/index.html +13 -4
  69. data/vendor/assets/build/js/atome/atome.js +68 -0
  70. data/vendor/assets/build/js/ping.min.js +2 -0
  71. data/vendor/assets/build/js/third_parties/createjs.min.js +19 -0
  72. data/vendor/assets/build/js/third_parties/fabric.min.js +1 -0
  73. data/vendor/assets/build/js/third_parties/sha256.min.js +9 -0
  74. data/vendor/assets/build/js/third_parties/three.min.js +6 -0
  75. data/vendor/assets/build/js/utilities/w3color.js +646 -0
  76. data/vendor/assets/build/medias/audios/audio_missing.wav +0 -0
  77. data/vendor/assets/build/medias/audios/clap.wav +0 -0
  78. data/vendor/assets/build/medias/audios/cowbell.wav +0 -0
  79. data/vendor/assets/build/medias/audios/hihat.wav +0 -0
  80. data/vendor/assets/build/medias/audios/kick.wav +0 -0
  81. data/vendor/assets/build/medias/audios/riff.m4a +0 -0
  82. data/vendor/assets/build/medias/audios/snare.wav +0 -0
  83. data/vendor/assets/build/medias/audios/tom.wav +0 -0
  84. data/vendor/assets/build/medias/fonts/Dancing_Script/DancingScript-VariableFont_wght.ttf +0 -0
  85. data/vendor/assets/build/medias/fonts/Dancing_Script/OFL.txt +93 -0
  86. data/vendor/assets/build/medias/fonts/Dancing_Script/README.txt +66 -0
  87. data/vendor/assets/build/medias/fonts/Dancing_Script/static/DancingScript-Bold.ttf +0 -0
  88. data/vendor/assets/build/medias/fonts/Dancing_Script/static/DancingScript-Medium.ttf +0 -0
  89. data/vendor/assets/build/medias/fonts/Dancing_Script/static/DancingScript-Regular.ttf +0 -0
  90. data/vendor/assets/build/medias/fonts/Dancing_Script/static/DancingScript-SemiBold.ttf +0 -0
  91. data/vendor/assets/build/medias/fonts/Mate_SC/MateSC-Regular.ttf +0 -0
  92. data/vendor/assets/build/medias/fonts/Mate_SC/OFL.txt +94 -0
  93. data/vendor/assets/build/medias/fonts/Raleway/OFL.txt +93 -0
  94. data/vendor/assets/build/medias/fonts/Raleway/README.txt +81 -0
  95. data/vendor/assets/build/medias/fonts/Raleway/Raleway-Italic-VariableFont_wght.ttf +0 -0
  96. data/vendor/assets/build/medias/fonts/Raleway/Raleway-VariableFont_wght.ttf +0 -0
  97. data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-Black.ttf +0 -0
  98. data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-BlackItalic.ttf +0 -0
  99. data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-Bold.ttf +0 -0
  100. data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-BoldItalic.ttf +0 -0
  101. data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-ExtraBold.ttf +0 -0
  102. data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-ExtraBoldItalic.ttf +0 -0
  103. data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-ExtraLight.ttf +0 -0
  104. data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-ExtraLightItalic.ttf +0 -0
  105. data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-Italic.ttf +0 -0
  106. data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-Light.ttf +0 -0
  107. data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-LightItalic.ttf +0 -0
  108. data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-Medium.ttf +0 -0
  109. data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-MediumItalic.ttf +0 -0
  110. data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-Regular.ttf +0 -0
  111. data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-SemiBold.ttf +0 -0
  112. data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-SemiBoldItalic.ttf +0 -0
  113. data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-Thin.ttf +0 -0
  114. data/vendor/assets/build/medias/fonts/Raleway/static/Raleway-ThinItalic.ttf +0 -0
  115. data/vendor/assets/build/medias/fonts/Roboto_Slab/LICENSE.txt +202 -0
  116. data/vendor/assets/build/medias/fonts/Roboto_Slab/README.txt +71 -0
  117. data/vendor/assets/build/medias/fonts/Roboto_Slab/RobotoSlab-VariableFont_wght.ttf +0 -0
  118. data/vendor/assets/build/medias/fonts/Roboto_Slab/static/RobotoSlab-Black.ttf +0 -0
  119. data/vendor/assets/build/medias/fonts/Roboto_Slab/static/RobotoSlab-Bold.ttf +0 -0
  120. data/vendor/assets/build/medias/fonts/Roboto_Slab/static/RobotoSlab-ExtraBold.ttf +0 -0
  121. data/vendor/assets/build/medias/fonts/Roboto_Slab/static/RobotoSlab-ExtraLight.ttf +0 -0
  122. data/vendor/assets/build/medias/fonts/Roboto_Slab/static/RobotoSlab-Light.ttf +0 -0
  123. data/vendor/assets/build/medias/fonts/Roboto_Slab/static/RobotoSlab-Medium.ttf +0 -0
  124. data/vendor/assets/build/medias/fonts/Roboto_Slab/static/RobotoSlab-Regular.ttf +0 -0
  125. data/vendor/assets/build/medias/fonts/Roboto_Slab/static/RobotoSlab-SemiBold.ttf +0 -0
  126. data/vendor/assets/build/medias/fonts/Roboto_Slab/static/RobotoSlab-Thin.ttf +0 -0
  127. data/vendor/assets/build/medias/fonts/Vollkorn/OFL.txt +93 -0
  128. data/vendor/assets/build/medias/fonts/Vollkorn/README.txt +75 -0
  129. data/vendor/assets/build/medias/fonts/Vollkorn/Vollkorn-Italic-VariableFont_wght.ttf +0 -0
  130. data/vendor/assets/build/medias/fonts/Vollkorn/Vollkorn-VariableFont_wght.ttf +0 -0
  131. data/vendor/assets/build/medias/fonts/Vollkorn/static/Vollkorn-Black.ttf +0 -0
  132. data/vendor/assets/build/medias/fonts/Vollkorn/static/Vollkorn-BlackItalic.ttf +0 -0
  133. data/vendor/assets/build/medias/fonts/Vollkorn/static/Vollkorn-Bold.ttf +0 -0
  134. data/vendor/assets/build/medias/fonts/Vollkorn/static/Vollkorn-BoldItalic.ttf +0 -0
  135. data/vendor/assets/build/medias/fonts/Vollkorn/static/Vollkorn-ExtraBold.ttf +0 -0
  136. data/vendor/assets/build/medias/fonts/Vollkorn/static/Vollkorn-ExtraBoldItalic.ttf +0 -0
  137. data/vendor/assets/build/medias/fonts/Vollkorn/static/Vollkorn-Italic.ttf +0 -0
  138. data/vendor/assets/build/medias/fonts/Vollkorn/static/Vollkorn-Medium.ttf +0 -0
  139. data/vendor/assets/build/medias/fonts/Vollkorn/static/Vollkorn-MediumItalic.ttf +0 -0
  140. data/vendor/assets/build/medias/fonts/Vollkorn/static/Vollkorn-Regular.ttf +0 -0
  141. data/vendor/assets/build/medias/fonts/Vollkorn/static/Vollkorn-SemiBold.ttf +0 -0
  142. data/vendor/assets/build/medias/fonts/Vollkorn/static/Vollkorn-SemiBoldItalic.ttf +0 -0
  143. data/vendor/assets/build/medias/images/Icon_Help.png +0 -0
  144. data/vendor/assets/build/medias/images/atome.svg +12 -0
  145. data/vendor/assets/build/medias/images/avion.jpg +0 -0
  146. data/vendor/assets/build/medias/images/ballanim.png +0 -0
  147. data/vendor/assets/build/medias/images/blank.png +0 -0
  148. data/vendor/assets/build/medias/images/boat.png +0 -0
  149. data/vendor/assets/build/medias/images/cache.svg +10 -0
  150. data/vendor/assets/build/medias/images/dices.png +0 -0
  151. data/vendor/assets/build/medias/images/eVe_back.png +0 -0
  152. data/vendor/assets/build/medias/images/elephant.png +0 -0
  153. data/vendor/assets/build/medias/images/eyes.jpg +0 -0
  154. data/vendor/assets/build/medias/images/freebsd.png +0 -0
  155. data/vendor/assets/build/medias/images/grain_texture.png +0 -0
  156. data/vendor/assets/build/medias/images/green_planet.png +0 -0
  157. data/vendor/assets/build/medias/images/image_missing.svg +9 -0
  158. data/vendor/assets/build/medias/images/jeezs.png +0 -0
  159. data/vendor/assets/build/medias/images/keyboard.png +0 -0
  160. data/vendor/assets/build/medias/images/killer.jpg +0 -0
  161. data/vendor/assets/build/medias/images/living_room.png +0 -0
  162. data/vendor/assets/build/medias/images/logo.svg +14 -0
  163. data/vendor/assets/build/medias/images/logos/Facebook.svg +8 -0
  164. data/vendor/assets/build/medias/images/logos/GitHub Black.svg +7 -0
  165. data/vendor/assets/build/medias/images/logos/GitHub-Mark.eps +7696 -0
  166. data/vendor/assets/build/medias/images/logos/GitHub.svg +7 -0
  167. data/vendor/assets/build/medias/images/logos/TikTok.svg +11 -0
  168. data/vendor/assets/build/medias/images/logos/Twitter.svg +35 -0
  169. data/vendor/assets/build/medias/images/logos/YouTube.svg +1 -0
  170. data/vendor/assets/build/medias/images/logos/apple.svg +4 -0
  171. data/vendor/assets/build/medias/images/logos/atome.svg +12 -0
  172. data/vendor/assets/build/medias/images/logos/freebsd.png +0 -0
  173. data/vendor/assets/build/medias/images/logos/instagram.svg +6 -0
  174. data/vendor/assets/build/medias/images/logos/tiktok_back.svg +1 -0
  175. data/vendor/assets/build/medias/images/moto.png +0 -0
  176. data/vendor/assets/build/medias/images/noise.svg +17 -0
  177. data/vendor/assets/build/medias/images/piano.png +0 -0
  178. data/vendor/assets/build/medias/images/poisson.jpg +0 -0
  179. data/vendor/assets/build/medias/images/red_planet.png +0 -0
  180. data/vendor/assets/build/medias/images/sky.jpg +0 -0
  181. data/vendor/assets/build/medias/images/the_mask.svg +8 -0
  182. data/vendor/assets/build/medias/images/tile.png +0 -0
  183. data/vendor/assets/build/medias/images/tile_black.png +0 -0
  184. data/vendor/assets/build/medias/images/tile_white.png +0 -0
  185. data/vendor/assets/build/medias/javascripts/test.js +1 -0
  186. data/vendor/assets/build/medias/rubies/examples/Old_examples/!demos.rb +111 -0
  187. data/vendor/assets/build/medias/rubies/examples/Old_examples/action.rb +12 -0
  188. data/vendor/assets/build/medias/rubies/examples/Old_examples/add.rb +26 -0
  189. data/vendor/assets/build/medias/rubies/examples/Old_examples/alignment.rb +27 -0
  190. data/vendor/assets/build/medias/rubies/examples/Old_examples/animation.rb +92 -0
  191. data/vendor/assets/build/medias/rubies/examples/Old_examples/atome_as_property.rb +20 -0
  192. data/vendor/assets/build/medias/rubies/examples/Old_examples/atome_list.rb +4 -0
  193. data/vendor/assets/build/medias/rubies/examples/Old_examples/atomiser.rb +17 -0
  194. data/vendor/assets/build/medias/rubies/examples/Old_examples/attach_extract.rb +13 -0
  195. data/vendor/assets/build/medias/rubies/examples/Old_examples/authorisation.rb +22 -0
  196. data/vendor/assets/build/medias/rubies/examples/Old_examples/batch.rb +6 -0
  197. data/vendor/assets/build/medias/rubies/examples/Old_examples/blend.rb +15 -0
  198. data/vendor/assets/build/medias/rubies/examples/Old_examples/blur.rb +9 -0
  199. data/vendor/assets/build/medias/rubies/examples/Old_examples/border.rb +9 -0
  200. data/vendor/assets/build/medias/rubies/examples/Old_examples/calendar.rb +5 -0
  201. data/vendor/assets/build/medias/rubies/examples/Old_examples/capture.rb +57 -0
  202. data/vendor/assets/build/medias/rubies/examples/Old_examples/center.rb +21 -0
  203. data/vendor/assets/build/medias/rubies/examples/Old_examples/child.rb +18 -0
  204. data/vendor/assets/build/medias/rubies/examples/Old_examples/clear.rb +21 -0
  205. data/vendor/assets/build/medias/rubies/examples/Old_examples/clip.rb +11 -0
  206. data/vendor/assets/build/medias/rubies/examples/Old_examples/code.rb +7 -0
  207. data/vendor/assets/build/medias/rubies/examples/Old_examples/code_editor.rb +26 -0
  208. data/vendor/assets/build/medias/rubies/examples/Old_examples/collaborate.rb +115 -0
  209. data/vendor/assets/build/medias/rubies/examples/Old_examples/convert_to_px.rb +14 -0
  210. data/vendor/assets/build/medias/rubies/examples/Old_examples/copy_paste.rb +35 -0
  211. data/vendor/assets/build/medias/rubies/examples/Old_examples/current_code.rb +14 -0
  212. data/vendor/assets/build/medias/rubies/examples/Old_examples/cursor.rb +3 -0
  213. data/vendor/assets/build/medias/rubies/examples/Old_examples/data.rb +11 -0
  214. data/vendor/assets/build/medias/rubies/examples/Old_examples/database.rb +29 -0
  215. data/vendor/assets/build/medias/rubies/examples/Old_examples/delete.rb +12 -0
  216. data/vendor/assets/build/medias/rubies/examples/Old_examples/display.rb +19 -0
  217. data/vendor/assets/build/medias/rubies/examples/Old_examples/disposition.rb +10 -0
  218. data/vendor/assets/build/medias/rubies/examples/Old_examples/double_and_long_touch.rb +23 -0
  219. data/vendor/assets/build/medias/rubies/examples/Old_examples/drag.rb +61 -0
  220. data/vendor/assets/build/medias/rubies/examples/Old_examples/drag_and_drop_import.rb +1 -0
  221. data/vendor/assets/build/medias/rubies/examples/Old_examples/drop.rb +23 -0
  222. data/vendor/assets/build/medias/rubies/examples/Old_examples/duplicate.rb +11 -0
  223. data/vendor/assets/build/medias/rubies/examples/Old_examples/edit.rb +6 -0
  224. data/vendor/assets/build/medias/rubies/examples/Old_examples/eval.rb +9 -0
  225. data/vendor/assets/build/medias/rubies/examples/Old_examples/extract_detach.rb +23 -0
  226. data/vendor/assets/build/medias/rubies/examples/Old_examples/fill.rb +10 -0
  227. data/vendor/assets/build/medias/rubies/examples/Old_examples/find.rb +37 -0
  228. data/vendor/assets/build/medias/rubies/examples/Old_examples/fit.rb +44 -0
  229. data/vendor/assets/build/medias/rubies/examples/Old_examples/fullscreen.rb +28 -0
  230. data/vendor/assets/build/medias/rubies/examples/Old_examples/generate.rb +7 -0
  231. data/vendor/assets/build/medias/rubies/examples/Old_examples/gradient.rb +24 -0
  232. data/vendor/assets/build/medias/rubies/examples/Old_examples/group.rb +21 -0
  233. data/vendor/assets/build/medias/rubies/examples/Old_examples/helper.rb +64 -0
  234. data/vendor/assets/build/medias/rubies/examples/Old_examples/history.rb +7 -0
  235. data/vendor/assets/build/medias/rubies/examples/Old_examples/hue.rb +10 -0
  236. data/vendor/assets/build/medias/rubies/examples/Old_examples/input_text.rb +54 -0
  237. data/vendor/assets/build/medias/rubies/examples/Old_examples/insert_attach.rb +13 -0
  238. data/vendor/assets/build/medias/rubies/examples/Old_examples/internationalisation.rb +10 -0
  239. data/vendor/assets/build/medias/rubies/examples/Old_examples/key.rb +19 -0
  240. data/vendor/assets/build/medias/rubies/examples/Old_examples/keyboard_shortcut.rb +69 -0
  241. data/vendor/assets/build/medias/rubies/examples/Old_examples/list_methods.rb +4 -0
  242. data/vendor/assets/build/medias/rubies/examples/Old_examples/list_types.rb +4 -0
  243. data/vendor/assets/build/medias/rubies/examples/Old_examples/listen.rb +47 -0
  244. data/vendor/assets/build/medias/rubies/examples/Old_examples/mail.rb +9 -0
  245. data/vendor/assets/build/medias/rubies/examples/Old_examples/map.rb +6 -0
  246. data/vendor/assets/build/medias/rubies/examples/Old_examples/mask.rb +15 -0
  247. data/vendor/assets/build/medias/rubies/examples/Old_examples/media_recorder.rb +24 -0
  248. data/vendor/assets/build/medias/rubies/examples/Old_examples/media_streaming.rb +41 -0
  249. data/vendor/assets/build/medias/rubies/examples/Old_examples/meteo.rb +41 -0
  250. data/vendor/assets/build/medias/rubies/examples/Old_examples/methods_chaining.rb +8 -0
  251. data/vendor/assets/build/medias/rubies/examples/Old_examples/midi.rb +37 -0
  252. data/vendor/assets/build/medias/rubies/examples/Old_examples/monitoring.rb +47 -0
  253. data/vendor/assets/build/medias/rubies/examples/Old_examples/mulitrendering.rb +7 -0
  254. data/vendor/assets/build/medias/rubies/examples/Old_examples/noise_gradient_texture.rb +26 -0
  255. data/vendor/assets/build/medias/rubies/examples/Old_examples/notification.rb +9 -0
  256. data/vendor/assets/build/medias/rubies/examples/Old_examples/object_in_object.rb +13 -0
  257. data/vendor/assets/build/medias/rubies/examples/Old_examples/on_resize.rb +12 -0
  258. data/vendor/assets/build/medias/rubies/examples/Old_examples/over.rb +15 -0
  259. data/vendor/assets/build/medias/rubies/examples/Old_examples/overflow.rb +22 -0
  260. data/vendor/assets/build/medias/rubies/examples/Old_examples/parameter.rb +14 -0
  261. data/vendor/assets/build/medias/rubies/examples/Old_examples/parent.rb +19 -0
  262. data/vendor/assets/build/medias/rubies/examples/Old_examples/particle.rb +15 -0
  263. data/vendor/assets/build/medias/rubies/examples/Old_examples/pay.rb +7 -0
  264. data/vendor/assets/build/medias/rubies/examples/Old_examples/ping.rb +7 -0
  265. data/vendor/assets/build/medias/rubies/examples/Old_examples/play.rb +24 -0
  266. data/vendor/assets/build/medias/rubies/examples/Old_examples/play_audio.rb +6 -0
  267. data/vendor/assets/build/medias/rubies/examples/Old_examples/position.rb +7 -0
  268. data/vendor/assets/build/medias/rubies/examples/Old_examples/read_file.rb +9 -0
  269. data/vendor/assets/build/medias/rubies/examples/Old_examples/reboot.rb +15 -0
  270. data/vendor/assets/build/medias/rubies/examples/Old_examples/refresh.rb +17 -0
  271. data/vendor/assets/build/medias/rubies/examples/Old_examples/remote_server.rb +31 -0
  272. data/vendor/assets/build/medias/rubies/examples/Old_examples/render.rb +17 -0
  273. data/vendor/assets/build/medias/rubies/examples/Old_examples/repeat.rb +19 -0
  274. data/vendor/assets/build/medias/rubies/examples/Old_examples/require_remote.rb +3 -0
  275. data/vendor/assets/build/medias/rubies/examples/Old_examples/restore_atome.rb +11 -0
  276. data/vendor/assets/build/medias/rubies/examples/Old_examples/resurect.rb +30 -0
  277. data/vendor/assets/build/medias/rubies/examples/Old_examples/ruby_version.rb +1 -0
  278. data/vendor/assets/build/medias/rubies/examples/Old_examples/say.rb +3 -0
  279. data/vendor/assets/build/medias/rubies/examples/Old_examples/scale.rb +41 -0
  280. data/vendor/assets/build/medias/rubies/examples/Old_examples/schedule.rb +39 -0
  281. data/vendor/assets/build/medias/rubies/examples/Old_examples/scroll.rb +9 -0
  282. data/vendor/assets/build/medias/rubies/examples/Old_examples/select.rb +32 -0
  283. data/vendor/assets/build/medias/rubies/examples/Old_examples/selector.rb +6 -0
  284. data/vendor/assets/build/medias/rubies/examples/Old_examples/shadow.rb +30 -0
  285. data/vendor/assets/build/medias/rubies/examples/Old_examples/shape_with_path.rb +7 -0
  286. data/vendor/assets/build/medias/rubies/examples/Old_examples/size.rb +109 -0
  287. data/vendor/assets/build/medias/rubies/examples/Old_examples/smooth.rb +5 -0
  288. data/vendor/assets/build/medias/rubies/examples/Old_examples/speech_renderer.rb +5 -0
  289. data/vendor/assets/build/medias/rubies/examples/Old_examples/synth.rb +6 -0
  290. data/vendor/assets/build/medias/rubies/examples/Old_examples/system.rb +3 -0
  291. data/vendor/assets/build/medias/rubies/examples/Old_examples/tags.rb +18 -0
  292. data/vendor/assets/build/medias/rubies/examples/Old_examples/text.rb +33 -0
  293. data/vendor/assets/build/medias/rubies/examples/Old_examples/text_selection.rb +33 -0
  294. data/vendor/assets/build/medias/rubies/examples/Old_examples/text_to_midi.rb +22 -0
  295. data/vendor/assets/build/medias/rubies/examples/Old_examples/touch.rb +23 -0
  296. data/vendor/assets/build/medias/rubies/examples/Old_examples/touch_stop_propagation.rb +27 -0
  297. data/vendor/assets/build/medias/rubies/examples/Old_examples/treat_object_in_object.rb +26 -0
  298. data/vendor/assets/build/medias/rubies/examples/Old_examples/type_mutations.rb +27 -0
  299. data/vendor/assets/build/medias/rubies/examples/Old_examples/video_callback.rb +46 -0
  300. data/vendor/assets/build/medias/rubies/examples/Old_examples/view_mode.rb +29 -0
  301. data/vendor/assets/build/medias/rubies/examples/Old_examples/virtual_events.rb +17 -0
  302. data/vendor/assets/build/medias/rubies/examples/Old_examples/visual.rb +23 -0
  303. data/vendor/assets/build/medias/rubies/examples/Old_examples/vr_display.rb +5 -0
  304. data/vendor/assets/build/medias/rubies/examples/Old_examples/wait.rb +21 -0
  305. data/vendor/assets/build/medias/rubies/examples/Old_examples/web.rb +10 -0
  306. data/vendor/assets/build/medias/rubies/examples/Old_examples/web_address_bar.rb +14 -0
  307. data/vendor/assets/build/medias/rubies/examples/Old_examples/websocket.rb +16 -0
  308. data/vendor/assets/build/medias/rubies/examples/Old_examples/webstate.rb +10 -0
  309. data/vendor/assets/build/{js/atome/kernel.js → medias/rubies/examples/animation.rb} +0 -0
  310. data/vendor/assets/build/medias/rubies/examples/atome.new.rb +12 -0
  311. data/vendor/assets/build/medias/rubies/examples/auto_height.rb +3 -0
  312. data/vendor/assets/build/medias/rubies/examples/auto_width.rb +2 -0
  313. data/vendor/assets/build/medias/rubies/examples/bottom.rb +1 -0
  314. data/vendor/assets/build/medias/rubies/examples/box.rb +1 -0
  315. data/vendor/assets/build/{js/opal/opal_browser.js → medias/rubies/examples/circle.rb} +0 -0
  316. data/vendor/assets/build/medias/rubies/examples/color.rb +13 -0
  317. data/vendor/assets/build/medias/rubies/examples/create_atome_in_atome.rb +11 -0
  318. data/vendor/assets/build/medias/rubies/examples/drag.rb +5 -0
  319. data/vendor/assets/build/medias/rubies/examples/get_renderer_list.rb +1 -0
  320. data/vendor/assets/build/medias/rubies/examples/grab.rb +3 -0
  321. data/vendor/assets/build/medias/rubies/examples/height.rb +2 -0
  322. data/vendor/assets/build/medias/rubies/examples/image.rb +4 -0
  323. data/vendor/assets/build/medias/rubies/examples/left.rb +2 -0
  324. data/vendor/assets/build/medias/rubies/examples/link.rb +13 -0
  325. data/vendor/assets/build/medias/rubies/examples/parent.rb +12 -0
  326. data/vendor/assets/build/medias/rubies/examples/read.rb +3 -0
  327. data/vendor/assets/build/medias/rubies/examples/repeat.rb +3 -0
  328. data/vendor/assets/build/medias/rubies/examples/right.rb +1 -0
  329. data/vendor/assets/build/medias/rubies/examples/rotate.rb +2 -0
  330. data/vendor/assets/build/medias/rubies/examples/schedule.rb +13 -0
  331. data/vendor/assets/build/medias/rubies/examples/smooth.rb +3 -0
  332. data/vendor/assets/build/medias/rubies/examples/text.rb +5 -0
  333. data/vendor/assets/build/medias/rubies/examples/top.rb +1 -0
  334. data/vendor/assets/build/medias/rubies/examples/touch.rb +6 -0
  335. data/vendor/assets/build/medias/rubies/examples/video.rb +4 -0
  336. data/vendor/assets/build/medias/rubies/examples/wait.rb +3 -0
  337. data/vendor/assets/build/medias/rubies/examples/web.rb +9 -0
  338. data/vendor/assets/build/medias/rubies/examples/width.rb +2 -0
  339. data/vendor/assets/build/medias/rubies/test.rb +1 -0
  340. data/vendor/assets/build/medias/rubies/text_read.rb +1 -0
  341. data/vendor/assets/build/medias/rubies/users/code.rb +6 -0
  342. data/vendor/assets/build/medias/utils/infos/color.rb +29 -0
  343. data/vendor/assets/build/medias/utils/infos/width.rb +25 -0
  344. data/vendor/assets/build/medias/videos/video_missing.mp4 +0 -0
  345. data/vendor/assets/{index.rb → r&d/misc.rb} +54 -1
  346. data/vendor/assets/r&d/ping.rb +3 -0
  347. data/vendor/assets/r&d/storage.rb +9 -0
  348. data/vendor/assets/r&d/view_example.rb +21 -0
  349. data/vendor/assets/server/atome_server.rb +74 -27
  350. data/vendor/assets/server/config.ru +2 -14
  351. metadata +424 -12
  352. data/lib/atome/kernel/atome_genesis.rb +0 -2
  353. data/lib/atome/kernel/properties/geometry.rb +0 -2
  354. data/vendor/assets/build/js/opal/opal_parser.js +0 -0
@@ -0,0 +1,12 @@
1
+ circle({id: :circle_12})
2
+ grab(:c315).parent([:circle_12])
3
+ a.shape.parent([:circle_12])
4
+
5
+
6
+ circle({ id: :circle_123, color: :cyan })
7
+ box({ id: :box_1, left: 333 })
8
+ bb=box({top: 99})
9
+ grab(:box_1).parent(:circle_123)
10
+ grab(:color_circle_123).parent([:box_1])
11
+
12
+ bb.parent([:box_1])
@@ -0,0 +1,3 @@
1
+
2
+ read('examples/image.rb', :ruby)
3
+ read('examples/image.rb', :text)
@@ -0,0 +1,3 @@
1
+ repeat 0.3, 10 do |evt|
2
+ puts "hello:#{evt}:"
3
+ end
@@ -0,0 +1 @@
1
+ box({ right: 120 })
@@ -0,0 +1,2 @@
1
+ b = box({ width: 333, left: 333 })
2
+ b.rotate(999)
@@ -0,0 +1,13 @@
1
+
2
+ " date can be entered in several ways , 2 digit it'll be the next time the seconds match ,
3
+ if 2 digits the minutes and seconds and so on, you can also enter Time.now+3 (not a,string) for schedule in 3 sec "
4
+
5
+ time_to_run= Time.now+6
6
+ puts 'event schedule'
7
+ schedule(time_to_run) do
8
+ puts 'event executed'
9
+ # i=image({ content: :boat , drag: :true, x: 99, y:99 })
10
+ # wait 2 do
11
+ # i.delete(true)
12
+ # end
13
+ end
@@ -0,0 +1,3 @@
1
+ b = box({ width: 333, left: 333 })
2
+
3
+ b.smooth([33, 2, 90])
@@ -0,0 +1,5 @@
1
+ text = Atome.new(
2
+ text: { render: [:html], id: :text1, type: :text, parent: [:view], visual: { size: 33 }, string: "hello!", left: 399, top: 633, width: 199, height: 33,
3
+ }
4
+ )
5
+ text.text.string(:kool)
@@ -0,0 +1,6 @@
1
+ b = box({ width: 333, left: 666})
2
+
3
+ b.touch(true) do
4
+ color({ render: [:html], id: "color_#{Universe.atomes.length}", type: :color,
5
+ red: 1, green: 0.33, blue: 0.22, alpha: 1 })
6
+ end
@@ -0,0 +1,4 @@
1
+ Atome.new(
2
+ video: { render: [:html], id: :video1, type: :video, parent: [:view], path: "./medias/videos/avengers.mp4", left: 333, top: 333, width: 199, height: 99,
3
+ }
4
+ )
@@ -0,0 +1,3 @@
1
+ wait 2 do
2
+ puts "the wait is over"
3
+ end
@@ -0,0 +1,9 @@
1
+ Atome.new(
2
+ image: { render: [:html], id: :image1, type: :image, parent: [:view], path: "https://interactive-examples.mdn.mozilla.net/media/cc0-images/grapefruit-slice-332-332.jpg", left: 99, top: 120, width: 199, height: 199,
3
+ }
4
+ )
5
+
6
+ Atome.new(
7
+ web: { render: [:html], id: :image1, type: :web, parent: [:view], path: "https://www.youtube.com/embed/usQDazZKWAk", left: 99, top: 120, width: 199, height: 199,
8
+ }
9
+ )
@@ -0,0 +1,2 @@
1
+ b = box({ left: 333 })
2
+ b.width(33)
@@ -0,0 +1 @@
1
+ box(center: true, color: :orange, smooth: 6)
@@ -0,0 +1 @@
1
+ {temperature: 33, wind: 45, humidity: 79, pressure: 6}
@@ -0,0 +1,6 @@
1
+ text(:chambon)
2
+ b=box(color: :red)
3
+ b.drag(true)
4
+ # b.read("hello")
5
+ grab(:device).read(1)
6
+ grab(:device).write("hello")
@@ -0,0 +1,29 @@
1
+ descriptions <<~STRDELIM
2
+ change object color
3
+ it accept either a RGB value or a string
4
+ STRDELIM
5
+ params = [:red, :green, :blue, :alpha, :x, :y, :diffusion]
6
+ tips = "just send two color to create a gradient"
7
+ examples = { basic: "b=box\nb.color(:red)", transparency: "b=box\nb.color({alpha: 0.2})" }
8
+ todos = ["add :z property"]
9
+ tests = ["write tests here"]
10
+ bugs = ["bug found here"]
11
+ visuals = ["medias/images/atome_quark/color.png"]
12
+ tutorials = ["draw a box , make it red", { video: "medias/videos/tutorials/color.mp4" }]
13
+ links = ["https://www.pinterest.fr/pin/452189618834509903/"]
14
+ documentations = [""]
15
+
16
+ {
17
+ descriptions: descriptions,
18
+ params: params,
19
+ tips: tips,
20
+ examples: examples,
21
+ todos: todos,
22
+ tests: tests,
23
+ bugs: bugs,
24
+ visuals: visuals,
25
+ tutorials: tutorials,
26
+ links: links,
27
+ documentations: documentations }
28
+
29
+
@@ -0,0 +1,25 @@
1
+ descriptions ={first: "define the width of obect"}
2
+ params = {}
3
+ tips = {}
4
+ examples = {first: "b=box\nb.width(333)\nb.color(:yellow)\nb.x(99)", second:"b=box\nb.width('66%')\nb.color(:red)\nb.x(99)" }
5
+ todos = {}
6
+ tests = {}
7
+ bugs = {}
8
+ visuals = {}
9
+ tutorials = {}
10
+ links = {}
11
+ documentations = {}
12
+
13
+ data={
14
+ descriptions: descriptions,
15
+ params: params,
16
+ tips: tips,
17
+ examples: examples,
18
+ todos: todos,
19
+ tests: tests,
20
+ bugs: bugs,
21
+ visuals: visuals,
22
+ tutorials: tutorials,
23
+ links: links,
24
+ documentations: documentations }
25
+ data
@@ -1,3 +1,13 @@
1
+
2
+ b=box()
3
+ # b.x(33)
4
+ def custom_code val
5
+ `console.log(#{val})`
6
+ end
7
+
8
+ custom_code "good news for you"
9
+ # todo change server strategy and use index.html to test server and connect to it if no connection stay use opal
10
+ require 'application/view_example'
1
11
  # def toto(e)
2
12
  # e.prevent
3
13
  # e.on.inner_text = "Super Clicked!"
@@ -143,7 +153,7 @@ ws.on :open do
143
153
  end
144
154
 
145
155
  ws.on :message do |e|
146
- alert e.data
156
+ puts "message received from websocket#{ e.data}"
147
157
  end
148
158
 
149
159
 
@@ -161,6 +171,49 @@ end
161
171
  my_msg={ foo: "bar" }
162
172
  my_msg=JSON.generate(my_msg)
163
173
  send_message(ws,my_msg)
174
+ # aa=Digest::SHA1.hexdigest "foo"
175
+ # alert aa
176
+ # if RUBY_ENGINE.downcase == 'opal'
177
+ # puts "ok"
178
+ # # require 'atome/extensions/sha_opal.rb'
179
+ # else
180
+ # require 'atome/extensions/sha_ruby.rb'
181
+ # puts "pas ok"
182
+ #
183
+ # end
184
+
185
+
186
+ # if RUBY_ENGINE.downcase != 'opal'
187
+ # alert :no
188
+ # else
189
+ # alert :good
190
+ # end
164
191
 
192
+ # alert calculate_sha("jeezs")
193
+ puts "hellodf=lkjsmlfkjmhljsmfglhkjmflghkjdmlfgkjhmslkfgjh".to_i(36)
194
+
195
+ puts "foo".hash
196
+
197
+
198
+
199
+
200
+ # require 'browser/database/sql'
201
+ #
202
+ # db = Browser::Database::SQL.new 'test'
203
+ # db.transaction {|t|
204
+ # t.query('CREATE TABLE test(ID INTEGER PRIMARY KEY ASC, text TEXT)').then {
205
+ # t.query('INSERT INTO test (id, text) VALUES(?, ?)', 1, 'huehue')
206
+ # }.then {
207
+ # t.query('INSERT INTO test (id, text) VALUES(?, ?)', 2, 'jajaja')
208
+ # }.then {
209
+ # t.query('SELECT * FROM test')
210
+ # }.then {|r|
211
+ # r.each {|row|
212
+ # alert row.inspect
213
+ # }
214
+ # }
215
+ # }
165
216
 
166
217
 
218
+ puts "Universe identity is : #{Universe.app_identity}"
219
+ # alert Atome.aui
@@ -0,0 +1,3 @@
1
+ # Storage example
2
+ a=Atome.new
3
+ a.ping('apple.com')
@@ -0,0 +1,9 @@
1
+ # Storage example
2
+ require 'browser/storage'
3
+
4
+ $storage = $window.storage
5
+ $storage[:hello] = { jeezs: { data: :kool } }
6
+
7
+ # alert($storage[:hello][:jeezs])
8
+ $storage[:hello][:jeezs][:toto]=:titi
9
+ puts "storage content is : #{$storage[:hello]}"
@@ -0,0 +1,21 @@
1
+
2
+ `function addElement (width) {
3
+ // crée un nouvel élément div
4
+ var newDiv = document.createElement("div");
5
+ // et lui donne un peu de contenu
6
+ var newContent = document.createTextNode('Hi there and greetings!');
7
+ // ajoute le nœud texte au nouveau div créé
8
+ newDiv.appendChild(newContent);
9
+ newDiv.id='div1';
10
+
11
+ // ajoute le nouvel élément créé et son contenu dans le DOM
12
+ var currentDiv = document.getElementById('div1');
13
+ document.body.insertBefore(newDiv, currentDiv);
14
+ }
15
+
16
+ addElement();
17
+
18
+
19
+ var selectedRow = document.querySelector('div#div1');
20
+ selectedRow.style.color = 'black';
21
+ selectedRow.style.backgroundColor = 'orange';`
@@ -1,17 +1,22 @@
1
1
  # frozen_string_literal: true
2
2
  # atome server
3
-
4
- if RUBY_PLATFORM == "x64-mingw32"
5
- require "em/pure_ruby"
3
+ if RUBY_PLATFORM == 'x64-mingw32'
4
+ require 'em/pure_ruby'
6
5
  end
7
- require "roda"
8
- require "sequel"
9
- require "rufus-scheduler"
10
- require "faye/websocket"
11
- require "json"
12
- require "securerandom"
13
- require "mail"
14
- require "digest"
6
+ require 'atome'
7
+ require '../aui.rb'
8
+ require 'digest/sha2'
9
+ require 'faye/websocket'
10
+ require 'geocoder'
11
+ require 'json'
12
+ require 'mail'
13
+ require 'net/ping'
14
+ require 'roda'
15
+ require 'rufus-scheduler'
16
+ require 'securerandom'
17
+ require 'sequel'
18
+
19
+
15
20
 
16
21
  class String
17
22
  def is_json?
@@ -23,20 +28,63 @@ class String
23
28
  end
24
29
  end
25
30
 
26
- class App < Roda
27
- eden = Sequel.connect("sqlite://eden.sqlite3")
28
- unless File.exist?("eden.sqlite3")
29
- eden.create_table :objects do
30
- primary_key :atome_id
31
- String :id
32
- String :type
33
- String :name
34
- String :content
31
+ class Database
32
+ def self.connect_database
33
+ if File.exist?("eden.sqlite3")
34
+ eden=Sequel.connect("sqlite://eden.sqlite3")
35
+ else
36
+ eden=Sequel.connect("sqlite://eden.sqlite3")
37
+ eden.create_table :atome do
38
+ primary_key :atome_id
39
+ String :aui
40
+ String :id
41
+ String :type
42
+ String :name
43
+ String :content
44
+ String :position
45
+ String :dimension
46
+ String :color
47
+ String :right
48
+ String :effect
49
+ String :shadow
50
+ String :border
51
+ String :fill
52
+ Float :x
53
+ Float :xx
54
+ Float :y
55
+ Float :yy
56
+ Float :z
57
+ Float :zz
58
+ Float :width
59
+ Float :height
60
+ Float :depth
61
+ end
62
+
35
63
  end
64
+ eden
36
65
  end
66
+
67
+ end
68
+
69
+ class App < Roda
70
+ ## comment below when test will be done
71
+ File.delete("./eden.sqlite3") if File.exist?("./eden.sqlite3")
72
+ eden=Database.connect_database
73
+ items = eden[:atome]
74
+
75
+ # populate the table
76
+ items.insert(name: 'abc', width: rand * 100)
77
+ items.insert(name: 'def', width: rand * 100)
78
+ items.insert(name: 'ghi', width: rand * 100)
79
+
80
+ puts "Item count: #{items.count}"
81
+
82
+ puts "The average price is: #{items.avg(:width)}"
83
+
84
+
37
85
  index_content = File.read("../build/index.html")
38
86
 
39
- require 'atome'
87
+
40
88
  opts[:root] = '../build'
41
89
  plugin :static, %w[/css /js /medias], root: '../build'
42
90
  route do |r|
@@ -46,7 +94,10 @@ class App < Roda
46
94
  client_data = event.data
47
95
  if client_data.is_json?
48
96
  # to get hash from data: data_to_hash = JSON.parse(client_data)
49
- websocket.send(client_data)
97
+ # websocket.send(client_data)
98
+ websocket.send("The average price must be: #{items.avg(:width)}")
99
+ uuid = SecureRandom.uuid
100
+ websocket.send("The coded uuid is : #{uuid}")
50
101
  end
51
102
  end
52
103
  websocket.on :open do
@@ -61,11 +112,7 @@ class App < Roda
61
112
  r.redirect "/index"
62
113
  end
63
114
  r.on "index" do
64
- r.is do
65
- r.get do
66
- index_content
67
- end
68
- end
115
+ index_content
69
116
  end
70
117
  end
71
118
  end
@@ -1,20 +1,8 @@
1
1
  # frozen_string_literal: true
2
- # cat config.ru
3
- # to run avec rackup :
4
- # rackup -p 4567
5
- # to run avec Puma :
6
- # puma
7
2
 
8
3
  require 'roda'
9
- Thread.new do
10
- sleep 1.5
11
- system("open", "http://127.0.0.1:9292")
12
- end
13
-
14
4
  require 'rack/unreloader'
5
+
15
6
  Unreloader = Rack::Unreloader.new(subclasses: %w[Roda]) { App }
16
7
  Unreloader.require './atome_server.rb'
17
- # uncomment to allow code reloading
18
- # run Unreloader
19
- # uncomment below for prod or comment to allow code reloading
20
- run App.freeze.app
8
+ run Unreloader