atome 0.5.7.0.3 → 0.3191

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of atome might be problematic. Click here for more details.

Files changed (472) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +4 -4
  3. data/README.md +5 -77
  4. data/Rakefile +7 -502
  5. data/app_builder_helpers/Rakefile +235 -0
  6. data/documentation/framework/enhance_atome.md +1 -1
  7. data/documentation/installation/atome_server.md +1 -66
  8. data/documentation/tutorials/tutorials.md +0 -7
  9. data/exe/atome +157 -819
  10. data/lib/atome/atome_native_extensions.rb +3 -0
  11. data/lib/atome/extensions/geolocation.rb +1 -1
  12. data/lib/atome/extensions/ping.rb +11 -10
  13. data/lib/atome/extensions/sha.rb +6 -8
  14. data/lib/atome/kernel/atome_genesis.rb +93 -0
  15. data/lib/atome/kernel/generators/shapes.rb +7 -0
  16. data/lib/atome/kernel/properties/geometry.rb +120 -0
  17. data/lib/atome/kernel/universe.rb +24 -295
  18. data/lib/atome/renderers/headless/headless.rb +0 -0
  19. data/lib/atome/renderers/headless/properties/generator.rb +0 -0
  20. data/lib/atome/renderers/opal/atome_opal_extensions.rb +4 -0
  21. data/lib/{platform_specific → atome/renderers}/opal/extensions/geolocation.rb +1 -1
  22. data/lib/atome/renderers/opal/extensions/ping.rb +13 -0
  23. data/lib/atome/renderers/opal/extensions/sha.rb +11 -0
  24. data/lib/atome/renderers/opal/opal_browser.rb +8 -0
  25. data/lib/{platform_specific → atome/renderers}/opal/opal_parser.rb +0 -1
  26. data/lib/atome/renderers/opal/properties/generator.rb +6 -0
  27. data/lib/atome/renderers/server/server.rb +0 -0
  28. data/lib/atome/version.rb +1 -2
  29. data/lib/atome.rb +16 -35
  30. data/sig/atome.rbs +0 -75
  31. data/vendor/assets/Guardfile +4 -0
  32. data/vendor/assets/Rakefile +2 -12
  33. data/vendor/assets/application/index.rb +2 -7
  34. data/vendor/assets/build/css/style.css +53 -0
  35. data/vendor/assets/build/index.html +24 -0
  36. data/vendor/assets/build/js/application.js +0 -0
  37. data/vendor/assets/build/js/third_parties/interact.min.js +4 -0
  38. data/vendor/assets/build/js/third_parties/popmotion.min.js +1 -0
  39. data/vendor/assets/examples/misc.rb +219 -0
  40. data/vendor/assets/examples/ping.rb +3 -0
  41. data/vendor/assets/examples/storage.rb +9 -0
  42. data/vendor/assets/examples/view_example.rb +21 -0
  43. data/vendor/assets/server/atome_server.rb +96 -33
  44. data/vendor/assets/server/config.ru +3 -8
  45. metadata +69 -512
  46. data/CHANGELOG.md +0 -21
  47. data/atome.gemspec +0 -100
  48. data/documentation/basic.md +0 -241
  49. data/documentation/deep learning/architecture.txt +0 -3763
  50. data/documentation/deep learning/atome.png +0 -0
  51. data/documentation/deep learning/basic_infos.txt +0 -289
  52. data/documentation/deep learning/example_of_users_code.rb +0 -1810
  53. data/documentation/deep learning/misc.txt +0 -24
  54. data/documentation/deep learning/ruby_js_example.rb +0 -272
  55. data/documentation/deep learning/wasm_script_help.text +0 -14
  56. data/documentation/installation/buiding_atome.md +0 -307
  57. data/lib/atome/atome.rb +0 -131
  58. data/lib/atome/extensions/atome.rb +0 -705
  59. data/lib/atome/extensions/mathematics.rb +0 -20
  60. data/lib/atome/genesis/atomes.rb +0 -109
  61. data/lib/atome/genesis/genesis.rb +0 -272
  62. data/lib/atome/genesis/particles/atome.rb +0 -4
  63. data/lib/atome/genesis/particles/communication.rb +0 -43
  64. data/lib/atome/genesis/particles/effect.rb +0 -14
  65. data/lib/atome/genesis/particles/event.rb +0 -344
  66. data/lib/atome/genesis/particles/geometry.rb +0 -31
  67. data/lib/atome/genesis/particles/hierarchy.rb +0 -105
  68. data/lib/atome/genesis/particles/identity.rb +0 -82
  69. data/lib/atome/genesis/particles/material.rb +0 -119
  70. data/lib/atome/genesis/particles/property.rb +0 -147
  71. data/lib/atome/genesis/particles/security.rb +0 -77
  72. data/lib/atome/genesis/particles/spatial.rb +0 -98
  73. data/lib/atome/genesis/particles/time.rb +0 -4
  74. data/lib/atome/genesis/particles/utility.rb +0 -261
  75. data/lib/atome/genesis/presets.rb +0 -10
  76. data/lib/atome/genesis/sparkle.rb +0 -217
  77. data/lib/atome/kernel/black_matter.rb +0 -22
  78. data/lib/atome/presets/atome.rb +0 -79
  79. data/lib/atome/utilities/color_helper/color/cmyk.rb +0 -263
  80. data/lib/atome/utilities/color_helper/color/css.rb +0 -7
  81. data/lib/atome/utilities/color_helper/color/grayscale.rb +0 -197
  82. data/lib/atome/utilities/color_helper/color/hsl.rb +0 -240
  83. data/lib/atome/utilities/color_helper/color/palette/adobecolor.rb +0 -260
  84. data/lib/atome/utilities/color_helper/color/palette/gimp.rb +0 -104
  85. data/lib/atome/utilities/color_helper/color/palette/monocontrast.rb +0 -164
  86. data/lib/atome/utilities/color_helper/color/palette.rb +0 -4
  87. data/lib/atome/utilities/color_helper/color/rgb/colors.rb +0 -167
  88. data/lib/atome/utilities/color_helper/color/rgb/contrast.rb +0 -57
  89. data/lib/atome/utilities/color_helper/color/rgb/metallic.rb +0 -28
  90. data/lib/atome/utilities/color_helper/color/rgb.rb +0 -715
  91. data/lib/atome/utilities/color_helper/color/yiq.rb +0 -62
  92. data/lib/atome/utilities/color_helper/color.rb +0 -415
  93. data/lib/atome/utilities/essentials.rb +0 -70
  94. data/lib/atome/utilities/sanitizer.rb +0 -13
  95. data/lib/atome/utilities/security.rb +0 -71
  96. data/lib/atome/utilities/utilities.rb +0 -656
  97. data/lib/atome_relative.rb +0 -39
  98. data/lib/molecules/_deprecated_examples/site.rb +0 -34
  99. data/lib/molecules/init.rb +0 -31
  100. data/lib/molecules/intuition/_deprecated_inputs.rb +0 -111
  101. data/lib/molecules/intuition/_deprecated_toolbox.rb +0 -282
  102. data/lib/molecules/intuition/utillities.rb +0 -408
  103. data/lib/platform_specific/opal/atome_opal_extensions.rb +0 -11
  104. data/lib/platform_specific/opal/extensions/color.rb +0 -30
  105. data/lib/platform_specific/opal/extensions/js.rb +0 -20
  106. data/lib/platform_specific/opal/extensions/object.rb +0 -6
  107. data/lib/platform_specific/opal/extensions/ping.rb +0 -31
  108. data/lib/platform_specific/opal/extensions/sha.rb +0 -25
  109. data/lib/platform_specific/opal/opal.rb +0 -5
  110. data/lib/platform_specific/wasm/atome_wasm_extensions.rb +0 -11
  111. data/lib/renderers/headless/headless.rb +0 -18
  112. data/lib/renderers/headless/index.rb +0 -6
  113. data/lib/renderers/headless/index_relative.rb +0 -6
  114. data/lib/renderers/headless/utility.rb +0 -6
  115. data/lib/renderers/html/atome.rb +0 -2
  116. data/lib/renderers/html/atome_html.rb +0 -22
  117. data/lib/renderers/html/communication.rb +0 -3
  118. data/lib/renderers/html/effect.rb +0 -51
  119. data/lib/renderers/html/event.rb +0 -59
  120. data/lib/renderers/html/geometry.rb +0 -49
  121. data/lib/renderers/html/hierarchy.rb +0 -248
  122. data/lib/renderers/html/html.rb +0 -1688
  123. data/lib/renderers/html/identity.rb +0 -104
  124. data/lib/renderers/html/index.rb +0 -19
  125. data/lib/renderers/html/index_relative.rb +0 -20
  126. data/lib/renderers/html/material.rb +0 -88
  127. data/lib/renderers/html/property.rb +0 -52
  128. data/lib/renderers/html/security.rb +0 -1
  129. data/lib/renderers/html/spatial.rb +0 -75
  130. data/lib/renderers/html/time.rb +0 -1
  131. data/lib/renderers/html/utility.rb +0 -170
  132. data/lib/renderers/renderer.rb +0 -16
  133. data/lib/renderers/server/index.rb +0 -4
  134. data/lib/renderers/server/index_relative.rb +0 -4
  135. data/lib/renderers/server/utility.rb +0 -4
  136. data/sig/atome_js.rbs +0 -1
  137. data/sig/batch.rbs +0 -7
  138. data/sig/browser_helper.rbs +0 -14
  139. data/sig/essentials.rbs +0 -11
  140. data/sig/genesis.rbs +0 -3
  141. data/sig/global_variables.rbs +0 -1
  142. data/sig/matrix.rbs +0 -5
  143. data/sig/object.rbs +0 -7
  144. data/sig/universe.rbs +0 -3
  145. data/src/utilities/host_mode.rb +0 -5
  146. data/vendor/assets/application/examples/affect.rb +0 -8
  147. data/vendor/assets/application/examples/aid.rb +0 -10
  148. data/vendor/assets/application/examples/allow_copy.rb +0 -13
  149. data/vendor/assets/application/examples/allow_system_right_click.rb +0 -16
  150. data/vendor/assets/application/examples/alternate.rb +0 -36
  151. data/vendor/assets/application/examples/animation.rb +0 -91
  152. data/vendor/assets/application/examples/apply.rb +0 -8
  153. data/vendor/assets/application/examples/atome.rb +0 -5
  154. data/vendor/assets/application/examples/atome_particle_validation.rb +0 -7
  155. data/vendor/assets/application/examples/atome_sparkle_use.rb +0 -6
  156. data/vendor/assets/application/examples/atomizer.rb +0 -86
  157. data/vendor/assets/application/examples/attach.rb +0 -34
  158. data/vendor/assets/application/examples/attached.rb +0 -45
  159. data/vendor/assets/application/examples/b64_to_image.rb +0 -9
  160. data/vendor/assets/application/examples/basic_understanding.rb +0 -54
  161. data/vendor/assets/application/examples/behavior.rb +0 -32
  162. data/vendor/assets/application/examples/blur.rb +0 -26
  163. data/vendor/assets/application/examples/border.rb +0 -75
  164. data/vendor/assets/application/examples/browse.rb +0 -17
  165. data/vendor/assets/application/examples/categories.rb +0 -5
  166. data/vendor/assets/application/examples/category.rb +0 -16
  167. data/vendor/assets/application/examples/center.rb +0 -7
  168. data/vendor/assets/application/examples/clear.rb +0 -96
  169. data/vendor/assets/application/examples/clones&monitoring.rb +0 -105
  170. data/vendor/assets/application/examples/code.rb +0 -13
  171. data/vendor/assets/application/examples/color.rb +0 -54
  172. data/vendor/assets/application/examples/compute.rb +0 -16
  173. data/vendor/assets/application/examples/console.rb +0 -4
  174. data/vendor/assets/application/examples/convert.rb +0 -163
  175. data/vendor/assets/application/examples/copy.rb +0 -25
  176. data/vendor/assets/application/examples/copybck.rb +0 -68
  177. data/vendor/assets/application/examples/css.rb +0 -6
  178. data/vendor/assets/application/examples/database_handling.rb +0 -39
  179. data/vendor/assets/application/examples/debug.rb +0 -78
  180. data/vendor/assets/application/examples/delete.rb +0 -105
  181. data/vendor/assets/application/examples/dig.rb +0 -13
  182. data/vendor/assets/application/examples/display.rb +0 -279
  183. data/vendor/assets/application/examples/display_bck.rb +0 -164
  184. data/vendor/assets/application/examples/drag.rb +0 -54
  185. data/vendor/assets/application/examples/drop.rb +0 -35
  186. data/vendor/assets/application/examples/duplicate.rb +0 -70
  187. data/vendor/assets/application/examples/edit.rb +0 -24
  188. data/vendor/assets/application/examples/encode.rb +0 -6
  189. data/vendor/assets/application/examples/encrypt.rb +0 -6
  190. data/vendor/assets/application/examples/example.rb +0 -27
  191. data/vendor/assets/application/examples/executor.rb +0 -36
  192. data/vendor/assets/application/examples/file.rb +0 -16
  193. data/vendor/assets/application/examples/fill.rb +0 -23
  194. data/vendor/assets/application/examples/find.rb +0 -158
  195. data/vendor/assets/application/examples/fit.rb +0 -26
  196. data/vendor/assets/application/examples/fonts.rb +0 -15
  197. data/vendor/assets/application/examples/generator_and_build.rb +0 -15
  198. data/vendor/assets/application/examples/getter.rb +0 -16
  199. data/vendor/assets/application/examples/grab.rb +0 -14
  200. data/vendor/assets/application/examples/gradient.rb +0 -40
  201. data/vendor/assets/application/examples/group.rb +0 -44
  202. data/vendor/assets/application/examples/help.rb +0 -17
  203. data/vendor/assets/application/examples/hierarchy.rb +0 -21
  204. data/vendor/assets/application/examples/history.rb +0 -32
  205. data/vendor/assets/application/examples/holder.rb +0 -62
  206. data/vendor/assets/application/examples/hypertext.rb +0 -113
  207. data/vendor/assets/application/examples/image.rb +0 -5
  208. data/vendor/assets/application/examples/import.rb +0 -33
  209. data/vendor/assets/application/examples/increment.rb +0 -23
  210. data/vendor/assets/application/examples/infos.rb +0 -10
  211. data/vendor/assets/application/examples/input.rb +0 -34
  212. data/vendor/assets/application/examples/int8.rb +0 -17
  213. data/vendor/assets/application/examples/js&ruby.rb +0 -18
  214. data/vendor/assets/application/examples/keyboard.rb +0 -59
  215. data/vendor/assets/application/examples/layout.rb +0 -38
  216. data/vendor/assets/application/examples/list.rb +0 -72
  217. data/vendor/assets/application/examples/localstorage.rb +0 -19
  218. data/vendor/assets/application/examples/login.rb +0 -84
  219. data/vendor/assets/application/examples/markup.rb +0 -4
  220. data/vendor/assets/application/examples/match.rb +0 -115
  221. data/vendor/assets/application/examples/matrix.rb +0 -118
  222. data/vendor/assets/application/examples/monitor.rb +0 -14
  223. data/vendor/assets/application/examples/on_resize.rb +0 -7
  224. data/vendor/assets/application/examples/on_the_fly_ruby_code_loading.rb +0 -9
  225. data/vendor/assets/application/examples/online.rb +0 -3
  226. data/vendor/assets/application/examples/opacity.rb +0 -9
  227. data/vendor/assets/application/examples/over.rb +0 -29
  228. data/vendor/assets/application/examples/paint.rb +0 -29
  229. data/vendor/assets/application/examples/particles.rb +0 -4
  230. data/vendor/assets/application/examples/percent_to_px.rb +0 -4
  231. data/vendor/assets/application/examples/play.rb +0 -50
  232. data/vendor/assets/application/examples/preset.rb +0 -33
  233. data/vendor/assets/application/examples/random.rb +0 -42
  234. data/vendor/assets/application/examples/raw_html.rb +0 -48
  235. data/vendor/assets/application/examples/read.rb +0 -13
  236. data/vendor/assets/application/examples/recorder.rb +0 -74
  237. data/vendor/assets/application/examples/refresh.rb +0 -62
  238. data/vendor/assets/application/examples/remove.rb +0 -60
  239. data/vendor/assets/application/examples/repeat.rb +0 -26
  240. data/vendor/assets/application/examples/resize.rb +0 -17
  241. data/vendor/assets/application/examples/scroll.rb +0 -11
  242. data/vendor/assets/application/examples/security.rb +0 -76
  243. data/vendor/assets/application/examples/select_text.rb +0 -18
  244. data/vendor/assets/application/examples/selected.rb +0 -35
  245. data/vendor/assets/application/examples/server.rb +0 -24
  246. data/vendor/assets/application/examples/shadow.rb +0 -60
  247. data/vendor/assets/application/examples/shapes.rb +0 -6
  248. data/vendor/assets/application/examples/shortcut.rb +0 -25
  249. data/vendor/assets/application/examples/site.rb +0 -41
  250. data/vendor/assets/application/examples/size.rb +0 -17
  251. data/vendor/assets/application/examples/sliders.rb +0 -17
  252. data/vendor/assets/application/examples/smooth.rb +0 -9
  253. data/vendor/assets/application/examples/style.rb +0 -4
  254. data/vendor/assets/application/examples/sub_atome_manipulation.rb +0 -20
  255. data/vendor/assets/application/examples/svg_img_to_vector.rb +0 -6
  256. data/vendor/assets/application/examples/svg_vectorizer.rb +0 -21
  257. data/vendor/assets/application/examples/sync.rb +0 -38
  258. data/vendor/assets/application/examples/table.rb +0 -76
  259. data/vendor/assets/application/examples/tagged.rb +0 -24
  260. data/vendor/assets/application/examples/terminal.rb +0 -4
  261. data/vendor/assets/application/examples/test.rb +0 -584
  262. data/vendor/assets/application/examples/text.rb +0 -5
  263. data/vendor/assets/application/examples/tick.rb +0 -29
  264. data/vendor/assets/application/examples/tools.rb +0 -666
  265. data/vendor/assets/application/examples/touch.rb +0 -41
  266. data/vendor/assets/application/examples/type_mutation.rb +0 -18
  267. data/vendor/assets/application/examples/unit.rb +0 -14
  268. data/vendor/assets/application/examples/universe.rb +0 -8
  269. data/vendor/assets/application/examples/vector.rb +0 -37
  270. data/vendor/assets/application/examples/video.rb +0 -14
  271. data/vendor/assets/application/examples/wait.rb +0 -6
  272. data/vendor/assets/application/examples/www.rb +0 -10
  273. data/vendor/assets/server/atome_server_wasm.rb +0 -54
  274. data/vendor/assets/server/capture.rb +0 -10
  275. data/vendor/assets/server/database.rb +0 -63
  276. data/vendor/assets/server/eDen.rb +0 -302
  277. data/vendor/assets/server/extensions.rb +0 -13
  278. data/vendor/assets/src/css/style.css +0 -167
  279. data/vendor/assets/src/index.html +0 -45
  280. data/vendor/assets/src/index_opal.html +0 -40
  281. data/vendor/assets/src/index_server.html +0 -38
  282. data/vendor/assets/src/index_server_wasm.html +0 -45
  283. data/vendor/assets/src/index_wasm.html +0 -50
  284. data/vendor/assets/src/js/atome/atome.js +0 -506
  285. data/vendor/assets/src/js/atome/atome_helpers/add_font.js +0 -46
  286. data/vendor/assets/src/js/atome/atome_helpers/atome_animate.js +0 -65
  287. data/vendor/assets/src/js/atome/atome_helpers/atome_drag.js +0 -124
  288. data/vendor/assets/src/js/atome/atome_helpers/atome_drop.js +0 -12
  289. data/vendor/assets/src/js/atome/atome_helpers/atome_events.js +0 -171
  290. data/vendor/assets/src/js/atome/atome_helpers/atome_over.js +0 -43
  291. data/vendor/assets/src/js/atome/atome_helpers/atome_sort.js +0 -20
  292. data/vendor/assets/src/js/atome/atome_helpers/atome_time.js +0 -10
  293. data/vendor/assets/src/js/atome/atome_helpers/atome_video.js +0 -12
  294. data/vendor/assets/src/js/atome/atome_helpers/communication.js +0 -35
  295. data/vendor/assets/src/js/atome/atome_helpers/file.js +0 -12
  296. data/vendor/assets/src/js/atome/specific/opal.js +0 -111
  297. data/vendor/assets/src/js/atome/specific/wasm.js +0 -123
  298. data/vendor/assets/src/js/molecules/web.js +0 -4
  299. data/vendor/assets/src/js/third_parties/browser.script.iife.min.js +0 -13
  300. data/vendor/assets/src/js/third_parties/fabric.min.js +0 -1
  301. data/vendor/assets/src/js/third_parties/html-to-image.min.js +0 -2
  302. data/vendor/assets/src/js/third_parties/interact.min.js +0 -3
  303. data/vendor/assets/src/js/third_parties/jsencrypt.min.js +0 -2
  304. data/vendor/assets/src/js/third_parties/papaparse.min.js +0 -7
  305. data/vendor/assets/src/js/third_parties/popmotion.min.js +0 -1
  306. data/vendor/assets/src/js/third_parties/sortable.min.js +0 -2
  307. data/vendor/assets/src/js/third_parties/three.min.js +0 -6
  308. data/vendor/assets/src/js/third_parties/w3color.js +0 -646
  309. data/vendor/assets/src/js/third_parties/wad.min.js +0 -9
  310. data/vendor/assets/src/js/third_parties/zim.min.js +0 -1
  311. data/vendor/assets/src/medias/audios/audio_missing.wav +0 -0
  312. data/vendor/assets/src/medias/audios/clap.wav +0 -0
  313. data/vendor/assets/src/medias/audios/cowbell.wav +0 -0
  314. data/vendor/assets/src/medias/audios/hihat.wav +0 -0
  315. data/vendor/assets/src/medias/audios/kick.wav +0 -0
  316. data/vendor/assets/src/medias/audios/riff.m4a +0 -0
  317. data/vendor/assets/src/medias/audios/snare.wav +0 -0
  318. data/vendor/assets/src/medias/audios/tom.wav +0 -0
  319. data/vendor/assets/src/medias/fonts/Roboto/LICENSE.txt +0 -202
  320. data/vendor/assets/src/medias/fonts/Roboto/Roboto-Black.ttf +0 -0
  321. data/vendor/assets/src/medias/fonts/Roboto/Roboto-BlackItalic.ttf +0 -0
  322. data/vendor/assets/src/medias/fonts/Roboto/Roboto-Bold.ttf +0 -0
  323. data/vendor/assets/src/medias/fonts/Roboto/Roboto-BoldItalic.ttf +0 -0
  324. data/vendor/assets/src/medias/fonts/Roboto/Roboto-Italic.ttf +0 -0
  325. data/vendor/assets/src/medias/fonts/Roboto/Roboto-Light.ttf +0 -0
  326. data/vendor/assets/src/medias/fonts/Roboto/Roboto-LightItalic.ttf +0 -0
  327. data/vendor/assets/src/medias/fonts/Roboto/Roboto-Medium.ttf +0 -0
  328. data/vendor/assets/src/medias/fonts/Roboto/Roboto-MediumItalic.ttf +0 -0
  329. data/vendor/assets/src/medias/fonts/Roboto/Roboto-Regular.ttf +0 -0
  330. data/vendor/assets/src/medias/fonts/Roboto/Roboto-Thin.ttf +0 -0
  331. data/vendor/assets/src/medias/fonts/Roboto/Roboto-ThinItalic.ttf +0 -0
  332. data/vendor/assets/src/medias/fonts/Roboto_Slab/LICENSE.txt +0 -202
  333. data/vendor/assets/src/medias/fonts/Roboto_Slab/README.txt +0 -71
  334. data/vendor/assets/src/medias/fonts/Roboto_Slab/RobotoSlab-VariableFont_wght.ttf +0 -0
  335. data/vendor/assets/src/medias/fonts/Roboto_Slab/static/RobotoSlab-Black.ttf +0 -0
  336. data/vendor/assets/src/medias/fonts/Roboto_Slab/static/RobotoSlab-Bold.ttf +0 -0
  337. data/vendor/assets/src/medias/fonts/Roboto_Slab/static/RobotoSlab-ExtraBold.ttf +0 -0
  338. data/vendor/assets/src/medias/fonts/Roboto_Slab/static/RobotoSlab-ExtraLight.ttf +0 -0
  339. data/vendor/assets/src/medias/fonts/Roboto_Slab/static/RobotoSlab-Light.ttf +0 -0
  340. data/vendor/assets/src/medias/fonts/Roboto_Slab/static/RobotoSlab-Medium.ttf +0 -0
  341. data/vendor/assets/src/medias/fonts/Roboto_Slab/static/RobotoSlab-Regular.ttf +0 -0
  342. data/vendor/assets/src/medias/fonts/Roboto_Slab/static/RobotoSlab-SemiBold.ttf +0 -0
  343. data/vendor/assets/src/medias/fonts/Roboto_Slab/static/RobotoSlab-Thin.ttf +0 -0
  344. data/vendor/assets/src/medias/images/atome.svg +0 -12
  345. data/vendor/assets/src/medias/images/ballanim.png +0 -0
  346. data/vendor/assets/src/medias/images/blank.png +0 -0
  347. data/vendor/assets/src/medias/images/green_planet.png +0 -0
  348. data/vendor/assets/src/medias/images/icons/Lowpass.svg +0 -8
  349. data/vendor/assets/src/medias/images/icons/activate.svg +0 -3
  350. data/vendor/assets/src/medias/images/icons/audio.svg +0 -7
  351. data/vendor/assets/src/medias/images/icons/band_pass.svg +0 -8
  352. data/vendor/assets/src/medias/images/icons/clear.svg +0 -5
  353. data/vendor/assets/src/medias/images/icons/color.svg +0 -5
  354. data/vendor/assets/src/medias/images/icons/copy.svg +0 -8
  355. data/vendor/assets/src/medias/images/icons/create.svg +0 -3
  356. data/vendor/assets/src/medias/images/icons/delete.svg +0 -8
  357. data/vendor/assets/src/medias/images/icons/edit-.svg +0 -4
  358. data/vendor/assets/src/medias/images/icons/edit.svg +0 -4
  359. data/vendor/assets/src/medias/images/icons/edition.svg +0 -4
  360. data/vendor/assets/src/medias/images/icons/email.svg +0 -13
  361. data/vendor/assets/src/medias/images/icons/equalizer-.svg +0 -5
  362. data/vendor/assets/src/medias/images/icons/equalizer.svg +0 -5
  363. data/vendor/assets/src/medias/images/icons/filter.svg +0 -4
  364. data/vendor/assets/src/medias/images/icons/folder.svg +0 -4
  365. data/vendor/assets/src/medias/images/icons/group.svg +0 -6
  366. data/vendor/assets/src/medias/images/icons/hamburger.svg +0 -8
  367. data/vendor/assets/src/medias/images/icons/high_pass.svg +0 -5
  368. data/vendor/assets/src/medias/images/icons/link.svg +0 -4
  369. data/vendor/assets/src/medias/images/icons/load.svg +0 -4
  370. data/vendor/assets/src/medias/images/icons/low_pass.svg +0 -5
  371. data/vendor/assets/src/medias/images/icons/mail_gray.svg +0 -6
  372. data/vendor/assets/src/medias/images/icons/mail_green.svg +0 -6
  373. data/vendor/assets/src/medias/images/icons/mail_orange.svg +0 -6
  374. data/vendor/assets/src/medias/images/icons/microphone.svg +0 -7
  375. data/vendor/assets/src/medias/images/icons/midi_in.svg +0 -4
  376. data/vendor/assets/src/medias/images/icons/midi_out.svg +0 -4
  377. data/vendor/assets/src/medias/images/icons/modules.svg +0 -11
  378. data/vendor/assets/src/medias/images/icons/paste.svg +0 -4
  379. data/vendor/assets/src/medias/images/icons/pause.svg +0 -5
  380. data/vendor/assets/src/medias/images/icons/play.svg +0 -7
  381. data/vendor/assets/src/medias/images/icons/record.svg +0 -4
  382. data/vendor/assets/src/medias/images/icons/save.svg +0 -5
  383. data/vendor/assets/src/medias/images/icons/select--.svg +0 -4
  384. data/vendor/assets/src/medias/images/icons/select-.svg +0 -5
  385. data/vendor/assets/src/medias/images/icons/select-all.svg +0 -4
  386. data/vendor/assets/src/medias/images/icons/select.svg +0 -4
  387. data/vendor/assets/src/medias/images/icons/settings.svg +0 -5
  388. data/vendor/assets/src/medias/images/icons/settings0.svg +0 -2
  389. data/vendor/assets/src/medias/images/icons/settings1.svg +0 -17
  390. data/vendor/assets/src/medias/images/icons/settings2.svg +0 -25
  391. data/vendor/assets/src/medias/images/icons/settings_old.svg +0 -6
  392. data/vendor/assets/src/medias/images/icons/shape.svg +0 -7
  393. data/vendor/assets/src/medias/images/icons/speaker.svg +0 -6
  394. data/vendor/assets/src/medias/images/icons/stop.svg +0 -4
  395. data/vendor/assets/src/medias/images/icons/tool.svg +0 -7
  396. data/vendor/assets/src/medias/images/icons/tools.svg +0 -9
  397. data/vendor/assets/src/medias/images/icons/undo.svg +0 -4
  398. data/vendor/assets/src/medias/images/icons/undo2.svg +0 -4
  399. data/vendor/assets/src/medias/images/icons/validate.svg +0 -9
  400. data/vendor/assets/src/medias/images/icons/vie.svg +0 -3
  401. data/vendor/assets/src/medias/images/icons/wave-saw.svg +0 -3
  402. data/vendor/assets/src/medias/images/icons/wave-sine.svg +0 -3
  403. data/vendor/assets/src/medias/images/icons/wave-square-.svg +0 -4
  404. data/vendor/assets/src/medias/images/icons/wave-square.svg +0 -3
  405. data/vendor/assets/src/medias/images/icons/wave-triangle.svg +0 -3
  406. data/vendor/assets/src/medias/images/icons/waveform-.svg +0 -4
  407. data/vendor/assets/src/medias/images/icons/waveform.svg +0 -7
  408. data/vendor/assets/src/medias/images/logos/Facebook.svg +0 -8
  409. data/vendor/assets/src/medias/images/logos/GitHub Black.svg +0 -7
  410. data/vendor/assets/src/medias/images/logos/GitHub.svg +0 -7
  411. data/vendor/assets/src/medias/images/logos/LinkedIn-full.svg +0 -109
  412. data/vendor/assets/src/medias/images/logos/LinkedIn.svg +0 -11
  413. data/vendor/assets/src/medias/images/logos/Orange/Facebook.svg +0 -8
  414. data/vendor/assets/src/medias/images/logos/Orange/TikTok.svg +0 -11
  415. data/vendor/assets/src/medias/images/logos/Orange/Twitter.svg +0 -8
  416. data/vendor/assets/src/medias/images/logos/Orange/instagram.svg +0 -8
  417. data/vendor/assets/src/medias/images/logos/Orange/vimeo.svg +0 -8
  418. data/vendor/assets/src/medias/images/logos/Orange/youtube.svg +0 -7
  419. data/vendor/assets/src/medias/images/logos/TikTok.svg +0 -11
  420. data/vendor/assets/src/medias/images/logos/Twitter.svg +0 -35
  421. data/vendor/assets/src/medias/images/logos/X.svg +0 -5
  422. data/vendor/assets/src/medias/images/logos/YouTube.svg +0 -1
  423. data/vendor/assets/src/medias/images/logos/apple.svg +0 -4
  424. data/vendor/assets/src/medias/images/logos/atome.svg +0 -12
  425. data/vendor/assets/src/medias/images/logos/freebsd.png +0 -0
  426. data/vendor/assets/src/medias/images/logos/freebsd.svg +0 -8
  427. data/vendor/assets/src/medias/images/logos/gray/Facebook.svg +0 -8
  428. data/vendor/assets/src/medias/images/logos/gray/TikTok.svg +0 -11
  429. data/vendor/assets/src/medias/images/logos/gray/Twitter.svg +0 -8
  430. data/vendor/assets/src/medias/images/logos/gray/instagram.svg +0 -8
  431. data/vendor/assets/src/medias/images/logos/gray/vimeo.svg +0 -8
  432. data/vendor/assets/src/medias/images/logos/gray/youtube.svg +0 -7
  433. data/vendor/assets/src/medias/images/logos/gray/youtube2.svg +0 -13
  434. data/vendor/assets/src/medias/images/logos/instagram.svg +0 -6
  435. data/vendor/assets/src/medias/images/logos/tiktok_back.svg +0 -1
  436. data/vendor/assets/src/medias/images/logos/vimeo.svg +0 -17
  437. data/vendor/assets/src/medias/images/noise.svg +0 -17
  438. data/vendor/assets/src/medias/images/red_planet.png +0 -0
  439. data/vendor/assets/src/medias/images/tile.png +0 -0
  440. data/vendor/assets/src/medias/texts/lorem.txt +0 -1
  441. data/vendor/assets/src/medias/utils/infos/color.rb +0 -29
  442. data/vendor/assets/src/medias/utils/infos/width.rb +0 -25
  443. data/vendor/assets/src/medias/videos/video_missing.mp4 +0 -0
  444. data/vendor/assets/src-tauri/.gitignore +0 -4
  445. data/vendor/assets/src-tauri/Cargo.toml +0 -27
  446. data/vendor/assets/src-tauri/build.rs +0 -3
  447. data/vendor/assets/src-tauri/icons/128x128.png +0 -0
  448. data/vendor/assets/src-tauri/icons/128x128@2x.png +0 -0
  449. data/vendor/assets/src-tauri/icons/32x32.png +0 -0
  450. data/vendor/assets/src-tauri/icons/Square107x107Logo.png +0 -0
  451. data/vendor/assets/src-tauri/icons/Square142x142Logo.png +0 -0
  452. data/vendor/assets/src-tauri/icons/Square150x150Logo.png +0 -0
  453. data/vendor/assets/src-tauri/icons/Square284x284Logo.png +0 -0
  454. data/vendor/assets/src-tauri/icons/Square30x30Logo.png +0 -0
  455. data/vendor/assets/src-tauri/icons/Square310x310Logo.png +0 -0
  456. data/vendor/assets/src-tauri/icons/Square44x44Logo.png +0 -0
  457. data/vendor/assets/src-tauri/icons/Square71x71Logo.png +0 -0
  458. data/vendor/assets/src-tauri/icons/Square89x89Logo.png +0 -0
  459. data/vendor/assets/src-tauri/icons/StoreLogo.png +0 -0
  460. data/vendor/assets/src-tauri/icons/icon.icns +0 -0
  461. data/vendor/assets/src-tauri/icons/icon.ico +0 -0
  462. data/vendor/assets/src-tauri/icons/icon.png +0 -0
  463. data/vendor/assets/src-tauri/src/main.rs +0 -71
  464. data/vendor/assets/src-tauri/tauri.conf.json +0 -70
  465. data/vendor/assets/src-wasm/wasm/wasi-vfs-osx_arm +0 -0
  466. data/vendor/assets/src-wasm/wasm/wasi-vfs-osx_x86 +0 -0
  467. data/vendor/assets/src-wasm/wasm/wasi-vfs-unix +0 -0
  468. data/vendor/assets/src-wasm/wasm/wasi-vfs.exe +0 -0
  469. /data/vendor/assets/{src → build}/favicon.ico +0 -0
  470. /data/vendor/assets/{src/js/third_parties → build/js}/ping.min.js +0 -0
  471. /data/vendor/assets/{src → build}/js/third_parties/interact.min.js.map +0 -0
  472. /data/vendor/assets/{src → build}/js/third_parties/sha256.min.js +0 -0
