synapse-storage 3.0.4 → 3.0.7

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.
package/README.md CHANGED
@@ -1,93 +1,59 @@
1
- # Synapse
1
+ # Synapse Storage
2
2
 
3
- Synapse — это набор инструментов для управления состоянием + API-клиент.
3
+ [![npm version](https://badge.fury.io/js/synapse-storage.svg)](https://badge.fury.io/js/synapse-storage)
4
+ [![Bundle Size](https://img.shields.io/bundlephobia/minzip/synapse-storage)](https://bundlephobia.com/package/synapse-storage)
5
+ [![TypeScript](https://img.shields.io/badge/TypeScript-Ready-blue)](https://www.typescriptlang.org/)
4
6
 
5
- ## Особенности
7
+ Набор инструментов для управления состоянием и API-запросами с поддержкой различных типов хранилищ.
6
8
 
7
- - **Не привязан к конкретному фреймворку**: Вы можете использовать Synapse в контексте любого фреймворка или независимо от него
8
- - **Разнообразные адаптеры хранилищ**: Выбирайте между Memory, LocalStorage или IndexedDB в зависимости от ваших потребностей
9
- - **Различный способ получения данных**: Создавайте и комбинируйте селекторы для вычисляемых значений на основе состояния в стиле Redux или просто подписывайтесь на конкретное свойство в хранилище
10
- - Возможность создания вычисляемых селекторов в стиле Redux
11
- - Возможность прямой подписки на конкретное свойство в хранилище
12
- - Возможность подписки на реактивное состояние
13
- - **Надежный API-клиент**: Создайте удобный API-клиент для вашего приложения (похож на RTK Query)
14
- - **Поддержка middleware**: Расширяйте функциональность с помощью пользовательских middleware
15
- - **Система плагинов**: Используйте готовые или создавайте собственные плагины для расширения функциональности
16
- - **Отдельные возможности для реактивного подхода**: Возможность гибкой работы с api-запросами в стиле Redux-Observable и RxJS
17
9
 
18
- ## Автор
10
+ ## 🎯 Модули и зависимости
19
11
 
20
- **Владислав** Senior Frontend Developer (React, TypeScript)÷
12
+ Устанавливайте только те зависимости, которые вам нужны:
21
13
 
22
-
23
- > ### 🔎 Нахожусь в поиске новых карьерных возможностей!
24
- >
25
- > [GitHub](https://github.com/Vlad92msk/) | [LinkedIn](https://www.linkedin.com/in/vlad-firsov/)
26
-
27
-
28
- ## Установка
14
+ ## 📦 Установка
29
15
 
30
16
  ```bash
31
17
  npm install synapse-storage
32
- # или
33
- yarn add synapse-storage
34
- # или
35
- pnpm add synapse-storage
36
18
  ```
37
19
 
20
+ ### Дополнительные зависимости (по необходимости)
38
21
 
39
- ## В своих примерах я буду использовать top-level-await, поэтому:
40
-
41
- ### Версии Node.js
42
- - ✅ Node.js ≥ 14.8.0 (минимальная версия с поддержкой top-level-await)
43
- - ✅ Node.js ≥ 16.0.0 (рекомендуется для полной поддержки)
22
+ ```bash
23
+ # Для реактивных возможностей
24
+ npm install rxjs
44
25
 
45
- ### Версии TypeScript
46
- - TypeScript ≥ 3.8 (базовая поддержка)
47
- - ✅ TypeScript ≥ 4.5 (улучшенная поддержка)
48
- - ✅ TypeScript ≥ 5.0 (рекомендуется, полная поддержка)
26
+ # Для React интеграции
27
+ npm install react react-dom
49
28
 
50
- ### Параметр `target` в tsconfig.json
51
- - ES2022 (рекомендуется)
52
- - ✅ ESNext
53
- - ❌ ES2021 или ниже (не поддерживает top-level-await)
29
+ # Все сразу для полного функционала
30
+ npm install synapse-storage rxjs react react-dom
31
+ ```
54
32
 
55
- ### Параметр `module` в tsconfig.json
56
- - ✅ ESNext (рекомендуется)
57
- - ✅ NodeNext
58
- - ✅ ES2022
59
- - ❌ CommonJS (не поддерживает top-level-await)
60
- - ❌ AMD, UMD, System (не поддерживают top-level-await)
33
+ ## 🚀 Быстрый старт
61
34
 
62
- ### Параметр `moduleResolution` в tsconfig.json
63
- - ✅ bundler (для проектов использующих Vite, Webpack 5, esbuild)
64
- - ✅ node16 или nodenext (для Node.js проектов)
65
- - ✅ node (для совместимости со старыми проектами, не рекомендуется)
66
- - ❓ classic (может работать с ограничениями)
67
35
 
68
- ### Бандлеры и сборщики
69
- - ✅ Vite (полная поддержка)
70
- - Webpack 5+ (с правильной конфигурацией)
71
- - esbuild (полная поддержка)
72
- - Rollup плагином @rollup/plugin-dynamic-import-vars)
73
- - Next.js 12 (нужен правильный build target)
74
- - Webpack 4 и ниже
36
+ | Модуль | Описание | Зависимости |
37
+ |--------|-----------------------|-------------|
38
+ | `synapse-storage/core` | Хранилища состояния | Нет |
39
+ | `synapse-storage/react` | Инструменты для React | React 18+ |
40
+ | `synapse-storage/reactive` | RxJS интеграция | RxJS 7.8.2+ |
41
+ | `synapse-storage/api` | HTTP клиент | Нет |
42
+ | `synapse-storage/utils` | Утилиты | Нет |
75
43
 
76
- ### Пример минимальной конфигурации tsconfig.json
44
+ > **💡 Совет:** Импортируйте только нужные модули для оптимального размера бандла
77
45
 
46
+ ### Минимальный tsconfig.json:
78
47
  ```json
79
48
  {
80
49
  "compilerOptions": {
81
50
  "target": "ES2022",
82
- "module": "ESNext",
83
- "moduleResolution": "bundler",
84
- "esModuleInterop": true
51
+ "module": "ES2022",
52
+ "moduleResolution": "bundler"
85
53
  }
86
54
  }
87
55
  ```
88
-
89
- ## Быстрый старт
90
-
56
+
91
57
  Импорты:
92
58
  ```typescript
93
59
  // Инструменты создания и управления хранилищем