santrix 0.1.0

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 (229) hide show
  1. package/CHANGELOG.md +38 -0
  2. package/NOTICE.md +18 -0
  3. package/README.md +107 -0
  4. package/js/santrix/README.md +161 -0
  5. package/js/santrix/icons/default/icons.js +198 -0
  6. package/js/santrix/icons/default/icons.min.js +1 -0
  7. package/js/santrix/langs/README.md +3 -0
  8. package/js/santrix/license.txt +22 -0
  9. package/js/santrix/models/dom/model.js +8054 -0
  10. package/js/santrix/models/dom/model.min.js +7 -0
  11. package/js/santrix/plugins/accordion/plugin.js +1057 -0
  12. package/js/santrix/plugins/accordion/plugin.min.js +7 -0
  13. package/js/santrix/plugins/advlist/plugin.js +262 -0
  14. package/js/santrix/plugins/advlist/plugin.min.js +7 -0
  15. package/js/santrix/plugins/anchor/plugin.js +217 -0
  16. package/js/santrix/plugins/anchor/plugin.min.js +7 -0
  17. package/js/santrix/plugins/autolink/plugin.js +231 -0
  18. package/js/santrix/plugins/autolink/plugin.min.js +7 -0
  19. package/js/santrix/plugins/autoresize/plugin.js +195 -0
  20. package/js/santrix/plugins/autoresize/plugin.min.js +7 -0
  21. package/js/santrix/plugins/autosave/plugin.js +236 -0
  22. package/js/santrix/plugins/autosave/plugin.min.js +7 -0
  23. package/js/santrix/plugins/charmap/plugin.js +1661 -0
  24. package/js/santrix/plugins/charmap/plugin.min.js +7 -0
  25. package/js/santrix/plugins/code/plugin.js +88 -0
  26. package/js/santrix/plugins/code/plugin.min.js +7 -0
  27. package/js/santrix/plugins/codesample/plugin.js +2474 -0
  28. package/js/santrix/plugins/codesample/plugin.min.js +14 -0
  29. package/js/santrix/plugins/directionality/plugin.js +398 -0
  30. package/js/santrix/plugins/directionality/plugin.min.js +7 -0
  31. package/js/santrix/plugins/emoticons/js/emojiimages.js +1 -0
  32. package/js/santrix/plugins/emoticons/js/emojiimages.min.js +3 -0
  33. package/js/santrix/plugins/emoticons/js/emojis.js +1 -0
  34. package/js/santrix/plugins/emoticons/js/emojis.min.js +2 -0
  35. package/js/santrix/plugins/emoticons/plugin.js +599 -0
  36. package/js/santrix/plugins/emoticons/plugin.min.js +7 -0
  37. package/js/santrix/plugins/fullscreen/plugin.js +1253 -0
  38. package/js/santrix/plugins/fullscreen/plugin.min.js +7 -0
  39. package/js/santrix/plugins/help/js/i18n/keynav/ar.js +90 -0
  40. package/js/santrix/plugins/help/js/i18n/keynav/bg_BG.js +90 -0
  41. package/js/santrix/plugins/help/js/i18n/keynav/ca.js +90 -0
  42. package/js/santrix/plugins/help/js/i18n/keynav/cs.js +90 -0
  43. package/js/santrix/plugins/help/js/i18n/keynav/da.js +90 -0
  44. package/js/santrix/plugins/help/js/i18n/keynav/de.js +90 -0
  45. package/js/santrix/plugins/help/js/i18n/keynav/el.js +90 -0
  46. package/js/santrix/plugins/help/js/i18n/keynav/en.js +90 -0
  47. package/js/santrix/plugins/help/js/i18n/keynav/es.js +90 -0
  48. package/js/santrix/plugins/help/js/i18n/keynav/eu.js +90 -0
  49. package/js/santrix/plugins/help/js/i18n/keynav/fa.js +90 -0
  50. package/js/santrix/plugins/help/js/i18n/keynav/fi.js +90 -0
  51. package/js/santrix/plugins/help/js/i18n/keynav/fr_FR.js +90 -0
  52. package/js/santrix/plugins/help/js/i18n/keynav/he_IL.js +90 -0
  53. package/js/santrix/plugins/help/js/i18n/keynav/hi.js +90 -0
  54. package/js/santrix/plugins/help/js/i18n/keynav/hr.js +90 -0
  55. package/js/santrix/plugins/help/js/i18n/keynav/hu_HU.js +90 -0
  56. package/js/santrix/plugins/help/js/i18n/keynav/id.js +90 -0
  57. package/js/santrix/plugins/help/js/i18n/keynav/it.js +90 -0
  58. package/js/santrix/plugins/help/js/i18n/keynav/ja.js +90 -0
  59. package/js/santrix/plugins/help/js/i18n/keynav/kk.js +90 -0
  60. package/js/santrix/plugins/help/js/i18n/keynav/ko_KR.js +90 -0
  61. package/js/santrix/plugins/help/js/i18n/keynav/ms.js +90 -0
  62. package/js/santrix/plugins/help/js/i18n/keynav/nb_NO.js +90 -0
  63. package/js/santrix/plugins/help/js/i18n/keynav/nl.js +90 -0
  64. package/js/santrix/plugins/help/js/i18n/keynav/pl.js +90 -0
  65. package/js/santrix/plugins/help/js/i18n/keynav/pt_BR.js +90 -0
  66. package/js/santrix/plugins/help/js/i18n/keynav/pt_PT.js +90 -0
  67. package/js/santrix/plugins/help/js/i18n/keynav/ro.js +90 -0
  68. package/js/santrix/plugins/help/js/i18n/keynav/ru.js +90 -0
  69. package/js/santrix/plugins/help/js/i18n/keynav/sk.js +90 -0
  70. package/js/santrix/plugins/help/js/i18n/keynav/sl_SI.js +90 -0
  71. package/js/santrix/plugins/help/js/i18n/keynav/sv_SE.js +90 -0
  72. package/js/santrix/plugins/help/js/i18n/keynav/th_TH.js +90 -0
  73. package/js/santrix/plugins/help/js/i18n/keynav/tr.js +90 -0
  74. package/js/santrix/plugins/help/js/i18n/keynav/uk.js +90 -0
  75. package/js/santrix/plugins/help/js/i18n/keynav/vi.js +90 -0
  76. package/js/santrix/plugins/help/js/i18n/keynav/zh_CN.js +84 -0
  77. package/js/santrix/plugins/help/js/i18n/keynav/zh_TW.js +90 -0
  78. package/js/santrix/plugins/help/plugin.js +750 -0
  79. package/js/santrix/plugins/help/plugin.min.js +7 -0
  80. package/js/santrix/plugins/image/plugin.js +1508 -0
  81. package/js/santrix/plugins/image/plugin.min.js +7 -0
  82. package/js/santrix/plugins/importcss/plugin.js +347 -0
  83. package/js/santrix/plugins/importcss/plugin.min.js +7 -0
  84. package/js/santrix/plugins/insertdatetime/plugin.js +190 -0
  85. package/js/santrix/plugins/insertdatetime/plugin.min.js +7 -0
  86. package/js/santrix/plugins/link/plugin.js +1246 -0
  87. package/js/santrix/plugins/link/plugin.min.js +7 -0
  88. package/js/santrix/plugins/lists/plugin.js +2175 -0
  89. package/js/santrix/plugins/lists/plugin.min.js +7 -0
  90. package/js/santrix/plugins/media/plugin.js +1220 -0
  91. package/js/santrix/plugins/media/plugin.min.js +7 -0
  92. package/js/santrix/plugins/nonbreaking/plugin.js +126 -0
  93. package/js/santrix/plugins/nonbreaking/plugin.min.js +7 -0
  94. package/js/santrix/plugins/pagebreak/plugin.js +120 -0
  95. package/js/santrix/plugins/pagebreak/plugin.min.js +7 -0
  96. package/js/santrix/plugins/preview/plugin.js +100 -0
  97. package/js/santrix/plugins/preview/plugin.min.js +7 -0
  98. package/js/santrix/plugins/quickbars/plugin.js +450 -0
  99. package/js/santrix/plugins/quickbars/plugin.min.js +7 -0
  100. package/js/santrix/plugins/save/plugin.js +122 -0
  101. package/js/santrix/plugins/save/plugin.min.js +7 -0
  102. package/js/santrix/plugins/searchreplace/plugin.js +1097 -0
  103. package/js/santrix/plugins/searchreplace/plugin.min.js +7 -0
  104. package/js/santrix/plugins/table/plugin.js +3468 -0
  105. package/js/santrix/plugins/table/plugin.min.js +7 -0
  106. package/js/santrix/plugins/template/plugin.js +570 -0
  107. package/js/santrix/plugins/template/plugin.min.js +7 -0
  108. package/js/santrix/plugins/visualblocks/plugin.js +101 -0
  109. package/js/santrix/plugins/visualblocks/plugin.min.js +7 -0
  110. package/js/santrix/plugins/visualchars/plugin.js +563 -0
  111. package/js/santrix/plugins/visualchars/plugin.min.js +7 -0
  112. package/js/santrix/plugins/wordcount/plugin.js +408 -0
  113. package/js/santrix/plugins/wordcount/plugin.min.js +7 -0
  114. package/js/santrix/santrix.d.ts +3252 -0
  115. package/js/santrix/santrix.js +31756 -0
  116. package/js/santrix/santrix.min.js +339 -0
  117. package/js/santrix/skins/content/dark/content.css +66 -0
  118. package/js/santrix/skins/content/dark/content.js +2 -0
  119. package/js/santrix/skins/content/dark/content.js.map +1 -0
  120. package/js/santrix/skins/content/dark/content.min.css +2 -0
  121. package/js/santrix/skins/content/dark/content.min.css.map +1 -0
  122. package/js/santrix/skins/content/default/content.css +61 -0
  123. package/js/santrix/skins/content/default/content.js +2 -0
  124. package/js/santrix/skins/content/default/content.js.map +1 -0
  125. package/js/santrix/skins/content/default/content.min.css +2 -0
  126. package/js/santrix/skins/content/default/content.min.css.map +1 -0
  127. package/js/santrix/skins/content/document/content.css +66 -0
  128. package/js/santrix/skins/content/document/content.js +2 -0
  129. package/js/santrix/skins/content/document/content.js.map +1 -0
  130. package/js/santrix/skins/content/document/content.min.css +2 -0
  131. package/js/santrix/skins/content/document/content.min.css.map +1 -0
  132. package/js/santrix/skins/content/santrix-5/content.css +61 -0
  133. package/js/santrix/skins/content/santrix-5/content.js +2 -0
  134. package/js/santrix/skins/content/santrix-5/content.js.map +1 -0
  135. package/js/santrix/skins/content/santrix-5/content.min.css +2 -0
  136. package/js/santrix/skins/content/santrix-5/content.min.css.map +1 -0
  137. package/js/santrix/skins/content/santrix-5-dark/content.css +66 -0
  138. package/js/santrix/skins/content/santrix-5-dark/content.js +2 -0
  139. package/js/santrix/skins/content/santrix-5-dark/content.js.map +1 -0
  140. package/js/santrix/skins/content/santrix-5-dark/content.min.css +2 -0
  141. package/js/santrix/skins/content/santrix-5-dark/content.min.css.map +1 -0
  142. package/js/santrix/skins/content/writer/content.css +62 -0
  143. package/js/santrix/skins/content/writer/content.js +2 -0
  144. package/js/santrix/skins/content/writer/content.js.map +1 -0
  145. package/js/santrix/skins/content/writer/content.min.css +2 -0
  146. package/js/santrix/skins/content/writer/content.min.css.map +1 -0
  147. package/js/santrix/skins/ui/oxide/content.css +785 -0
  148. package/js/santrix/skins/ui/oxide/content.inline.css +779 -0
  149. package/js/santrix/skins/ui/oxide/content.inline.js +2 -0
  150. package/js/santrix/skins/ui/oxide/content.inline.js.map +1 -0
  151. package/js/santrix/skins/ui/oxide/content.inline.min.css +2 -0
  152. package/js/santrix/skins/ui/oxide/content.inline.min.css.map +1 -0
  153. package/js/santrix/skins/ui/oxide/content.js +2 -0
  154. package/js/santrix/skins/ui/oxide/content.js.map +1 -0
  155. package/js/santrix/skins/ui/oxide/content.min.css +2 -0
  156. package/js/santrix/skins/ui/oxide/content.min.css.map +1 -0
  157. package/js/santrix/skins/ui/oxide/skin.css +4029 -0
  158. package/js/santrix/skins/ui/oxide/skin.js +2 -0
  159. package/js/santrix/skins/ui/oxide/skin.js.map +1 -0
  160. package/js/santrix/skins/ui/oxide/skin.min.css +2 -0
  161. package/js/santrix/skins/ui/oxide/skin.min.css.map +1 -0
  162. package/js/santrix/skins/ui/oxide/skin.shadowdom.css +30 -0
  163. package/js/santrix/skins/ui/oxide/skin.shadowdom.js +2 -0
  164. package/js/santrix/skins/ui/oxide/skin.shadowdom.js.map +1 -0
  165. package/js/santrix/skins/ui/oxide/skin.shadowdom.min.css +2 -0
  166. package/js/santrix/skins/ui/oxide/skin.shadowdom.min.css.map +1 -0
  167. package/js/santrix/skins/ui/oxide-dark/content.css +766 -0
  168. package/js/santrix/skins/ui/oxide-dark/content.inline.css +779 -0
  169. package/js/santrix/skins/ui/oxide-dark/content.inline.js +2 -0
  170. package/js/santrix/skins/ui/oxide-dark/content.inline.js.map +1 -0
  171. package/js/santrix/skins/ui/oxide-dark/content.inline.min.css +2 -0
  172. package/js/santrix/skins/ui/oxide-dark/content.inline.min.css.map +1 -0
  173. package/js/santrix/skins/ui/oxide-dark/content.js +2 -0
  174. package/js/santrix/skins/ui/oxide-dark/content.js.map +1 -0
  175. package/js/santrix/skins/ui/oxide-dark/content.min.css +2 -0
  176. package/js/santrix/skins/ui/oxide-dark/content.min.css.map +1 -0
  177. package/js/santrix/skins/ui/oxide-dark/skin.css +4032 -0
  178. package/js/santrix/skins/ui/oxide-dark/skin.js +2 -0
  179. package/js/santrix/skins/ui/oxide-dark/skin.js.map +1 -0
  180. package/js/santrix/skins/ui/oxide-dark/skin.min.css +2 -0
  181. package/js/santrix/skins/ui/oxide-dark/skin.min.css.map +1 -0
  182. package/js/santrix/skins/ui/oxide-dark/skin.shadowdom.css +30 -0
  183. package/js/santrix/skins/ui/oxide-dark/skin.shadowdom.js +2 -0
  184. package/js/santrix/skins/ui/oxide-dark/skin.shadowdom.js.map +1 -0
  185. package/js/santrix/skins/ui/oxide-dark/skin.shadowdom.min.css +2 -0
  186. package/js/santrix/skins/ui/oxide-dark/skin.shadowdom.min.css.map +1 -0
  187. package/js/santrix/skins/ui/santrix-5/content.css +785 -0
  188. package/js/santrix/skins/ui/santrix-5/content.inline.css +779 -0
  189. package/js/santrix/skins/ui/santrix-5/content.inline.js +2 -0
  190. package/js/santrix/skins/ui/santrix-5/content.inline.js.map +1 -0
  191. package/js/santrix/skins/ui/santrix-5/content.inline.min.css +2 -0
  192. package/js/santrix/skins/ui/santrix-5/content.inline.min.css.map +1 -0
  193. package/js/santrix/skins/ui/santrix-5/content.js +2 -0
  194. package/js/santrix/skins/ui/santrix-5/content.js.map +1 -0
  195. package/js/santrix/skins/ui/santrix-5/content.min.css +2 -0
  196. package/js/santrix/skins/ui/santrix-5/content.min.css.map +1 -0
  197. package/js/santrix/skins/ui/santrix-5/skin.css +4116 -0
  198. package/js/santrix/skins/ui/santrix-5/skin.js +2 -0
  199. package/js/santrix/skins/ui/santrix-5/skin.js.map +1 -0
  200. package/js/santrix/skins/ui/santrix-5/skin.min.css +2 -0
  201. package/js/santrix/skins/ui/santrix-5/skin.min.css.map +1 -0
  202. package/js/santrix/skins/ui/santrix-5/skin.shadowdom.css +30 -0
  203. package/js/santrix/skins/ui/santrix-5/skin.shadowdom.js +2 -0
  204. package/js/santrix/skins/ui/santrix-5/skin.shadowdom.js.map +1 -0
  205. package/js/santrix/skins/ui/santrix-5/skin.shadowdom.min.css +2 -0
  206. package/js/santrix/skins/ui/santrix-5/skin.shadowdom.min.css.map +1 -0
  207. package/js/santrix/skins/ui/santrix-5-dark/content.css +766 -0
  208. package/js/santrix/skins/ui/santrix-5-dark/content.inline.css +779 -0
  209. package/js/santrix/skins/ui/santrix-5-dark/content.inline.js +2 -0
  210. package/js/santrix/skins/ui/santrix-5-dark/content.inline.js.map +1 -0
  211. package/js/santrix/skins/ui/santrix-5-dark/content.inline.min.css +2 -0
  212. package/js/santrix/skins/ui/santrix-5-dark/content.inline.min.css.map +1 -0
  213. package/js/santrix/skins/ui/santrix-5-dark/content.js +2 -0
  214. package/js/santrix/skins/ui/santrix-5-dark/content.js.map +1 -0
  215. package/js/santrix/skins/ui/santrix-5-dark/content.min.css +2 -0
  216. package/js/santrix/skins/ui/santrix-5-dark/content.min.css.map +1 -0
  217. package/js/santrix/skins/ui/santrix-5-dark/skin.css +4116 -0
  218. package/js/santrix/skins/ui/santrix-5-dark/skin.js +2 -0
  219. package/js/santrix/skins/ui/santrix-5-dark/skin.js.map +1 -0
  220. package/js/santrix/skins/ui/santrix-5-dark/skin.min.css +2 -0
  221. package/js/santrix/skins/ui/santrix-5-dark/skin.min.css.map +1 -0
  222. package/js/santrix/skins/ui/santrix-5-dark/skin.shadowdom.css +30 -0
  223. package/js/santrix/skins/ui/santrix-5-dark/skin.shadowdom.js +2 -0
  224. package/js/santrix/skins/ui/santrix-5-dark/skin.shadowdom.js.map +1 -0
  225. package/js/santrix/skins/ui/santrix-5-dark/skin.shadowdom.min.css +2 -0
  226. package/js/santrix/skins/ui/santrix-5-dark/skin.shadowdom.min.css.map +1 -0
  227. package/js/santrix/themes/silver/theme.js +30787 -0
  228. package/js/santrix/themes/silver/theme.min.js +339 -0
  229. package/package.json +49 -0
