sayou-visualizer 0.0.2__tar.gz → 0.0.4__tar.gz

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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sayou-visualizer
3
- Version: 0.0.2
3
+ Version: 0.0.4
4
4
  Summary: Connector components for the Sayou Data Platform
5
5
  Project-URL: Homepage, https://www.sayouzone.com/
6
6
  Project-URL: Documentation, https://sayouzone.github.io/sayou-fabric/
@@ -214,7 +214,11 @@ Classifier: Programming Language :: Python :: 3.10
214
214
  Classifier: Programming Language :: Python :: 3.11
215
215
  Classifier: Topic :: Software Development :: Libraries :: Application Frameworks
216
216
  Requires-Python: >=3.9
217
- Requires-Dist: sayou-core~=0.2.2
217
+ Requires-Dist: networkx==3.4.2
218
+ Requires-Dist: pyvis==0.3.2
219
+ Requires-Dist: rich==14.2.0
220
+ Requires-Dist: sayou-core~=0.3.0
221
+ Requires-Dist: websocket-client==1.9.0
218
222
  Description-Content-Type: text/markdown
219
223
 
220
224
  # sayou-visualizer
@@ -1,22 +1,8 @@
1
- import os
2
- import sys
3
1
  import time
4
2
 
5
- CURRENT_DIR = os.path.dirname(os.path.abspath(__file__))
6
- ROOT_DIR = CURRENT_DIR
7
- while not os.path.exists(os.path.join(ROOT_DIR, "packages")):
8
- parent = os.path.dirname(ROOT_DIR)
9
- if parent == ROOT_DIR:
10
- raise FileNotFoundError("'packages' folder not found.")
11
- ROOT_DIR = parent
12
-
13
- PACKAGES_ROOT = os.path.join(ROOT_DIR, "packages")
14
- sys.path.insert(0, os.path.join(PACKAGES_ROOT, "sayou-connector", "."))
15
- sys.path.insert(0, os.path.join(PACKAGES_ROOT, "sayou-visualizer", "."))
16
-
17
3
  from sayou.connector.pipeline import ConnectorPipeline
18
4
 
19
- from src.sayou.visualizer.pipeline import VisualizerPipeline
5
+ from sayou.visualizer.pipeline import VisualizerPipeline
20
6
 
21
7
 
22
8
  def main():
@@ -36,7 +36,7 @@ async def log_handler(websocket):
36
36
  async def main():
37
37
  print("📡 WebSocket Server listening on ws://localhost:8765...")
38
38
  async with websockets.serve(log_handler, "localhost", 8765):
39
- await asyncio.Future() # run forever
39
+ await asyncio.Future()
40
40
 
41
41
 
42
42
  if __name__ == "__main__":
@@ -7,7 +7,7 @@ build-backend = "hatchling.build"
7
7
  # -----------------
8
8
  [project]
9
9
  name = "sayou-visualizer"
10
- version = "0.0.2"
10
+ version = "0.0.4"
11
11
  authors = [
12
12
  { name = "Sayouzone", email = "contact@sayouzone.com" },
13
13
  ]
@@ -24,7 +24,11 @@ classifiers = [
24
24
  "Topic :: Software Development :: Libraries :: Application Frameworks",
25
25
  ]
26
26
  dependencies = [
27
- "sayou-core ~= 0.2.2"
27
+ "sayou-core ~= 0.3.0",
28
+ "networkx == 3.4.2",
29
+ "pyvis == 0.3.2",
30
+ "rich == 14.2.0",
31
+ "websocket-client == 1.9.0"
28
32
  ]
29
33
 
30
34
  # -----------------
@@ -1,5 +1,4 @@
1
1
  from pyvis.network import Network
2
-
3
2
  from sayou.core.base_component import BaseComponent
4
3
 
5
4
 
@@ -1,5 +1,4 @@
1
1
  import networkx as nx
2
-
3
2
  from sayou.core.callbacks import BaseCallback
4
3
 
5
4
 
@@ -3,7 +3,6 @@ from rich.live import Live
3
3
  from rich.panel import Panel
4
4
  from rich.spinner import Spinner
5
5
  from rich.tree import Tree
6
-
7
6
  from sayou.core.callbacks import BaseCallback
8
7
 
9
8
 
@@ -20,11 +19,9 @@ class RichConsoleTracer(BaseCallback):
20
19
  )
21
20
 
22
21
  def on_start(self, component_name, input_data, **kwargs):
23
- # 라이브 컨텍스트가 꺼져있으면 켬 (최초 1회)
24
22
  if not self.live.is_started:
25
23
  self.live.start()
26
24
 
27
- # 1. 컴포넌트 브랜치 생성 (없으면)
28
25
  if component_name not in self.comp_branches:
29
26
  if "ConnectorPipeline" in component_name:
30
27
  branch = self.root_tree
@@ -34,7 +31,6 @@ class RichConsoleTracer(BaseCallback):
34
31
 
35
32
  self.comp_branches[component_name] = branch
36
33
 
37
- # 2. 데이터 노드 추가 (스피너와 함께)
38
34
  branch = self.comp_branches[component_name]
39
35
  data_id = self._get_simple_id(input_data)
40
36
 
@@ -53,7 +49,6 @@ class RichConsoleTracer(BaseCallback):
53
49
  self.live.refresh()
54
50
 
55
51
  def stop(self):
56
- """파이프라인 종료 시 호출"""
57
52
  self.root_tree.add("✅ [bold green]Finished[/]")
58
53
  self.live.stop()
59
54
 
@@ -1,8 +1,8 @@
1
1
  import json
2
2
  import queue
3
3
  import threading
4
- import websocket # pip install websocket-client
5
4
 
5
+ import websocket
6
6
  from sayou.core.callbacks import BaseCallback
7
7
 
8
8