Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
326 commits
Select commit Hold shift + click to select a range
827d2af
Have to shift to non-default exports again
May 7, 2024
a43a948
More todo
May 7, 2024
03a3fa8
Moved guide and todo to docs
May 7, 2024
05e0652
Identified 3 bugs in nodes
May 7, 2024
740b92b
Identified bug in event/sequence
May 7, 2024
9b5b77d
Modified to use non-default imports
May 7, 2024
f163131
Fixed todo and ran build
May 7, 2024
0f075e0
Replaced XMLHttpRequest for JSON with WebSocket
May 7, 2024
99e9844
Rewound XMLHttpRequest calls b/c of bug I can't solve right now
May 7, 2024
6425462
Reran docs
May 7, 2024
948e850
Beginning non-breaking separation of concerns
May 7, 2024
e8f5359
Fix event handler adds in ContextMenu constructor
May 7, 2024
c9022ff
Set jsdoc to -r, no effect?
May 8, 2024
5e26f87
Removed sillyclient
May 8, 2024
da672a0
LGraphGroup improvements
May 8, 2024
fa043d2
Adjustments to lightgraph-editor.js
May 8, 2024
93a3eb6
Deprecated LiteGraph.closeAllContextMenus in favor of ContextMenu.clo…
May 8, 2024
3e22f87
Adjustments to LGraphNode
May 8, 2024
3dcc15d
LGraphCanvas improvements
May 8, 2024
a450007
Improvements to DragAndScale
May 8, 2024
2473abb
Improvements to LGraph
May 8, 2024
a17b86e
test doc build cycle
May 8, 2024
a1990a0
Improvements to ContextMenu
May 8, 2024
cc92b1d
Improvements to LGraph
May 8, 2024
bffdccb
Minor improvements to lgraphcanvas
May 8, 2024
1f8783b
Added JSDoc comments for DragAndScale
May 8, 2024
382a7f9
font defaults to sans-serif as per PR294
May 8, 2024
42bf6e4
Pruned unused styles as per PR294
May 8, 2024
bb6bc74
Last attempt to run JSDocs before running debug and figuring out why …
May 8, 2024
90f9bee
Normalized event handler registration
May 9, 2024
163c34e
Deprecated LiteGraph.pointerListenerRemove and LiteGraph.pointerListe…
May 9, 2024
ed8b548
Improved event binding
May 9, 2024
84a5b97
Build cycle
May 9, 2024
368b946
Improved HTML
May 9, 2024
bc6adc4
Fixed minWidth, minHeight not having px
May 9, 2024
2384c34
Documented LGraphGroup
May 9, 2024
7ddbd28
LiteGraph singleton class conversion and notes
May 9, 2024
34d1cfe
Shifted deprecated code into LiteGraph class, almost have litegraph b…
May 9, 2024
e825952
Just got build working, ready for integration to main
May 9, 2024
b1afcfe
Updated readme
May 9, 2024
0740faf
Updating README
May 9, 2024
5e7a043
Adjustment to build generating typo
May 9, 2024
9af7448
Cut deprecated methods for 0.9.x
May 9, 2024
c701129
Adding an HTML nodepack per PR271
May 10, 2024
cd4f591
PR434
May 10, 2024
1048874
PR440 (Don't ignore input on HttpRequestNode)
May 10, 2024
c5fd69e
PR443 (Enable exiting Fullscreen via button)
May 10, 2024
2310b4d
PR446 (Rendering optimization at low FPS)
May 10, 2024
8584abb
PR460, fix mistake in CSS affecting dialogs
May 10, 2024
df5b0ec
PR466 Fix links sometimes not being correct when copy pasting nodes
May 10, 2024
f07ea9e
Updated README.md
May 10, 2024
01087b0
Updated README.md breaking section
May 10, 2024
6ca2465
Indicated more clearly that demo site is for original
May 10, 2024
29c2e13
Improving README
May 10, 2024
6066667
Added SVG favicon
May 10, 2024
ad24bec
Updates to README and package.json
May 10, 2024
56387ec
Updated TODO.md
May 11, 2024
0797c35
Improvements towards GL working. litegl.js still has 106 references …
May 12, 2024
2ca5220
Minor improvements mostly in lgraphcanvas.js
May 12, 2024
c0b644e
Minor mprovements to lgraphcanvas.js
May 12, 2024
f41181e
Minor improvements to dragandscale.js
May 13, 2024
4675585
Shifted static members into lgraph.js
May 13, 2024
fe0a2a9
Minor improvements to lgraphgroup.js
May 13, 2024
fdbdc7d
Minor improvements to lgraphnode.js
May 13, 2024
b5cff47
Ran build and docs
May 13, 2024
f52f489
Minor HTML improvements in litegraph-editor.js
May 13, 2024
d233396
Minor improvements in lgraphnode, bugfix for multiview subgraphs in l…
May 13, 2024
21a8f40
Minor improvements to lgraphnode.js
May 13, 2024
0bd3056
Minor improvements to lgraphnode.js, fixed play button showing correc…
May 13, 2024
23d1dfa
Fixed subgraph node being misplaced because of canvas.width being set…
May 13, 2024
0e7fe4c
Removed comment on canvas width bug
May 13, 2024
e0468b5
Build and adjustment to package name
May 15, 2024
e02ebfe
Integrated bugfix version incrementer in build.py
May 15, 2024
fc6fd63
Fixed to be able to update minor and major versions, and to no longer…
May 15, 2024
1a647ef
Got eslint running properly
May 15, 2024
f48b3f5
Fixed package versions
May 15, 2024
180b809
Managed to get Jest working with modules, ES6 classes
May 15, 2024
0f2e36d
Building a functioning eslint with style correction
May 15, 2024
4f9dd76
Continuing to update eslint rules
May 15, 2024
9817324
Finished style setting for eslint
May 15, 2024
2ee4a10
Added debug-related eslint back in at recommended settings
May 15, 2024
7406638
Removed old eslint stuff
May 15, 2024
3dd0d62
hacked linter to ignore undef for DOM
May 15, 2024
21e65fe
Remove prettierrc
May 15, 2024
47b8091
Linted midi.js and network.js
May 15, 2024
3db71d8
Linted math3d.js, one bug remains, filed issue.
May 15, 2024
e61e58d
Did some linting to math.js
May 15, 2024
f7838fd
Linted logic.js
May 15, 2024
592efa7
Linted interface.js
May 15, 2024
cba1024
More linting
May 15, 2024
9f0a7bb
Linted much of gltextures.js, raised issue for LGraphExposition onExe…
May 15, 2024
fcf6cae
Linted geometry.js
May 15, 2024
77e628f
Linted events.js
May 15, 2024
32fe24a
Linted base.js
May 15, 2024
b24a9a3
Linted audio.js
May 15, 2024
8f27979
Linting, undid some to midi.js b/c bug
May 15, 2024
1b65361
Linted editor
May 15, 2024
66144c5
Linted contextmenu.js raised issue about trigger
May 15, 2024
e4d03d9
Linted curveeditor.js
May 15, 2024
51c969f
Linted dragandscale.js
May 15, 2024
9924380
Linted lgraph.js
May 15, 2024
1e851c7
Linted some of lgraphcanvas.js
May 15, 2024
ccd48e0
Updated README
May 15, 2024
5016f41
Fixed comment in litegraph.js
May 15, 2024
1060b9a
Add space after comment //'s
May 15, 2024
e80c8db
Added spaces in front of {
May 15, 2024
d21fef2
Removed trailing spaces
May 15, 2024
c0e86bf
Removed multiple spaces
May 15, 2024
bd2f304
Always have parens around arrow functions
May 15, 2024
9cc16f6
Always have spacing around arrows
May 15, 2024
29db4ad
Partial conversion to 1tbs brace-style
May 15, 2024
6062387
Closer to 1tbs
May 15, 2024
d0ff67e
Adjusted indentation to 4-space
May 15, 2024
3ad2a53
Adding space after : in object key/value pairs
May 15, 2024
cca57f5
Spacing around arrow functions fix
May 15, 2024
e4d06d5
Removed space inside []
May 15, 2024
d8cd6c0
Changed to comma-last style
May 15, 2024
e3c0f82
Added trailing commas
May 16, 2024
f17b804
More linting
May 16, 2024
5a2c647
More linting, also ES6 class'd glfx.js
May 16, 2024
dc7b411
Ran build
May 16, 2024
cc38bb7
Linted lgraphnode.js
May 16, 2024
7dd5dee
More linting to lgraphcanvas.js
May 16, 2024
a3a2089
Most of the linting for lgraphcanvas.js
May 16, 2024
fc4ea29
Bugfixes because caching caused some things to stay hidden
May 16, 2024
d8f6de4
Converting glshaders.js to ES6 and linting
May 16, 2024
b920fbc
More work on glshaders.js
May 16, 2024
76cd766
ES6 conversion and linting in gltextures.js
May 16, 2024
d7f7c72
Even more linting
May 16, 2024
2610f90
Reverted midi due to catastrophic damage.
May 16, 2024
6efc0c0
Redid some of the linting for midi.js
May 16, 2024
05fc065
0.9.8 pushed. Jest fails, down to 60ish lint errors
May 16, 2024
9413920
Improved ES6 in geometry.js
May 17, 2024
76274dd
Made glfx.js more readable using template literals
May 17, 2024
91d96eb
Cleaned up some code in glshaders.js
May 17, 2024
37161c4
Linted
May 17, 2024
7e268b6
Improved glshaders.js a bit more
May 17, 2024
2342d37
Cleaned up code.js and litegl.js a bit, down to 82 references to global
May 17, 2024
5108a83
Split dds.js out of litegl.js
May 17, 2024
9d302d7
Resolved bug in ContextMenu.trigger
May 17, 2024
91cc777
Linted midi.js, down to 39 problems
May 17, 2024
77838ec
Linting, 34 problems left
May 17, 2024
4659f39
Linted lgraphcanvas.js, down to 23 problems
May 17, 2024
21057a3
ES6 conversion and cleanup of gltextures.js
May 17, 2024
a813e34
Mostly optimizations to litegraph.js
May 17, 2024
3886297
Ran build, integrating Comfyanonymous' changes as I see appropriate
May 17, 2024
6624d0a
Updated TODO with progress bars
May 17, 2024
22d4149
Updated Readme.md
May 17, 2024
2e509de
ES6 conversion down to L2975 in gltextures.js
May 17, 2024
e24f6f0
Replaced typedArraytoArray with Array.from
May 17, 2024
317c47e
Shifted options to default parameter
May 18, 2024
f733d22
Changes in litegl.js
May 18, 2024
2f3eaa0
ES6 class converting Mesh
May 18, 2024
771e624
Diff'd Comfy/Javi and examined up to L3662
May 18, 2024
9313c45
Few small bugfixes
May 18, 2024
d15fe59
Converted over to pointer events
May 18, 2024
0915b71
Removed JQuery 1.6.2
May 18, 2024
dd54a8f
Updated TODO, built
May 18, 2024
d0ee54c
Tidied up extra console messages
May 18, 2024
3426f41
Converted throw statements so they're all Errors, not sometimes strings
May 18, 2024
408fd17
Passes equivalent to original Jest testing
May 19, 2024
7adaad4
Build and commit after figuring out what was up with Jest
May 19, 2024
8a9cf84
Tried running JSDoc again. Updated gltextures to ES6 for another 950…
May 19, 2024
12bf42d
ES6 conversion of Mesh
May 19, 2024
c444f95
Converted GL to class instance, been reorganizing methods in litegl.js
May 19, 2024
9ff9afa
More ES6 conversion in litegl.js
May 19, 2024
b9d7f5e
ES6 conversion of Texture
May 19, 2024
0648f5e
ES6 conversion of FBO
May 19, 2024
6c2e2c3
Converted Shader to ES6 class
May 19, 2024
37678e8
Mostly work on litegl.js
May 19, 2024
b309171
Improvements to GL
May 19, 2024
88a96b5
Patches to gl
May 19, 2024
d0ba965
GPT4 identifies the license as an MIT license. I added the header.
May 19, 2024
45965e3
Ran a build cycle. The codebase is now almost completely stable and …
May 19, 2024
cce43a2
Initial commit for 0.10.x
May 20, 2024
ce3303a
0.10.1 build
May 20, 2024
f97e3ec
Atlasan integration
May 21, 2024
e0fa6c9
Integration improvements
May 21, 2024
95e5274
Fixing bug in getCanvasMenuOptions
May 21, 2024
0d19ed1
Currently 1 Jest error, Major linting (>1500 things), 109 remaining l…
May 21, 2024
3643b2b
Build
May 21, 2024
41ab554
Integrated Atlasan's improvements
May 22, 2024
9e02504
Libraries ES6 class conversion
May 22, 2024
96faacd
objects.js ES6 class conversion
May 22, 2024
b1f3d0c
html.js ES6 class conversion
May 22, 2024
00690da
Completed conversion of Atlasan's added nodes
May 22, 2024
55f94e2
Rolled back to 0.10.2 as per discussion with Atlasan, and implemented…
May 24, 2024
a631743
Set LiteGraph.debug in defaults.js
May 24, 2024
d7d9720
Implemented optional condition chained console messaging
May 24, 2024
916d741
Removed branching on LiteGraph.debug
May 24, 2024
cf9b290
Linted and updated TODO
May 24, 2024
2437938
Even more improved TODO
May 24, 2024
5a4d5a1
Fixed import and class attachment thing I broke in 0.8.x
May 24, 2024
e54e2d6
More fixes
May 24, 2024
5bcf7e1
More on TODO
May 24, 2024
1d95958
Updated TODO to aim for 1.0
May 24, 2024
854039c
Another update to TODO
May 24, 2024
1108b83
logging methods
atlasan May 24, 2024
d1567f5
global access LiteGraph
atlasan May 24, 2024
24eded7
cleaning and apply LiteGraph logging methods
atlasan May 24, 2024
b8b9e9d
Linting improvements
May 25, 2024
149ac99
Down to 36 linting errors again
May 25, 2024
e5fef08
Linting improvements, mostly to gltextures.js
May 25, 2024
3be3fd6
JSDoc comments for LLink
May 25, 2024
d345ade
Mostly ES6 conversion in gltextures.js
May 25, 2024
5541169
Completed ES6 conversion of gltextures.js
May 25, 2024
96e33cd
Lint
May 25, 2024
aa60923
Improvements to litegl support
May 25, 2024
6dc5d2e
Added error generating stubs for LiteGraph.pointer* removed methods/p…
May 25, 2024
c05eef0
Scratch
Jun 12, 2024
0240820
Set server to --watch
Jun 12, 2024
7fddcc4
Automated eslint run (14086 problems to 693)
Jun 12, 2024
f1948ab
Complete 100% manual lint to current config
Jun 12, 2024
77208de
jquery excision
Jun 12, 2024
ed1e278
integrated sillyclient.js
Jun 12, 2024
929903e
Blocked sillyclient without deleting it.
Jun 12, 2024
11e6237
favicon fix - html part
Jun 13, 2024
58adb1a
favicon - svg part
Jun 13, 2024
b932d83
Fixed features.json node
Jun 13, 2024
225aac0
Fixed subgraph.json node layout
Jun 13, 2024
51ee33d
Fixed benchmark.json
Jun 13, 2024
d7f8b33
Validated index.html as HTML4.01
Jun 13, 2024
e56fd93
Removed deprecated CSS selectors and rules
Jun 13, 2024
329190f
Improvements to editor_mobile.html
Jun 13, 2024
b534035
HTML string fix in editor
Jun 13, 2024
d9a02ee
Backwards compatible fullscreen
Jun 13, 2024
d703dab
Toggle multiview
Jun 13, 2024
03e5ee9
Improvements to miniWindow, but still re-disabled
Jun 13, 2024
c90b4b5
Reverted jest to ES5 for the sake of proving it.
Jun 13, 2024
f9c146c
Updated sillyclient reference on mobile
Jun 13, 2024
8d870fa
Updates to sync mobile html
Jun 13, 2024
17fd3f8
Fix for duplicate length in base.js
Jun 13, 2024
519f442
Pruned H1, H2 as per PR294 to Javi
Jun 13, 2024
e2856d3
Removed commented out include
Jun 13, 2024
3b0fa58
Fixed ignored input on HttpRequestNode as per PR 440 to Javi
Jun 13, 2024
f9798f0
Fixed mouse and trackpad zoom behavior as per PR 445 to Javi
Jun 13, 2024
8bf6e4c
Fix relative ids when copying to clipboard as per PR 448 to Javi
Jun 13, 2024
d02b4b8
Fixed CSS selector for dialog class as per PR 460 to Javi
Jun 13, 2024
001f3a0
Linted test script
Jun 13, 2024
02c45fe
Updated build
Jun 13, 2024
3626e33
Fixed PR 19 to my repo on this branch
Jun 13, 2024
5130a80
Build script now correctly handles bugfix, minor, major versions
Jun 13, 2024
6f4ca26
Updated TODO
Jun 13, 2024
0d989e1
Fixed bad font tag
Jun 13, 2024
fd2d992
Fixed bad width calculation in gpuload and cpuload ticker
Jun 13, 2024
fac9cec
Updated CHANGES
Jun 13, 2024
b032aa3
Fixed width and height error in contextmenu
Jun 13, 2024
9d7fe02
Fixed Play button
Jun 13, 2024
16afb74
Updated CHANGES.md
Jun 14, 2024
4b7b15e
Refixed adjustMouseEvent (HCL drag/drop comment)
Jun 29, 2024
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
4 changes: 4 additions & 0 deletions .eslintignore
Original file line number Diff line number Diff line change
@@ -1 +1,5 @@
/build
/coverage
/csharp
/docs
/node_modules
56 changes: 0 additions & 56 deletions .eslintrc.js

This file was deleted.

1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ npm-debug.log
temp/
temp/*
coverage/
coverage/*

# Editors
/.vscode/*
Expand Down
1 change: 0 additions & 1 deletion .npmrc

This file was deleted.

5 changes: 0 additions & 5 deletions .prettierrc

This file was deleted.

9 changes: 0 additions & 9 deletions .vscode/extensions.json

This file was deleted.

58 changes: 58 additions & 0 deletions CHANGES.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@

This fork takes the 2011-2014 code for LiteGraph and renews it.

# For 0.8.x "The Middle Class":

## Non-Breaking

* Replacing/revising alot of old event handler code
* Cleaned up alot of loops and condition logic
* Fixed over 400 linting errors

## Breaking

* Replaced the IIFE with ES6 modules
* Replaced ES5 classes with ES6 ones
* Replaced LiteGraph.*class* with just *class*
* SubgraphOutput's location on screen is glitched

# For 0.9.x "On Lint Bunnies":

## Non-Breaking

* Fixed multiscreen
* Fixed fullscreen close button
* Fixed low FPS handling
* Fixed dialog CSS mistake
* HttpRequestNode input is acknowledged
* Fix links sometimes not being correct when copy pasting nodes
* Added favicon
* Fixed SubgraphOutput location glitch
* ESLint down to 24 errors so far

## Breaking

* Removed LiteGraph.closeAllContextMenus in favor of ContextMenu.closeAll()
* Removed LiteGraph.pointerAddListener in favor of addEventListener()
* Removed LiteGraph.pointerRemoveListener in favor of removeEventListener()
* Removed some unused/blank methods
* Removed Mesh.compile in favor of Mesh.upload
* Removed LiteGraph.pointerevents_method
* All mouse events are now *pointer* events

# For "ForwardCompatible" branch

This is where the fun development happens, but isn't suitable for immediate pull to working
code.

Integrated Atlasan's fork (admittedly imperfectly) and realized we need to separate a 1.x pathway
and a 2.x pathway. This one is loaded with features that will ultimately belong in 2.x

# For "Reversion" branch

* At present, I believe 0.11.x presents <no breaking changes> from Javi's repo except
blocking SillyClient.js from calling home.

* This is an ES5/CommonJS upgrade from original that implements PRs to Javi's repo,
bugfixes, compatibility fixes, passes linting, passes audit, fixed example JSON so there's
no weird overflow happening, play/stop works, fullscreen works.
9 changes: 0 additions & 9 deletions CONTRIBUTING.md

This file was deleted.

3 changes: 3 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
MIT License

Copyright (C) 2013 by Javi Agenjo
Copyright (C) 2024 by Daniel Lewis

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
44 changes: 33 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@

# litegraph.js

A library in Javascript to create graphs in the browser similar to Unreal Blueprints. Nodes can be programmed easily and it includes an editor to construct and tests the graphs.

It can be integrated easily in any existing web applications and graphs can be run without the need of the editor.

Try it in the [demo site](https://tamats.com/projects/litegraph/editor).
Try (original) in the [demo site](https://tamats.com/projects/litegraph/editor).

![Node Graph](imgs/node_graph_example.png "WebGLStudio")

Expand Down Expand Up @@ -33,7 +34,15 @@ Although it is easy to create new node types, LiteGraph comes with some default

You can install it using npm
```
npm install litegraph.js
git clone https://github.com/daniel-lewis-ab/litegraph.js.git
cd litegraph.js
npm i
```

or

```
npm i @mr_pebble/litegraph
```

Or downloading the ```build/litegraph.js``` and ```css/litegraph.css``` version from this repository.
Expand All @@ -44,7 +53,7 @@ Or downloading the ```build/litegraph.js``` and ```css/litegraph.css``` version
<html>
<head>
<link rel="stylesheet" type="text/css" href="litegraph.css">
<script type="text/javascript" src="litegraph.js"></script>
<script type="module" src="litegraph.js"></script>
</head>
<body style='width:100%; height:100%'>
<canvas id='mycanvas' width='1024' height='720' style='border: 1px solid'></canvas>
Expand Down Expand Up @@ -120,9 +129,9 @@ LiteGraph.wrapFunctionAsNode("math/sum",sum, ["Number","Number"],"Number");
It also works server-side using NodeJS although some nodes do not work in server (audio, graphics, input, etc).

```js
var LiteGraph = require("./litegraph.js").LiteGraph;
import { LiteGraph, LGraph } from "./litegraph.js";

var graph = new LiteGraph.LGraph();
var graph = new LGraph();

var node_time = LiteGraph.createNode("basic/time");
graph.add(node_time);
Expand All @@ -137,7 +146,7 @@ graph.start()
```


## Projects using it
## Projects using original litegraph.js

### [comfyUI](https://github.com/comfyanonymous/ComfyUI)
![screenshot](https://github.com/comfyanonymous/ComfyUI/blob/6efe561c2a7321501b1b27f47039c7616dda1860/comfyui_screenshot.png)
Expand All @@ -157,7 +166,19 @@ graph.start()
## Utils
-----

It includes several commands in the utils folder to generate doc, check errors and build minifyed version.
```
These all work to some extent right now:
npm run docs
npm run prettifier
npm run build
npm run test
npm run lint
npm run server
```

I have also run:

`npm audit`


## Demo
Expand All @@ -166,19 +187,20 @@ The demo includes some examples of graphs. In order to try them you can visit [d
```sh
$ git clone https://github.com/jagenjo/litegraph.js.git
$ cd litegraph.js
$ npm install
$ node utils/server.js
Example app listening on port 80!
$ npm i
$ npm run server
Example app listening on port 8000!
```
Open your browser and point it to http://localhost:8000/. You can select a demo from the dropdown at the top of the page.

## Feedback
--------

You can write any feedback to javi.agenjo@gmail.com
You can write any feedback to daniel.lewis.ab@gmail.com

## Contributors

- Javi (Javengo) is original author
- atlasan
- kriffe
- rappestad
Expand Down
45 changes: 45 additions & 0 deletions TODO.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@

# Goals for 1.0

There are in fact already many other flow graph tools in the world, but they aren't compatible code to
existing and are often not anywhere close to the full feature set of litegraph.

## Drop In Compatibility with OG

litegraph 1.0 can only be achieved when we have API compatibility with OG litegraph. Effectively, while
it was viewed as a living codebase back when Javi had it, it has now been widely extended on and is
foundation code for some things.

## Near-Feature Compatibility with OG

Our goal for 1.0 is have a 'sufficiently' compatible feature set, while integrating 'bugfix' improvements
and any 'completion of feature' improvements as we imagine it.

## Unit Testing and Debugging

LiteGraph only had 12 basic tests for core. Our goal for the 1.x line is to expand the tests
to eventually have decent unit testing. These should test that functionalities still exist
rather than becoming binding to detail.

## Documentation and Readability

A primary goal is to complete Documentation and Testing, as well as
A secondary goal is to use modern JS features to make the code easier to read, smaller, and more streamlined internally.

## What We Do Let Break for 1.0

* Anything that relies on arcane details within methods or something not existing etc. If you need exactly
LiteGraph 0.4.0 then that's available there.
* Deprecated 3rd Party endpoints like JQuery 1.6.2, or DOMMouseScroll or document.createElement('CustomEvent')
* Tooling has dramatically changed
* We have the intent to port 1.0 forward to ES6
* We are planning to extend debug functionality in a way that ought to be non-breaking.
* We may backport tooltips into 1.0

# Plans for 2.0

* Conversion to ES2022 and TypeScript
* A full set of control logic nodes based on subgraph.
* A server query nodepack.
* Settings objects for easier configuration.
* CustomEvent generation for major events.
Loading