dspx 0.1.1-alpha.0 → 0.2.0-alpha.1

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 (216) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +1803 -1803
  3. package/binding.gyp +65 -65
  4. package/dist/CircularLogBuffer.d.ts +39 -0
  5. package/dist/CircularLogBuffer.d.ts.map +1 -0
  6. package/dist/CircularLogBuffer.js +74 -0
  7. package/dist/CircularLogBuffer.js.map +1 -0
  8. package/dist/DriftDetector.d.ts +133 -0
  9. package/dist/DriftDetector.d.ts.map +1 -0
  10. package/dist/DriftDetector.js +210 -0
  11. package/dist/DriftDetector.js.map +1 -0
  12. package/dist/TopicRouter.d.ts +191 -0
  13. package/dist/TopicRouter.d.ts.map +1 -0
  14. package/dist/TopicRouter.js +290 -0
  15. package/dist/TopicRouter.js.map +1 -0
  16. package/dist/advanced-dsp.d.ts +164 -0
  17. package/dist/advanced-dsp.d.ts.map +1 -0
  18. package/dist/advanced-dsp.js +449 -0
  19. package/dist/advanced-dsp.js.map +1 -0
  20. package/dist/backends.d.ts +354 -0
  21. package/dist/backends.d.ts.map +1 -0
  22. package/dist/backends.js +871 -0
  23. package/dist/backends.js.map +1 -0
  24. package/dist/bindings.d.ts +458 -0
  25. package/dist/bindings.d.ts.map +1 -0
  26. package/dist/bindings.js +1002 -0
  27. package/dist/bindings.js.map +1 -0
  28. package/dist/build/dspx.node +0 -0
  29. package/dist/easter-egg.d.ts +6 -0
  30. package/dist/easter-egg.d.ts.map +1 -0
  31. package/{src/ts/easter-egg.ts → dist/easter-egg.js} +42 -42
  32. package/dist/easter-egg.js.map +1 -0
  33. package/dist/fft.d.ts +455 -0
  34. package/dist/fft.d.ts.map +1 -0
  35. package/dist/fft.js +610 -0
  36. package/dist/fft.js.map +1 -0
  37. package/dist/filters.d.ts +327 -0
  38. package/dist/filters.d.ts.map +1 -0
  39. package/dist/filters.js +618 -0
  40. package/dist/filters.js.map +1 -0
  41. package/dist/index.d.ts +13 -0
  42. package/dist/index.d.ts.map +1 -0
  43. package/dist/index.js +10 -0
  44. package/dist/index.js.map +1 -0
  45. package/dist/types.d.ts +529 -0
  46. package/dist/types.d.ts.map +1 -0
  47. package/dist/types.js +2 -0
  48. package/dist/types.js.map +1 -0
  49. package/package.json +24 -5
  50. package/prebuilds/linux-x64/dspx.node +0 -0
  51. package/{src/build/dsp-ts-redis.node → prebuilds/win32-x64/dspx.node} +0 -0
  52. package/src/build/dspx.node +0 -0
  53. package/src/native/DspPipeline.cc +674 -674
  54. package/src/native/DspPipeline.h +43 -43
  55. package/src/native/FftBindings.cc +817 -817
  56. package/src/native/FilterBindings.cc +1001 -1001
  57. package/src/native/IDspStage.h +52 -52
  58. package/src/native/adapters/InterpolatorStage.h +201 -201
  59. package/src/native/adapters/MeanAbsoluteValueStage.h +288 -288
  60. package/src/native/adapters/MovingAverageStage.h +305 -305
  61. package/src/native/adapters/RectifyStage.h +88 -88
  62. package/src/native/adapters/ResamplerStage.h +238 -238
  63. package/src/native/adapters/RmsStage.h +298 -298
  64. package/src/native/adapters/SscStage.h +120 -120
  65. package/src/native/adapters/VarianceStage.h +306 -306
  66. package/src/native/adapters/WampStage.h +113 -113
  67. package/src/native/adapters/WaveformLengthStage.h +114 -114
  68. package/src/native/adapters/ZScoreNormalizeStage.h +325 -325
  69. package/src/native/core/FftEngine.cc +441 -441
  70. package/src/native/core/FftEngine.h +224 -224
  71. package/src/native/core/FirFilter.cc +324 -324
  72. package/src/native/core/FirFilter.h +149 -149
  73. package/src/native/core/IirFilter.cc +576 -576
  74. package/src/native/core/IirFilter.h +210 -210
  75. package/src/native/core/MovingAbsoluteValueFilter.cc +16 -16
  76. package/src/native/core/MovingAbsoluteValueFilter.h +134 -134
  77. package/src/native/core/MovingAverageFilter.cc +18 -18
  78. package/src/native/core/MovingAverageFilter.h +134 -134
  79. package/src/native/core/MovingFftFilter.cc +291 -291
  80. package/src/native/core/MovingFftFilter.h +203 -203
  81. package/src/native/core/MovingVarianceFilter.cc +193 -193
  82. package/src/native/core/MovingVarianceFilter.h +113 -113
  83. package/src/native/core/MovingZScoreFilter.cc +214 -214
  84. package/src/native/core/MovingZScoreFilter.h +112 -112
  85. package/src/native/core/Policies.h +352 -352
  86. package/src/native/core/RmsFilter.cc +17 -17
  87. package/src/native/core/RmsFilter.h +130 -130
  88. package/src/native/core/SscFilter.cc +15 -15
  89. package/src/native/core/SscFilter.h +136 -136
  90. package/src/native/core/WampFilter.cc +16 -16
  91. package/src/native/core/WampFilter.h +100 -100
  92. package/src/native/core/WaveformLengthFilter.cc +16 -16
  93. package/src/native/core/WaveformLengthFilter.h +98 -98
  94. package/src/native/utils/CircularBufferArray.cc +336 -336
  95. package/src/native/utils/CircularBufferArray.h +61 -61
  96. package/src/native/utils/CircularBufferVector.cc +145 -145
  97. package/src/native/utils/CircularBufferVector.h +44 -44
  98. package/src/native/utils/NapiUtils.cc +52 -52
  99. package/src/native/utils/NapiUtils.h +20 -20
  100. package/src/native/utils/SimdOps.h +870 -870
  101. package/src/native/utils/SlidingWindowFilter.cc +239 -239
  102. package/src/native/utils/SlidingWindowFilter.h +159 -159
  103. package/src/native/utils/TimeSeriesBuffer.cc +205 -205
  104. package/src/native/utils/TimeSeriesBuffer.h +140 -140
  105. package/.github/workflows/ci.yml +0 -185
  106. package/.vscode/c_cpp_properties.json +0 -17
  107. package/.vscode/settings.json +0 -68
  108. package/.vscode/tasks.json +0 -28
  109. package/DISCLAIMER.md +0 -32
  110. package/ROADMAP.md +0 -192
  111. package/TECHNICAL_DEBT.md +0 -165
  112. package/docs/ADVANCED_LOGGER_FEATURES.md +0 -598
  113. package/docs/AUTHENTICATION_SECURITY.md +0 -396
  114. package/docs/BACKEND_IMPROVEMENTS.md +0 -399
  115. package/docs/CHEBYSHEV_BIQUAD_EQ_IMPLEMENTATION.md +0 -405
  116. package/docs/FFT_IMPLEMENTATION.md +0 -490
  117. package/docs/FFT_IMPROVEMENTS_SUMMARY.md +0 -387
  118. package/docs/FFT_USER_GUIDE.md +0 -494
  119. package/docs/FILTERS_IMPLEMENTATION.md +0 -260
  120. package/docs/FILTER_API_GUIDE.md +0 -418
  121. package/docs/FIR_SIMD_OPTIMIZATION.md +0 -175
  122. package/docs/LOGGER_API_REFERENCE.md +0 -350
  123. package/docs/NOTCH_FILTER_QUICK_REF.md +0 -121
  124. package/docs/PHASE2_TESTS_AND_NOTCH_FILTER.md +0 -341
  125. package/docs/PHASES_5_7_SUMMARY.md +0 -403
  126. package/docs/PIPELINE_FILTER_INTEGRATION.md +0 -446
  127. package/docs/SIMD_OPTIMIZATIONS.md +0 -211
  128. package/docs/TEST_MIGRATION_SUMMARY.md +0 -173
  129. package/docs/TIMESERIES_IMPLEMENTATION_SUMMARY.md +0 -322
  130. package/docs/TIMESERIES_QUICK_REF.md +0 -85
  131. package/docs/advanced.md +0 -559
  132. package/docs/time-series-guide.md +0 -617
  133. package/docs/time-series-migration.md +0 -376
  134. package/jest.config.js +0 -37
  135. package/scripts/test.js +0 -24
  136. package/src/ts/CircularLogBuffer.ts +0 -87
  137. package/src/ts/DriftDetector.ts +0 -331
  138. package/src/ts/TopicRouter.ts +0 -428
  139. package/src/ts/__tests__/AdvancedDsp.test.ts +0 -585
  140. package/src/ts/__tests__/AuthAndEdgeCases.test.ts +0 -241
  141. package/src/ts/__tests__/Chaining.test.ts +0 -387
  142. package/src/ts/__tests__/ChebyshevBiquad.test.ts +0 -229
  143. package/src/ts/__tests__/CircularLogBuffer.test.ts +0 -158
  144. package/src/ts/__tests__/DriftDetector.test.ts +0 -389
  145. package/src/ts/__tests__/Fft.test.ts +0 -484
  146. package/src/ts/__tests__/ListState.test.ts +0 -153
  147. package/src/ts/__tests__/Logger.test.ts +0 -208
  148. package/src/ts/__tests__/LoggerAdvanced.test.ts +0 -319
  149. package/src/ts/__tests__/LoggerMinor.test.ts +0 -247
  150. package/src/ts/__tests__/MeanAbsoluteValue.test.ts +0 -398
  151. package/src/ts/__tests__/MovingAverage.test.ts +0 -322
  152. package/src/ts/__tests__/RMS.test.ts +0 -315
  153. package/src/ts/__tests__/Rectify.test.ts +0 -272
  154. package/src/ts/__tests__/Redis.test.ts +0 -456
  155. package/src/ts/__tests__/SlopeSignChange.test.ts +0 -166
  156. package/src/ts/__tests__/Tap.test.ts +0 -164
  157. package/src/ts/__tests__/TimeBasedExpiration.test.ts +0 -124
  158. package/src/ts/__tests__/TimeBasedRmsAndMav.test.ts +0 -231
  159. package/src/ts/__tests__/TimeBasedVarianceAndZScore.test.ts +0 -284
  160. package/src/ts/__tests__/TimeSeries.test.ts +0 -254
  161. package/src/ts/__tests__/TopicRouter.test.ts +0 -332
  162. package/src/ts/__tests__/TopicRouterAdvanced.test.ts +0 -483
  163. package/src/ts/__tests__/TopicRouterPriority.test.ts +0 -487
  164. package/src/ts/__tests__/Variance.test.ts +0 -509
  165. package/src/ts/__tests__/WaveformLength.test.ts +0 -147
  166. package/src/ts/__tests__/WillisonAmplitude.test.ts +0 -197
  167. package/src/ts/__tests__/ZScoreNormalize.test.ts +0 -459
  168. package/src/ts/advanced-dsp.ts +0 -566
  169. package/src/ts/backends.ts +0 -1137
  170. package/src/ts/bindings.ts +0 -1225
  171. package/src/ts/examples/MeanAbsoluteValue/test-state.ts +0 -99
  172. package/src/ts/examples/MeanAbsoluteValue/test-streaming.ts +0 -269
  173. package/src/ts/examples/MovingAverage/test-state.ts +0 -85
  174. package/src/ts/examples/MovingAverage/test-streaming.ts +0 -188
  175. package/src/ts/examples/RMS/test-state.ts +0 -97
  176. package/src/ts/examples/RMS/test-streaming.ts +0 -253
  177. package/src/ts/examples/Rectify/test-state.ts +0 -107
  178. package/src/ts/examples/Rectify/test-streaming.ts +0 -242
  179. package/src/ts/examples/Variance/test-state.ts +0 -195
  180. package/src/ts/examples/Variance/test-streaming.ts +0 -260
  181. package/src/ts/examples/ZScoreNormalize/test-state.ts +0 -277
  182. package/src/ts/examples/ZScoreNormalize/test-streaming.ts +0 -306
  183. package/src/ts/examples/advanced-dsp-examples.ts +0 -397
  184. package/src/ts/examples/callbacks/advanced-router-features.ts +0 -326
  185. package/src/ts/examples/callbacks/benchmark-circular-buffer.ts +0 -109
  186. package/src/ts/examples/callbacks/monitoring-example.ts +0 -265
  187. package/src/ts/examples/callbacks/pipeline-callbacks-example.ts +0 -137
  188. package/src/ts/examples/callbacks/pooled-callbacks-example.ts +0 -274
  189. package/src/ts/examples/callbacks/priority-routing-example.ts +0 -277
  190. package/src/ts/examples/callbacks/production-topic-router.ts +0 -214
  191. package/src/ts/examples/callbacks/topic-based-logging.ts +0 -161
  192. package/src/ts/examples/chaining/test-chaining-redis.ts +0 -113
  193. package/src/ts/examples/chaining/test-chaining.ts +0 -52
  194. package/src/ts/examples/emg-features-example.ts +0 -284
  195. package/src/ts/examples/fft-example.ts +0 -309
  196. package/src/ts/examples/fft-examples.ts +0 -349
  197. package/src/ts/examples/filter-examples.ts +0 -320
  198. package/src/ts/examples/list-state-example.ts +0 -131
  199. package/src/ts/examples/logger-example.ts +0 -91
  200. package/src/ts/examples/notch-filter-examples.ts +0 -243
  201. package/src/ts/examples/phase5/drift-detection-example.ts +0 -290
  202. package/src/ts/examples/phase6-7/production-observability.ts +0 -476
  203. package/src/ts/examples/phase6-7/redis-timeseries-integration.ts +0 -446
  204. package/src/ts/examples/redis/redis-example.ts +0 -202
  205. package/src/ts/examples/redis-example.ts +0 -202
  206. package/src/ts/examples/simd-benchmark.ts +0 -126
  207. package/src/ts/examples/tap-debugging.ts +0 -230
  208. package/src/ts/examples/timeseries/comparison-example.ts +0 -290
  209. package/src/ts/examples/timeseries/iot-sensor-example.ts +0 -143
  210. package/src/ts/examples/timeseries/redis-streaming-example.ts +0 -233
  211. package/src/ts/examples/waveform-length-example.ts +0 -139
  212. package/src/ts/fft.ts +0 -722
  213. package/src/ts/filters.ts +0 -1078
  214. package/src/ts/index.ts +0 -120
  215. package/src/ts/types.ts +0 -589
  216. package/tsconfig.json +0 -15
package/LICENSE CHANGED
@@ -1,21 +1,21 @@
1
- MIT License
2
-
3
- Copyright (c) 2025 Alan Kochukalam George
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.
1
+ MIT License
2
+
3
+ Copyright (c) 2025 Alan Kochukalam George
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.