package/CHANGELOG.md ADDED
@@ -0,0 +1,38 @@
1
+ # Changelog
2
+
3
+ All notable changes to this project will be documented in this file.
4
+
5
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
+
8
+ ## 0.1.0 - 2026-01-18
9
+
10
+ ### Changed
11
+
12
+ - Moved from alpha to pre-release version
13
+ - API stabilization phase - core APIs are now more stable
14
+ - Improved documentation and examples
15
+ - Enhanced build process for npm publishing
16
+
17
+ ## 0.0.1 - 2026-01-14 (Initial Alpha)
18
+
19
+ ### Added
20
+
21
+ - Initial release of SanTrix, a rebranding of the TinyMCE rich text editor.
22
+ - All core editor functionality including:
23
+ - Rich text formatting (bold, italic, underline, strikethrough)
24
+ - Lists (ordered, unordered)
25
+ - Tables
26
+ - Links and images
27
+ - Code samples with syntax highlighting
28
+ - Emoticons
29
+ - Full-screen editing
30
+ - Search and replace
31
+ - Word count
32
+ - And many more plugins
33
+
34
+ ### Changed
35
+
36
+ - Rebranded from TinyMCE to SanTrix
37
+ - Updated global object from `tinymce` to `santrix`
38
+ - Fresh versioning starting from 0.0.1
package/NOTICE.md ADDED
@@ -0,0 +1,18 @@
1
+ # Non-Endorsement & Origin Notice
2
+
3
+ **SanTrix** is an independent fork and derivative work based on the **MIT-licensed** open-source code originally developed by **Ephox Corporation DBA Tiny Technologies, Inc.** (TinyMCE).
4
+
5
+ This project is:
6
+
7
+ 1. **NOT** affiliated with, endorsed by, or sponsored by Tiny Technologies, Inc.
8
+ 2. **NOT** an official product of Tiny Technologies, Inc.
9
+ 3. Maintained entirely by the **SanTrix Team** and the open-source community.
10
+
11
+ ## Third-Party Components
12
+
13
+ This software includes components derived from or utilizing the following open-source projects, which remain the property of their respective owners:
14
+
15
+ - **TinyMCE Core** (MIT License) - Copyright (c) 2022 Ephox Corporation DBA Tiny Technologies, Inc.
16
+ - **DOMPurify** (MPL 2.0 / Apache 2.0) - Copyright (c) 2024 Dr.-Ing. Mario Heiderich, Cure53
17
+
18
+ For full license details, please refer to the `LICENSE.TXT` file included in this distribution.
package/README.md ADDED
@@ -0,0 +1,107 @@
1
+ # SanTrix Editor
2
+
3
+ [![npm version](https://img.shields.io/npm/v/santrix.svg?style=flat-square)](https://www.npmjs.com/package/santrix)
4
+ [![license](https://img.shields.io/npm/l/santrix.svg?style=flat-square)](https://github.com/NopeThisIsShini/SanTrix/blob/main/LICENSE.TXT)
5
+
6
+ A powerful, professional-grade rich text editor for the modern web. SanTrix is fully **MIT-licensed**, providing a robust WYSIWYG experience suitable for both open-source and commercial projects.
7
+
8
+ > ⚠️ **Pre-Release Version**: This is a pre-release version. APIs are stabilizing but may still change before the stable 1.0 release.
9
+
10
+ ## Features
11
+
12
+ - **Rich Text Editing** – Mature and battle-tested WYSIWYG editing engine.
13
+ - **Framework Agnostic** – Integrates with any modern web workflow via standard JavaScript.
14
+ - **Deep Customization** – Full control over toolbars, menus, and editor behavior.
15
+ - **Plugin System** – Extend functionality with built-in and custom plugins.
16
+
17
+ ## Installation
18
+
19
+ ```bash
20
+ npm install santrix
21
+ ```
22
+
23
+ ## Quick Start
24
+
25
+ ### Using CDN (Recommended for quick testing)
26
+
27
+ ```html
28
+ <!DOCTYPE html>
29
+ <html>
30
+ <head>
31
+ <script src="https://unpkg.com/santrix/santrix.min.js"></script>
32
+ </head>
33
+ <body>
34
+ <textarea id="my-editor">Hello World!</textarea>
35
+
36
+ <script>
37
+ santrix.init({
38
+ selector: "#my-editor",
39
+ height: 400,
40
+ });
41
+ </script>
42
+ </body>
43
+ </html>
44
+ ```
45
+
46
+ ### Using ES Modules (After npm install)
47
+
48
+ ```javascript
49
+ import santrix from "santrix";
50
+
51
+ santrix.init({
52
+ selector: "#my-editor",
53
+ height: 500,
54
+ plugins: ["lists", "link", "image", "code", "table"],
55
+ toolbar: "undo redo | bold italic | bullist numlist | link image",
56
+ });
57
+ ```
58
+
59
+ ## Documentation
60
+
61
+ For detailed documentation, examples, and API reference, visit:
62
+ - **GitHub Repository**: [https://github.com/NopeThisIsShini/SanTrix](https://github.com/NopeThisIsShini/SanTrix)
63
+ - **Documentation** (coming soon): https://santrix.org
64
+
65
+ ## Available Plugins
66
+
67
+ SanTrix comes with a comprehensive set of built-in plugins:
68
+
69
+ - **Content**: lists, link, image, media, table, codesample, emoticons
70
+ - **Editing**: searchreplace, wordcount, code, fullscreen
71
+ - **Formatting**: visualblocks, visualchars, nonbreaking, charmap
72
+ - And many more!
73
+
74
+ ## Contributing
75
+
76
+ SanTrix is an open-source project and we encourage developers to contribute patches and code to be included in the main package.
77
+
78
+ **Basic Rules**
79
+ - Contributed code will be licensed under the MIT license
80
+ - Copyright notices will be changed to SanTrix team, contributors will get credit for their work
81
+ - All third party code will be reviewed, tested and possibly modified before being released
82
+
83
+ **How to Contribute**
84
+
85
+ The SanTrix source code is [hosted on Github](https://github.com/NopeThisIsShini/SanTrix). Through Github you can submit pull requests and log new bugs and feature requests.
86
+
87
+ For detailed contribution guidelines, see [CONTRIBUTING.md](https://github.com/NopeThisIsShini/SanTrix/blob/main/CONTRIBUTING.md).
88
+
89
+ ## Licensing
90
+
91
+ **The 100% free fork of the world's #1 open source rich text editor.**
92
+
93
+ Used and trusted by millions of developers, **TinyMCE** (the original project we've forked) is the world’s most customizable, scalable, and flexible rich text editor. However, they changed the license of TinyMCE 7 to GPLv2+ (or a commercial license) while it has been MIT for TinyMCE 6 and LGPL for older versions. This creates problems for users (see the discussion) so a fork has been created here.
94
+
95
+ SanTrix is a fork maintained by the SanTrix Team, based on the MIT-licensed source of the TinyMCE core (Portions Copyright Β© 2022 Ephox Corporation DBA Tiny Technologies, Inc.).
96
+
97
+ All modifications and distribution are licensed under the **MIT License**.
98
+
99
+ - [View Full License](./LICENSE.TXT)
100
+ - [View Attribution Notice](./NOTICE.md)
101
+
102
+ ## Links
103
+
104
+ - [GitHub Repository](https://github.com/NopeThisIsShini/SanTrix)
105
+ - [Report Issues](https://github.com/NopeThisIsShini/SanTrix/issues)
106
+ - [npm Package](https://www.npmjs.com/package/santrix)
107
+
@@ -0,0 +1,161 @@
1
+ # SanTrix Editor - Development Repository
2
+
3
+ [![npm version](https://img.shields.io/npm/v/santrix.svg?style=flat-square)](https://www.npmjs.com/package/santrix)
4
+ [![license](https://img.shields.io/npm/l/santrix.svg?style=flat-square)](https://github.com/NopeThisIsShini/SanTrix/blob/main/LICENSE.TXT)
5
+
6
+ > **πŸ—οΈ This is the development monorepo.** For installation and usage, see the [npm package](https://www.npmjs.com/package/santrix).
7
+
8
+ A powerful, professional-grade rich text editor for the modern web. SanTrix is fully **MIT-licensed**, providing a robust WYSIWYG experience suitable for both open-source and commercial projects.
9
+
10
+ > ⚠️ **Pre-Release Version**: This is a pre-release version. APIs are stabilizing but may still change before the stable 1.0 release.
11
+
12
+ ---
13
+
14
+ ## πŸ“œ Copyright & Attribution
15
+
16
+ **The 100% free fork of the world's #1 open source rich text editor.**
17
+
18
+ Used and trusted by millions of developers, **TinyMCE** (the original project we've forked) is the world’s most customizable, scalable, and flexible rich text editor. However, they changed the license of TinyMCE 7 to GPLv2+ (or a commercial license) while it has been MIT for TinyMCE 6 and LGPL for older versions. This creates problems for users (see the discussion) so a fork has been created here.
19
+
20
+ **SanTrix** is a fork and derivative work based on **[TinyMCE](https://github.com/tinymce/tinymce)**, originally developed by **Ephox Corporation DBA Tiny Technologies, Inc.**
21
+
22
+ - Original TinyMCE Core: Copyright Β© 2022 Ephox Corporation DBA Tiny Technologies, Inc.
23
+ - SanTrix Modifications: Copyright Β© 2026 SanTrix Team
24
+
25
+ Both the original TinyMCE source code and SanTrix modifications are licensed under the **MIT License**.
26
+
27
+ **We gratefully acknowledge Tiny Technologies for their excellent work on TinyMCE** which forms the foundation of this project.
28
+
29
+ > **Note:** SanTrix is NOT affiliated with, endorsed by, or sponsored by Tiny Technologies, Inc.
30
+
31
+ ---
32
+
33
+ ## Features
34
+
35
+ - **Rich Text Editing** – Mature and battle-tested WYSIWYG editing engine.
36
+ - **Framework Agnostic** – Integrates with any modern web workflow via standard JavaScript.
37
+ - **Deep Customization** – Full control over toolbars, menus, and editor behavior.
38
+ - **Plugin System** – Extend functionality with built-in and custom plugins.
39
+
40
+ ## Installation (For Users)
41
+
42
+ To use SanTrix in your project:
43
+
44
+ ```bash
45
+ npm install santrix
46
+ ```
47
+
48
+ **For development/building from source**, see the [Development Setup](#development-setup) section below.
49
+
50
+ ## Quick Start
51
+
52
+ ### Using CDN (Recommended for quick testing)
53
+
54
+ ```html
55
+ <!DOCTYPE html>
56
+ <html>
57
+ <head>
58
+ <script src="https://unpkg.com/santrix/santrix.min.js"></script>
59
+ </head>
60
+ <body>
61
+ <textarea id="my-editor">Hello World!</textarea>
62
+
63
+ <script>
64
+ santrix.init({
65
+ selector: "#my-editor",
66
+ height: 400,
67
+ });
68
+ </script>
69
+ </body>
70
+ </html>
71
+ ```
72
+
73
+ ### Using ES Modules (After npm install)
74
+
75
+ ```javascript
76
+ import santrix from "santrix";
77
+
78
+ santrix.init({
79
+ selector: "#my-editor",
80
+ height: 500,
81
+ plugins: ["lists", "link", "image", "code", "table"],
82
+ toolbar: "undo redo | bold italic | bullist numlist | link image",
83
+ });
84
+ ```
85
+
86
+ ## Development Setup
87
+
88
+ This repository is a monorepo containing the SanTrix editor and its internal modules.
89
+
90
+ ### Prerequisites
91
+
92
+ - Node.js >= 14.x
93
+ - Yarn 1.22.x (specified in `packageManager` field)
94
+
95
+ ### Clone & Install
96
+
97
+ ```bash
98
+ git clone https://github.com/NopeThisIsShini/SanTrix.git
99
+ cd SanTrix
100
+ yarn install
101
+ ```
102
+
103
+ ### Build
104
+
105
+ ```bash
106
+ # Build everything (development)
107
+ yarn dev
108
+
109
+ # Build for production
110
+ yarn build
111
+
112
+ # Build just the santrix module
113
+ cd modules/santrix
114
+ yarn grunt
115
+ ```
116
+
117
+ ### Development Workflow
118
+
119
+ ```bash
120
+ # Start development server (localhost:3000)
121
+ yarn start
122
+
123
+ # Run tests
124
+ yarn test
125
+
126
+ # Run tests in browser
127
+ yarn browser-test
128
+
129
+ # Run linter
130
+ yarn eslint
131
+ ```
132
+
133
+ ### Project Structure
134
+
135
+ ```
136
+ SanTrix/
137
+ β”œβ”€β”€ modules/
138
+ β”‚ β”œβ”€β”€ santrix/ # Main editor package (published to npm)
139
+ β”‚ β”œβ”€β”€ oxide/ # UI skin
140
+ β”‚ β”œβ”€β”€ oxide-icons-default/ # Default icon set
141
+ β”‚ └── [other modules]/ # Internal utility modules
142
+ β”œβ”€β”€ js/ # Compiled output
143
+ └── dist/ # Distribution builds
144
+ ```
145
+
146
+ For more detailed build instructions, see the individual module READMEs.
147
+
148
+ ---
149
+
150
+ ## Licensing
151
+
152
+ SanTrix is a fork maintained by the SanTrix Team, based on the MIT-licensed source of the TinyMCE core (Portions Copyright Β© 2022 Ephox Corporation DBA Tiny Technologies, Inc.).
153
+
154
+ All modifications and distribution are licensed under the **MIT License**.
155
+
156
+ [View Full License](./LICENSE.TXT)
157
+
158
+ ## Links
159
+
160
+ - [GitHub Repository](https://github.com/NopeThisIsShini/SanTrix)
161
+ - [Report Issues](https://github.com/NopeThisIsShini/SanTrix/issues)