@@ -0,0 +1,235 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'opal'
4
+ require 'opal-jquery'
5
+ require 'opal-browser'
6
+ require 'parser'
7
+ require 'ruby2js'
8
+ require 'uglifier'
9
+
10
+ Opal.append_path 'app'
11
+
12
+ def build_atome_to_js(user_project_path, source_code)
13
+ # now lets build the atome kernel
14
+ atome_directory = "#{user_project_path}/build/js/atome"
15
+ atome_js = "#{atome_directory}/atome.js"
16
+ unless File.directory?(atome_directory)
17
+ Dir.mkdir(atome_directory)
18
+ end
19
+
20
+ File.new atome_js, "w"
21
+ source_code_rb = File.open(source_code)
22
+ # atome_rb = File.open("#{gem_location}/../vendor/assets/application/atome.rb")
23
+ # source_code_rb = File.open("#{gem_location}/../lib/atome.rb")
24
+ source_code_rb_content = source_code_rb.read
25
+ source_content = Ruby2JS.convert(source_code_rb_content).to_s
26
+ # # atome_content=Ruby2JS.convert("a={age:3}\na.age+=1")
27
+ # atome_content = Uglifier.new.compile(atome_content)
28
+ File.open(atome_js, 'w') do |f|
29
+ f.puts source_content
30
+ end
31
+
32
+ end
33
+
34
+ def build_opal_browser(user_project_path)
35
+ opal_directory = "#{user_project_path}/build/js/opal"
36
+ browser_js = "#{opal_directory}/opal_browser.js"
37
+ Dir.mkdir(opal_directory) unless File.directory?(opal_directory)
38
+
39
+ File.new browser_js, "w"
40
+ browser_content = Opal::Builder.build('../lib/atome/renderers/opal/opal_browser.rb').to_s
41
+ browser_content.gsub!("$$$('STDERR')['$write_proc='](typeof(process) === 'object' && typeof(process.stderr) === 'object' ? function(s){process.stderr.write(s)} : function(s){console.warn(s)});", "$$$('STDERR')['$write_proc='](typeof(process) === 'object' && typeof(process.stderr) === 'object' ? function(s){process.stderr.write(s)} : function(s){});")
42
+ # browser_content = Uglifier.new.compile(browser_content)
43
+ File.open(browser_js, 'w') do |f|
44
+ f.puts browser_content
45
+ end
46
+ end
47
+
48
+ def build_aui(user_project_path)
49
+ #fixme: for now production can't be change when updating or force create, we should add a production method that uglified all libs on demand
50
+
51
+ # now we add an uniq aui to the app
52
+ aui_js = "#{user_project_path}/build/js/aui.js"
53
+ File.new aui_js, "w"
54
+ builder = Opal::Builder.new
55
+ aui_content = builder.build("#{user_project_path}/aui.rb").to_s
56
+ # aui_content = Uglifier.new.compile(aui_content)
57
+ File.open(aui_js, 'w') do |f|
58
+ f.puts aui_content
59
+ end
60
+ end
61
+
62
+ def copy_assets_files(user_project_path, gem_location)
63
+ build_location = "#{gem_location}/../vendor/assets/build/"
64
+ server_location = "#{gem_location}/../vendor/assets/server/"
65
+ FileUtils.copy_entry build_location, "#{user_project_path}/build", preserve: nil
66
+ FileUtils.copy_entry server_location, "#{user_project_path}/server", preserve: nil
67
+ end
68
+
69
+ # def copy_atome_extensions(user_project_path, gem_location)
70
+ # extensions_location = "#{gem_location}/../lib/atome/extensions/"
71
+ # atome_native_extensions = "#{gem_location}/../lib/atome/atome_native_extensions.rb"
72
+ # FileUtils.copy_entry extensions_location, "#{user_project_path}/server/extensions", preserve: nil
73
+ # FileUtils.copy_entry atome_native_extensions, "#{user_project_path}/server/atome_native_extensions.rb", preserve: nil
74
+ # end
75
+
76
+ def build_atome_kernel(user_project_path, gem_location)
77
+ # now lets build the atome kernel
78
+ atome_directory = "#{user_project_path}/build/js/atome"
79
+ Dir.mkdir(atome_directory) unless File.directory?(atome_directory)
80
+ kernel_js = "#{atome_directory}/kernel.js"
81
+ File.new kernel_js, "w"
82
+ builder = Opal::Builder.new
83
+ builder.append_paths("#{gem_location}/../lib/")
84
+ kernel_content = builder.build("#{gem_location}/../lib/atome.rb").to_s
85
+ # kernel_content = Uglifier.new.compile(kernel_content)
86
+ File.open(kernel_js, 'w') do |f|
87
+ f.puts kernel_content
88
+ end
89
+ end
90
+
91
+ def build_opal_extensions(user_project_path, gem_location)
92
+ opal_directory = "#{user_project_path}/build/js/opal"
93
+ extensions_js = "#{opal_directory}/atome_opal_extensions.js"
94
+ File.new extensions_js, "w"
95
+ builder = Opal::Builder.new
96
+ builder.append_paths("#{gem_location}/../lib/atome/renderers/opal/")
97
+ extensions_content = builder.build("#{gem_location}/../lib/atome/renderers/opal/atome_opal_extensions.rb").to_s
98
+ # extensions_content = Opal::Builder.build("#{gem_location}/../lib/atome/renderers/opal/atome_opal.rb").to_s
99
+ File.open(extensions_js, 'w') do |f|
100
+ f.puts extensions_content
101
+ end
102
+ end
103
+
104
+
105
+ def build_opal_parser(user_project_path)
106
+ parser_js = "#{user_project_path}/build/js/opal/opal_parser.js"
107
+ File.new parser_js, "w"
108
+ parser_content = Opal::Builder.build('../lib/atome/renderers/opal/opal_parser.rb').to_s
109
+ # parser_content = Uglifier.new.compile(parser_content) if production
110
+ File.open(parser_js, 'w') do |f|
111
+ f.puts parser_content
112
+ end
113
+ end
114
+
115
+
116
+
117
+ def build_user_code(user_project_path, source_code)
118
+ application_js = "#{user_project_path}/build/js/application.js"
119
+ builder = Opal::Builder.new
120
+ builder.append_paths("#{user_project_path}/")
121
+ application_content = builder.build(source_code).to_s
122
+
123
+ File.open(application_js, 'w') do |f|
124
+ f.puts application_content
125
+ end
126
+ end
127
+
128
+ def minimize_libraries(user_project_path)
129
+ # minimizing aui
130
+ aui_js = "#{user_project_path}/build/js/aui.js"
131
+ aui_content = File.open(aui_js).read
132
+ aui_content = Uglifier.new.compile(aui_content)
133
+ File.open(aui_js, 'w') do |f|
134
+ f.puts aui_content
135
+ end
136
+ # minimizing opal_browser
137
+ browser_js = "#{user_project_path}/build/js/opal/opal_browser.js"
138
+ browser_content = File.open(browser_js).read
139
+ browser_content = Uglifier.new.compile(browser_content)
140
+ File.open(browser_js, 'w') do |f|
141
+ f.puts browser_content
142
+ end
143
+ # minimizing opal_parser
144
+ parser_js = "#{user_project_path}/build/js/opal/opal_parser.js"
145
+ parser_content = File.open(parser_js).read
146
+ parser_content = Uglifier.new.compile(parser_content)
147
+ File.open(parser_js, 'w') do |f|
148
+ f.puts parser_content
149
+ end
150
+ # minimizing atome_lib
151
+ atome_js = "#{user_project_path}/build/js/atome/kernel.js"
152
+ atome_content = File.open(atome_js).read
153
+ atome_content = Uglifier.new.compile(atome_content)
154
+ File.open(atome_js, 'w') do |f|
155
+ f.puts atome_content
156
+ end
157
+ end
158
+
159
+ def minimize_user_code(user_project_path)
160
+ # minimizing user codes
161
+ application_js = "#{user_project_path}/build/js/application.js"
162
+ application_content = File.open(application_js).read
163
+ application_content = Uglifier.new.compile(application_content)
164
+ File.open(application_js, 'w') do |f|
165
+ f.puts application_content
166
+ end
167
+ end
168
+
169
+ task :build_user_code, :user_project_path, :production do |t, args|
170
+ t
171
+ user_project_path = args[:user_project_path]
172
+ production = args[:production]
173
+ source_code = "#{user_project_path}/application/index.rb"
174
+ build_user_code(user_project_path, source_code)
175
+ minimize_user_code(user_project_path) if production == 'production'
176
+ end
177
+
178
+ task :system_builder, :user_project_path, :production do |t, args|
179
+ t
180
+ user_project_path = args[:user_project_path]
181
+ production = args[:production]
182
+ #
183
+ # gem_location = File.join(File.dirname(__FILE__))
184
+ source_code = '../vendor/assets/application/index.rb'
185
+ # build_aui(user_project_path)
186
+ # build_atome_kernel(user_project_path, gem_location)
187
+ # build_opal_browser(user_project_path)
188
+ # build_opal_parser(user_project_path)
189
+ # build_opal_extensions(user_project_path)
190
+ build_common_libraries(user_project_path,production)
191
+ build_user_code(user_project_path, source_code)
192
+ # build_atome_to_js(user_project_path, source_code)
193
+ # if production == 'production'
194
+ # minimize_libraries(user_project_path)
195
+ # minimize_user_code(user_project_path)
196
+ # end
197
+
198
+ # todo catch and message to user when when there's no force and folder already exist
199
+ end
200
+
201
+ task :system_updater, :user_project_path, :production do |t, args|
202
+ user_project_path = args[:user_project_path]
203
+ production = args[:production]
204
+ build_common_libraries(user_project_path,production)
205
+ # gem_location = File.join(File.dirname(__FILE__))
206
+ # copy_assets_files(user_project_path, gem_location)
207
+ # build_atome_kernel(user_project_path, gem_location)
208
+ # build_opal_browser(user_project_path)
209
+ # build_opal_parser(user_project_path)
210
+ # build_opal_extensions(user_project_path)
211
+ # if production == 'production'
212
+ # minimize_libraries(user_project_path)
213
+ # minimize_user_code(user_project_path)
214
+ # end
215
+ end
216
+
217
+ task default: :run
218
+
219
+ def build_common_libraries(user_project_path,production)
220
+ gem_location = File.join(File.dirname(__FILE__))
221
+ copy_assets_files(user_project_path, gem_location)
222
+ # copy_atome_extensions(user_project_path, gem_location)
223
+ build_aui(user_project_path)
224
+ build_atome_kernel(user_project_path, gem_location)
225
+ build_opal_browser(user_project_path)
226
+ build_opal_parser(user_project_path)
227
+ build_opal_extensions(user_project_path, gem_location)
228
+ if production == 'production'
229
+ minimize_libraries(user_project_path)
230
+ minimize_user_code(user_project_path)
231
+ end
232
+ end
233
+
234
+
235
+ # todo integrate pure JS (ruby2js) compilation
@@ -65,7 +65,7 @@ atome framework is looking for the rendering method named "glow_html" we explai
65
65
 
