Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
98 commits
Select commit Hold shift + click to select a range
31d97de
chore: update README
Friend-zva Aug 19, 2025
e8d0c8d
fix: unexpected keys in saved JSON
Friend-zva Sep 11, 2025
11c56f3
feat: toggle button for layouts
Friend-zva Sep 11, 2025
34fc255
ref: create 'react-flow' dir
Friend-zva Sep 11, 2025
f7cf170
feat: impl py script for generation DOT
Friend-zva Sep 11, 2025
1b74394
ref: support for edge parsing without id
Friend-zva Sep 11, 2025
4a737e9
feat: parse JSON without 'data' in 'nodes'
Friend-zva Sep 11, 2025
c1d4fd2
feat: gen DOT for 'nodes' without 'data'
Friend-zva Sep 11, 2025
72fc5bd
Merge branch 'graphviz'
Friend-zva Sep 11, 2025
8b797ec
chore: add JSON schema
Friend-zva Sep 13, 2025
b17d83d
docs: update all README
Friend-zva Sep 13, 2025
d9d9292
feat: connection limit
Friend-zva Sep 13, 2025
c163e20
feat: support edit a node in 'MenuConfig'
Friend-zva Sep 13, 2025
c8d5a4b
fix: connetion limit and adding node
Friend-zva Sep 13, 2025
068a0d3
feat: new edge types and selection button
Friend-zva Sep 14, 2025
0b99ed4
fix: upload nets, typing and type edges
Friend-zva Sep 15, 2025
75da13e
feat: dinamic net update
Friend-zva Sep 16, 2025
d2eddde
fix: uniqueness of ID port, typing and annotation
Friend-zva Sep 16, 2025
db5d6b6
fix: a ghostly node during the force layout
Friend-zva Sep 16, 2025
f79ad10
ref: try to typing layouts
Friend-zva Sep 16, 2025
6cdace0
ref: typing and docs views
Friend-zva Sep 16, 2025
08acc64
fix: edit the net during the force layout
Friend-zva Sep 16, 2025
eb40c69
fix: download the net
Friend-zva Sep 16, 2025
3d6d6b9
fix: a net view after switching the net
Friend-zva Sep 17, 2025
ce37a09
ref: typing and imports
Friend-zva Sep 17, 2025
b35d347
docs: update README
Friend-zva Sep 17, 2025
e609696
feat: multi-file support and exception handling
Friend-zva Sep 18, 2025
d140512
docs: update README
Friend-zva Sep 18, 2025
b3a3bd1
docs: update all README
Friend-zva Sep 18, 2025
146e4fd
fix: upload net with some error
Friend-zva Sep 18, 2025
58fff40
feat: new node types and selection button
Friend-zva Sep 25, 2025
f92f514
fix: changing node and edge types after upload
Friend-zva Sep 27, 2025
61f3dcc
docs: add demos
Friend-zva Sep 30, 2025
46b3f76
ref: typing and clean up
Friend-zva Oct 2, 2025
7a5dfe7
feat: comparison mode for dynamics
Friend-zva Oct 2, 2025
695341d
fix: change types of node and edge
Friend-zva Oct 2, 2025
bc7e22e
fix: ghost edges and nodes
Friend-zva Oct 5, 2025
715e21b
fix: two running layouts
Friend-zva Oct 5, 2025
890d205
feat: support color in comparison mode
Friend-zva Oct 5, 2025
2ceab9c
ref: clean up effects
Friend-zva Oct 5, 2025
fd18ef2
fix: selecting node and saving net
Friend-zva Oct 5, 2025
a002872
fix: limit connections and self-connection
Friend-zva Oct 5, 2025
321577a
docs: update demos
Friend-zva Oct 6, 2025
a0fe5df
fix: typos in README and net schema
Friend-zva Oct 6, 2025
6c4017c
feat: add pictures of good analogs
Friend-zva Oct 6, 2025
3020645
chore: add formatter and apply it
Friend-zva Oct 7, 2025
38cceb6
chore: add linter and fix errors
Friend-zva Oct 7, 2025
ff18d83
chore: add linter and formatter in CI
Friend-zva Oct 7, 2025
174bcc0
test: visit site with Cypress
Friend-zva Oct 8, 2025
3c269dc
ref: default value for port label in schema
Friend-zva Oct 8, 2025
4110912
fix: typos in 'workflows'
Friend-zva Oct 8, 2025
503d9ba
chore: upgrade packages
Friend-zva Oct 8, 2025
964b7ea
chore: update ci dir
Friend-zva Oct 8, 2025
729857e
chore: add linter and formatter
Friend-zva Oct 8, 2025
06cb5f4
ref: update project structure
Friend-zva Oct 8, 2025
774cc71
test: empty, invalid and valid getter JSON
Friend-zva Oct 8, 2025
f81ae13
chore: add linter, formatter and tests in CI
Friend-zva Oct 8, 2025
0da24ab
ref: 'graphviz' -> 'INviz'
Friend-zva Oct 8, 2025
0f63fa8
ref: 'react-flow' -> 'INflow'
Friend-zva Oct 8, 2025
667c72d
fix: 'endOfLine' type for formatter
Friend-zva Oct 8, 2025
246a230
fix: load one net
Friend-zva Oct 10, 2025
97dac27
ref: change name of default node type
Friend-zva Oct 21, 2025
55874f4
ref: app component parameters -> hooks
Friend-zva Oct 21, 2025
b8e68ee
ref: flow component parameters -> hooks
Friend-zva Oct 21, 2025
b21b912
ref: handle -> port, useMC -> useNodeInfoState
Friend-zva Oct 22, 2025
61cbe4c
test: startup and layout
Friend-zva Oct 23, 2025
80ed63d
test: add coverage
Friend-zva Oct 23, 2025
d05a151
test: one-two click interaction
Friend-zva Oct 23, 2025
caaf4e0
test: multiple options
Friend-zva Oct 23, 2025
f264678
ref: type 'Net' and typing
Friend-zva Oct 28, 2025
b88fdd7
feat: support localStorage
Friend-zva Oct 29, 2025
7d1dafd
ref: alias for paths
Friend-zva Oct 29, 2025
4d9d27e
ref: storage without instance
Friend-zva Oct 30, 2025
4974efb
ref: duplicate tracking and net object
Friend-zva Oct 30, 2025
eccf636
ref: 'nodes' -> 'agents' in JSON schema
Friend-zva Oct 30, 2025
3b5fe28
ref: update environment
Friend-zva Oct 30, 2025
889d0b7
test: simple interaction and add 'data-testid'
Friend-zva Oct 30, 2025
9a1c244
test: switch mode net
Friend-zva Oct 31, 2025
791a39d
test: selected node
Friend-zva Oct 31, 2025
96a2f72
fix: delay in test and format file
Friend-zva Oct 31, 2025
9d961c5
fix: delay in download test
Friend-zva Oct 31, 2025
a576ee8
chore: react to linter report
Friend-zva Oct 31, 2025
8cd5151
feat: save position in localStorage
Friend-zva Oct 31, 2025
41911ee
ref: setup net as const
Friend-zva Oct 31, 2025
ac2423b
ref: concurrency in workflows and delay in test
Friend-zva Nov 1, 2025
ddc9e3c
feat: deploy action for Pages
Friend-zva Nov 1, 2025
3aeb3d6
test: get rid of 'cy.wait()'
Friend-zva Nov 1, 2025
5fedb24
fix: concurrency in workflows
Friend-zva Nov 2, 2025
2771719
test: specific of Interaction Nets
Friend-zva Nov 3, 2025
7ba0668
fix: ResizeObserver in comp mode
Friend-zva Nov 3, 2025
e55092b
ref: restructure tests
Friend-zva Nov 4, 2025
2cfb151
chore: update setup versions in CI
Friend-zva Nov 4, 2025
01519dc
chore: code coverage in the job summary
Friend-zva Nov 4, 2025
a92d0ed
fix: general style and visibility for devices
Friend-zva Nov 4, 2025
6faf358
ref: structure and internal dependencies
Friend-zva Nov 4, 2025
808262d
test: set chrome browser
Friend-zva Nov 4, 2025
21de2b3
fix: net index when click save
Friend-zva Nov 5, 2025
e48a6ad
test: turn off ResizeObserver error
Friend-zva Nov 5, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 17 additions & 0 deletions .github/actions/setup-node/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
name: 'Setup Node.js'
description: 'Setup Node.js environment for INflow'