66
66
  Finally we have to manually create the rendering method in our renderer by default the HTML render is used
67
67
 
68
- so we have to go to "atome/lib/renderers/html/properties/" the open "effect.rb" as we want to create an effect renderer
68
+ so we have to go to "atome/lib/atome/renderers/html/properties/" the open "effect.rb" as we want to create an effect renderer
69
69
 
70
70
  So in the "effect.rb" file we had the method name "glow_html" (the newly atome name suffixed with "_html" for html rendering)
71
71
 
@@ -181,69 +181,4 @@ Connect on port 443 with HTTPS to accept wss certificate.
181
181
  [comment]: <> ( docker run --name=mediasoup-demo -p 4443:4443/tcp -p 40000-49999:40000-49999/udp -p 40000-49999:40000-49999/tcp -p 3000-3001:3000-3001/tcp --init -v c:/Tmp/mediasoup/certs:/service/certs -e HTTPS_CERT_FULLCHAIN="/service/certs/fullchain.pem" -e HTTPS_CERT_PRIVKEY="/service/certs/privkey.pem" -e MEDIASOUP_ANNOUNCED_IP="192.168.103.92" -e MEDIASOUP_LISTEN_IP="0.0.0.0" mediasoup-demo:v3)
182
182
 
183
183
 
184
- [comment]: <> (Wait 10 mn for server starting...)
185
-
186
-
187
- Freebsd mail server install :
188
-
189
- Setting up a mail server on FreeBSD similar to what you might find in cPanel involves multiple components, as cPanel utilizes a software stack that includes mail servers, databases, web servers, and more. For setting up a mail server, you typically need the following components:
190
-
191
- - **MTA (Mail Transfer Agent)**: Software for routing and delivering email. Popular choices include Postfix and Exim (used by cPanel).
192
- - **MDA (Mail Delivery Agent)**: Software for storing and retrieving emails. Dovecot is a common choice.
193
- - **Webmail**: A web user interface to access emails. RoundCube and Horde are common examples.
194
- - **Antispam and Antivirus**: SpamAssassin for antispam, ClamAV for antivirus are commonly used options.
195
-
196
- Here's a high-level overview to set up a mail server on FreeBSD:
197
-
198
- ### 1. Update the System
199
- First, ensure your FreeBSD system is up to date:
200
-
201
- ```shell
202
- pkg update && pkg upgrade
203
- ```
204
-
205
- ### 2. Install Postfix (MTA)
206
- Install Postfix as the MTA:
207
-
208
- ```shell
209
- pkg install postfix
210
- ```
211
-
212
- Configure Postfix by editing its configuration file (`/usr/local/etc/postfix/main.cf`). You'll need to set the mail domain, hostname, and other network and security settings.
213
-
214
- ### 3. Install Dovecot (MDA)
215
- Install Dovecot to handle email delivery and access:
216
-
217
- ```shell
218
- pkg install dovecot
219
- ```
220
-
221
- Configure Dovecot by adjusting the configuration files in `/usr/local/etc/dovecot/`. You'll need to set up authentication mechanisms, email storage locations, etc.
222
-
223
- ### 4. Install Webmail Interface
224
- Install RoundCube or another webmail client:
225
-
226
- ```shell
227
- pkg install roundcube
228
- ```
229
-
230
- Configure RoundCube by editing its configuration file, typically located in `/usr/local/www/roundcube/config/`.
231
-
232
- ### 5. Set Up Antispam and Antivirus
233
- Install SpamAssassin and ClamAV:
234
-
235
- ```shell
236
- pkg install spamassassin clamav
237
- ```
238
-
239
- Configure each service to integrate with your MTA and MDA. This may involve editing Postfix and Dovecot's configuration files to include filters and antivirus checks.
240
-
241
- ### 6. Test Your Configuration
242
- - Test Postfix by sending emails from the command line.
243
- - Test Dovecot by logging in via an email client or RoundCube.
244
- - Ensure SpamAssassin and ClamAV are working by sending test emails that should be marked as spam or contain malicious attachments.
245
-
246
- ### Important Note:
247
- Setting up a mail server is complex and involves many aspects, particularly regarding securing and optimizing your server. Make sure to refer to the official documentation of each software and consider security best practices, such as using SSL/TLS, properly setting up DNS records (SPF, DKIM, DMARC), and establishing appropriate access control lists.
248
-
249
- This guide provides a very basic overview, and you should refer to the specific FreeBSD, Postfix, Dovecot, RoundCube, SpamAssassin, and ClamAV documentation for detailed instructions and advanced configuration options.
184
+ [comment]: <> (Wait 10 mn for server starting...)
@@ -3,14 +3,7 @@
3
3
  [Main menu](../atome.md)
4
4
  -
5
5
  </div>
6
- prerequisity:
7
6
 
8
- ruby :
9
- wasmtime:
10
- curl https://wasmtime.dev/install.sh -sSf | bash
11
- wasi :
12
- brew tap kateinoigakukun/wasi-vfs https://github.com/kateinoigakukun/wasi-vfs.git
13
- brew install kateinoigakukun/wasi-vfs/wasi-vfs
14
7
  **[- first steps](./first_steps.md)**
15
8
  -
16
9