runs:
using: composite
steps:
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '24'
cache: 'npm'
cache-dependency-path: './INflow/package-lock.json'

- name: Install dependencies
working-directory: ./INflow
run: npm ci
shell: bash
17 changes: 17 additions & 0 deletions .github/actions/setup-python/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
name: 'Setup Python'
description: 'Setup Python environment for INviz'

runs:
using: composite
steps:
- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: '3.13'

- name: Install dependencies
working-directory: ./INviz
run: |
python -m pip install --upgrade pip
pip install ruff pytest
shell: bash
67 changes: 67 additions & 0 deletions .github/workflows/INflow.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
name: Project INflow

on:
workflow_dispatch:
push:
branches: ['react-flow', 'main']
paths: [INflow/**]
pull_request:
branches: ['**']
paths: [INflow/**]

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}-INflow
cancel-in-progress: true

jobs:
formatter:
name: Formatter
runs-on: ubuntu-latest

steps:
- name: Clone project
uses: actions/checkout@v4
- uses: ./.github/actions/setup-node

- name: Run Prettier
working-directory: ./INflow
run: npm run format

linter:
name: Linter
runs-on: ubuntu-latest

steps:
- name: Clone project
uses: actions/checkout@v4
- uses: ./.github/actions/setup-node

- name: Run ESlint
working-directory: ./INflow
run: npm run lint

tests:
name: Tests
runs-on: ubuntu-latest

steps:
- name: Clone project
uses: actions/checkout@v4
- uses: ./.github/actions/setup-node

- name: Run Cypress
uses: cypress-io/github-action@v6.10.0
with:
working-directory: ./INflow
start: npm run dev
wait-on: 'http://localhost:5173'
browser: chrome

- name: Get coverage
working-directory: ./INflow
run: |
npx nyc report
echo '## Coverage' >> $GITHUB_STEP_SUMMARY
echo '```' >> $GITHUB_STEP_SUMMARY
npx nyc report --reporter=text-summary >> $GITHUB_STEP_SUMMARY
echo '```' >> $GITHUB_STEP_SUMMARY
54 changes: 54 additions & 0 deletions .github/workflows/INviz.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
name: Project INviz

on:
workflow_dispatch:
push:
branches: ['graphviz', 'main']
paths: [INviz/**]
pull_request:
branches: ['**']
paths: [INviz/**]

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}-INviz
cancel-in-progress: true

jobs:
formatter:
name: Formatter
runs-on: ubuntu-latest

steps:
- name: Clone project
uses: actions/checkout@v4
- uses: ./.github/actions/setup-python

- name: Run Ruff
working-directory: ./INviz
run: ruff format --check .

linter:
name: Linter
runs-on: ubuntu-latest

steps:
- name: Clone project
uses: actions/checkout@v4
- uses: ./.github/actions/setup-python

- name: Run Ruff
working-directory: ./INviz
run: ruff check .

tests:
name: Tests
runs-on: ubuntu-latest

steps:
- name: Clone project
uses: actions/checkout@v4
- uses: ./.github/actions/setup-python

- name: Run Pytest
working-directory: ./INviz
run: python -m pytest -vv
44 changes: 44 additions & 0 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
name: Deploy to GitHub Pages

on:
workflow_dispatch:
push:
branches: ['deploy']

permissions:
contents: read
pages: write
id-token: write

concurrency:
group: 'pages'
cancel-in-progress: true

jobs:
deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}

name: Deploy
runs-on: ubuntu-latest

steps:
- name: Clone project
uses: actions/checkout@v4
- uses: ./.github/actions/setup-node

- name: Build
run: npm run build
working-directory: ./INflow

- name: Setup GitHub Pages
uses: actions/configure-pages@v5

- name: Upload artifact
uses: actions/upload-pages-artifact@v4
with:
path: ./INflow/dist

- name: Deploy to GitHub Pages
uses: actions/deploy-pages@v4
22 changes: 1 addition & 21 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,24 +1,4 @@
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*

node_modules
dist
dist-ssr
*.local

# Editor directories and files
.vscode/*
!.vscode/extensions.json
.vscode
.idea
.DS_Store
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?
Empty file added INflow/.eslingignore.js
Empty file.
18 changes: 18 additions & 0 deletions INflow/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Packages
node_modules

# Logs
logs
*.log
npm-debug.log*
*.local

# Tests
.nyc_output
coverage
cypress/downloads
cypress/videos
cypress/screenshots

# Build
dist
1 change: 1 addition & 0 deletions INflow/.prettierignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
README.md
24 changes: 24 additions & 0 deletions INflow/.prettierrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
{
"tabWidth": 4,
"semi": true,
"singleQuote": true,
"trailingComma": "all",
"bracketSpacing": true,
"bracketSameLine": false,
"arrowParens": "avoid",
"printWidth": 100,
"overrides": [
{
"files": ["*.tsx", "*.jsx", "*.css", "*.html", "*.json", "*.yml"],
"options": {
"tabWidth": 2
}
},
{
"files": ["tsconfig.json"],
"options": {
"parser": "json"
}
}
]
}
Loading