Giter VIP home page Giter VIP logo

nodes-io's Introduction

Nodes

A new way to create with code.

Latest release: 1.0.0-beta.2

nodes-io's People

Contributors

dmnsgn avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

nodes-io's Issues

Svelte support

Is your feature request related to a problem? Please describe.

Svelte JS makes JavaScript more powerful and easier/faster to write. It also compiles to smaller, more performant js. I'm interested in making a visual node ide for it.

Describe the solution you'd like

I would kill to see svelte support in this project.

Describe alternatives you've considered

Making my own 😅

Same Bug on macOS Big Sur

Describe the bug

I can't create or open a new project in my macbook

To Reproduce

Steps to reproduce the behavior:

  1. Go to 'Dashboard'
  2. Click on 'OPEN FOLDER'
  3. Open the project I just created
  4. wilt a long time , seeing loading icom
  5. nothing , just a blank window

Expected behavior

I think it should open the interface.

Screenshots

Environment Information:

  • app: 1.0.0-beta.1
  • os: macOS Big Sur 11.1

Related Issues

Can't load project

Describe the bug

Can't load project

To Reproduce

Steps to reproduce the behavior:

  1. Open Nodes App
  2. Click on 'Open project'
  3. Dialogue box opens, select a nodes project folder
  4. Warning alert sounds twice in quick succession (no message or dialogue box)
  5. Takes me back to main interface with nothing loaded

Expected behavior

It should open the project

Screenshots

NA

Environment Information:

  • app: 1.0.0-beta
  • os: darwin
  • node: 12.14.1
  • electron: 9.0.5
  • chrome: 83.0.4103.119

Related Issues

Better keyboard less navigation

I struggle navigating nodes using macbook. Overall it feels much more keyboard-friendly, which is goof, but I'd wish for more clever UI decisions.

  • I wish for pan gesture using touchpad, they implemented it in Cables. Two finger click pakes canvas to pan
  • I'd like the code editor to close with some UI, not only ESC (which in my case is in touchbar)

...

Bundling Error on new project

Describe the bug

Cannot create project on fresh install of Nodes 1.0.0-beta.2. Also cannot open Tutorial projects (like Hello World).

To Reproduce

Steps to reproduce the behavior:

  1. Go to 'New Project'
  2. Select a path, set project name and confirm.
  3. Wait for new window to open.
  4. See error under Nodes logo.

Expected behavior

I'm expecting to see newly created project window.

Screenshots

image

Environment Information (please complete the following information):

App: 1.0.0-beta.2
OS: win32
Node.js: 12.18.3
Electron: 11.1.0
Chrome: 87.0.4280.88

Related Issues

advice

dear,my english level is low,can you support chinese?

Clean js export?

I love the concept of Nodes and would like to use this editor in my projects. But it seems to me inconvenient that everything is tied to Nodes, and cannot be exported to pure JS. I would like to use Nodes instead of, let's say VS Code for some projects.

Keyboard input not being detected

Describe the bug

Keyboard input not being detected

To Reproduce

Steps to reproduce the behavior:

  1. Go to 'the hello-world project'
  2. Click on 'Say It!'
  3. Try to change the name field input
  4. No input is detected from the keyboard
  5. The input field seems to work before I've run the example. Reloading the project, or alt-tabbing out of the window, then coming back in, seems to also fix the issue.

Expected behavior

Expected: Detection of input from the keyboard.

Screenshots

If applicable, add screenshots to help explain your problem.

Environment Information:

  • nodes: 1.0.0-beta
  • os: win64
  • node: 12.14.1
  • electron: 9.0.5
  • chrome: 83.0.4103.119

Related Issues

License

Congrats on the first release! I was wondering what the license is for this project and if there are any plans to open source it as an ES6 module.

Zoom level results in blurry canvas text

Firstly congratulations on the beta release. I've been eager to try out your visual environment. I think it's a great step towards making development more accessible as well as a tool for reducing cognitive load for developers.

Describe the bug

The text within canvas elements (like the node viewer) is blurry when using browser and application zoom. My monitor is not a high-dpi but I do utilise browser zoom at 125%.

To Reproduce

In playground and in downloaded app, use the browser/electron's zoom function by pressing Command + (plus) to zoom in.

Expected behavior

App should maybe have zoom level locked to 100% (since the node viewer supports crisp application level zoom anyway) or maybe make use of downsampling based on zoom level/dpi.

Screenshots

Screenshot 2020-11-17 at 15 55 39

Environment Information (please complete the following information):

App: 1.0.0-beta
OS: darwin
Node.js: 12.14.1
Electron: 9.0.5
Chrome: 83.0.4103.119

Also tested playground with Firefox Developer Edition and Safari.

Related Issues

passing type inference in trigger props?

Is your feature request related to a problem? Please describe.

When I pass an object from one node to another, the code editor loses the inferred type of the object and I lose all the niceties that come with it. For example, when passing the canvas drawing context...

image

image

Describe the solution you'd like

Would be great if somehow the code editor could be smarter about that and carry that through the nodes somehow.

Describe alternatives you've considered

Interestingly, seems the editor allows for TypeScript annotations but the compiler doesn't...

image

Another option would be to get it from JSDoc comments (interestingly, again the editor offers to move the JSDoc types to TypeScript types)...

image

image

Bundling Error due to new dependency

Describe the bug

I'd like to use Nodes to expose an API endpoint.
But when I try to add express as a package, I'm getting a bundling error and it is impossible to load the project.

To Reproduce

Steps to reproduce the behavior:

  1. Add package "express"
  2. Require it in one node
  3. Save project
  4. Close Nodes
  5. Launch Nodes
  6. Load Project
  7. See "Bundling error" message

If I launch Nodes from the terminal, I'm seeing the following error

ERROR in ./node_modules/express/lib/request.js
Module not found: Error: Can't resolve 'net' in 'C:\Users\BenjaminVadant\Documents\Nodes\my-first-project\node_modules\express\lib'

Expected behavior

I'm expecting to see the error message in the editor and access to the editor to fix it.

From the error, I'm thinking that express is not (& will not be) supported as nodes code is executed client side.

Do you think it will be possible in the future to select a node to be executed server side ? It would be interesting to access system-level functionalities such as network, system usage....

Environment Information:

  • nodes: 1.0.0-beta.2
  • os: win32
  • node: 12.18.3
  • electron: 11.1.0
  • chrome: 87.0.4280.88

Related Issues

hello-world

Describe the bug

DevTools shows:
Uncaught Error: Actions must be plain objects. Use custom middleware for async actions.

To Reproduce

Steps to reproduce the behavior:

  1. Open browser new tab, with DevTools opened.
  2. Visit: https://nodes.io/playground/hello-world/
  3. Notice errors shown in DevTools Console

Screenshots

nodes io-hello-world

Environment Information:

  • nodes: 1.0.0-beta.1

Better Local Library Support / Code Organisation

Describe the bug

I'm working on a rather large generative art system that I would like to build out in several files that are separate from the Nodes I'm using to create individual art pieces. For example, I'm working on an extensible WebGLImageFilter node that has a ~dozen filter options to apply. The library I'm basing this on is ~600 lines by itself and it would be nice to not have to stuff all of that code into my node.

I've tried using require() with all of the following with no success:

require('./lib/WebGLImageFilter.js')
require('../lib/WebGLImageFilter.js')
require('WebGLImageFilter.js')
require('./WebGLImageFilter.js')

I've also tried adding a local dependency as per the instructions in this StackOverflow, but it crashed Nodes.io and required me to Force Quit the application.

Expected behavior

I would expect that Nodes.io would support the common require() syntaxes and allow us to include local dependencies without having to publish everything to NPM or include them in our package.json

Environment Information:

  • nodes: 1.0.0-beta.2
  • os: darwin
  • node: 12.18.3
  • electron: 11.1.0
  • chrome: 87.0.4280.88

Big Sur 11.1 wont load projects

Describe the bug

Editor doesn't open on Big Sur 11.1

To Reproduce

Steps to reproduce the behavior:

  1. Open nodes
  2. Click on new project or open one of the example ones
  3. Never opens more than the tab bar up top

Expected behavior

Open the editor and graph view

Screenshots

image

Environment Information:

  • app: 1.0.0-beta.1
  • os: darwin
  • node: 12.18.3
  • electron: 11.1.0
  • chrome: 87.0.4280.88
    • Mac os Big Sur 11.1

Related Issues

Bug Report

Describe the bug

A clear and concise description of what the bug is.

To Reproduce

Steps to reproduce the behavior:

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

Expected behavior

A clear and concise description of what you expected to happen.

Screenshots

If applicable, add screenshots to help explain your problem.

Environment Information:

  • nodes: 1.0.0-beta.1

Related Issues

Text input doesn´t works well

Describe the bug

I´m trying to go through the hello-world tutorial, but in the part that says I can change the name, the text input doesn´t responds. In fact, any of them won´t work correctly, in the sense that it doesn´t writes the letter, and sometimes the "|" will not appear. Also happens in the code editor. I tried to edit a node, and after I deleted a number, the code editor did not accept any new text input. I just saw that after reloading the window (like minimizing and open it again) the text input works fine again.

To Reproduce

Steps to reproduce the behavior:

  1. Go to 'any text input'
  2. Try to write something
  3. ????
  4. See error

Expected behavior

I expected a normal, fluid typing experience.

Environment Information:

  • nodes: 1.0.0-beta
  • os: win32
  • node: 12.14.1
  • electron: 9.0.5
  • chrome: 83.0.4103.119

External editor support with auto-reloading

Is your feature request related to a problem? Please describe.

I use Emacs with vim bindings and have a bunch of text editing workflows, I cannot reproduce in other editors including the integrated editor in nodes.

Describe the solution you'd like

I would be nice if you could setup an external editor application in the nodes configuration. That editor application would then open a nodes source code file, when double clicking it to get into the source code view.

Describe alternatives you've considered

I'm currently using Emacs for editing the files directly and pressing Cmd+R for reloading the project. This works pretty well, but auto-reloading would be nicer 🙂

Globe demo

The earth is spinning backwards in the globe demo.

Screen went blank after adding Browse Package and reload

Describe the bug

Screen went blank after adding Browse Package and reload
image

To Reproduce

Steps to reproduce the behavior:

  1. Added package: Browse
  2. Reload from Pakcage manu
  3. Same happens when I closed all and opened the folder that I was working in.

Expected behavior

The blank project with package in options should be visible

Screenshots

If applicable, add screenshots to help explain your problem.

Environment Information:

  • app: 1.0.0-beta.2
  • os: Windows 11 64 bit
  • node: Haven't installed separately
  • electron: haven.t installed separately
  • chrome: 122.0.6261.112

Related Issues

Warn user before closing the Website in playground

I would like a warning (onBeforeUnload) when the user is closing the playground website. Just happened to me that i pressed cmd-w by accident and everything was gone..

Environment Information:

  • nodes: 1.0.0-beta

Editor Freezes while creating Project with double-click

Describe the bug

when double-clicking hello-world example on the dashboard, and aborting the dialog with "cancel"-button, a second dialog appears and freezes. Buttons become unresponsive.

To Reproduce

Steps to reproduce the behavior:

  1. Double-Click hello-world-example on the dashboard
  2. cancel first dialog
  3. second dialog appears atomatically
  4. See error

Expected behavior

Dialog should not open twice.

Screenshots

If applicable, add screenshots to help explain your problem.

Environment Information (please complete the following information):

App:
1.0.0-beta.2(latest)
OS:
darwin
Node.js:
12.18.3
Electron:
11.1.0
Chrome:
87.0.4280.88

Node Logs do not display immediately

Describe the bug

Logs created using node.log() do not show up in the Log pane until clicking inside or outside the Node.

To Reproduce

Steps to reproduce the behavior:

  1. Create a Node
  2. Add a node.log("something") call somewhere reachable in the code
  3. Trigger the log
  4. Nothing shows up in Log pane
  5. Now click outside of the Node (if it is already selected) or on the Node (if it is not selected); log shows up

Expected behavior

Logs should appear immediately.

(On a side note: why is there a special logging function? Why not just direct all console.log to the Log pane?)

Environment Information (please complete the following information):

App:
1.0.0-beta(latest)
OS:
darwin
Node.js:
12.14.1
Electron:
9.0.5
Chrome:
83.0.4103.119

create canvas problem

Describe the bug

I am completely new to nodes.io and I have been trying to follow the tutorial on youtube, but I cannot get past the first 2 minutes.

To Reproduce

I follow the tutorial and I write the 2 first lines of code:

const canvas = document.createElement("canvas");
graph.sceneContainer.appendChild(canvas);

I write them just after

module.exports = (node, graph) => {

Expected behavior

After writing the 2 first code lines, and then go to the corresponding part in the developer tool, I should see the tag created, but it is not there. And when I write

canvas.style.border = "1px red border"

I do not see any red lines, which are supposed to be drawn.

Screenshots

Screenshot 2022-10-23 185516

image

Environment Information:

Related Issues

I also see an asterisk right next to the name of the node (see screenshot)

Bug : Clicking on parameter toggle node selection

Describe the bug

Clicking on a parameter on the node toggle its selection state, but clicking on the node itself doesn't toggle the selection.

To Reproduce

Steps to reproduce the behavior:

  1. Open the generative identity template
  2. Click on the node background multiple times (slowly) -> node always selected
  3. Click on the color parameter multiple times (slowly) -> node selection state changes

Expected behavior

One of the following :

  • Clicking on the parameter never select the node, as it's meant to be connected with something else
  • Clicking on the parameter doesn't toggle the selection
  • Feature suggestion : clicking on the parameter open a small debug window to show the value on the parameter on every frame (SparkAR does this when clicking on a node output). And that window stay open until you manually close it.

Screenshots

select_bug

Environment Information:

  • nodes: 1.0.0-beta.2
  • os: win32
  • node: 12.18.3
  • electron: 11.1.0
  • chrome: 87.0.4280.88

Related Issues

Notarize application to avoid verification warning

Describe the bug

Launching Nodes on MacOs Catalina show an error. It is possible to circumvent this dialog by using the context menu, opening the app and then allowing Nodes to launch, but it would be preferable to provide a notarized application.

To Reproduce

Double-click download app

Expected behavior

The application should launch

Screenshots

bug

Environment Information (please complete the following information):

MacOs Catalina

It is not a bug but in the globe demo the earth is spinning backwards.

Describe the bug

A clear and concise description of what the bug is.

To Reproduce

Steps to reproduce the behavior:

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

Expected behavior

A clear and concise description of what you expected to happen.

Screenshots

If applicable, add screenshots to help explain your problem.

Environment Information:

  • app: 1.0.0-beta.2
  • os: darwin
  • node: 12.18.3
  • electron: 11.1.0
  • chrome: 87.0.4280.88

Related Issues

"Generative Identity" demo can't be recreated

Describe the bug

Recreating the "Generative Identity" demo from the Nodes Dashboard will crash Nodes, because the latest version of the "pex-color" library is incompatible with Nodes

To Reproduce

Steps to reproduce the behavior:

  1. Create a new project
  2. Add "pex-color" package under Nodes->Packages. Note that the latest version, 2.0.4, is displayed
  3. Reload the project. Notice the project will hang with a white screen.
  4. Force quit Nodes and try to load the project again. Notice the "Bundling Error" message upon loading the project.

Expected behavior

Ideally, the latest pex-color would be loaded without error. Failing that, the project should load cleanly without the dependency, and an error message should be provided.

Screenshots

When running Nodes from the command line, you'll see the following error in the console upon loading the project:

ERROR in ./node_modules/pex-color/index.js 26:9
Module parse failed: Unexpected token (26:9)
You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders
| export * from "./css.js";
| 
> export * as utils from "./utils.js";
| 
 @ ./index.js 13:0-37 25:19-26

Environment Information (please complete the following information):

App:
1.0.0-beta.2
OS:
darwin
Node.js:
12.18.3
Electron:
11.1.0
Chrome:
87.0.4280.88

Related Issues

Loading overlays everything

Describe the bug

if the app is loading a project, the loading screen is bound to be the topmost, overlaying every other window make it impossible to do something else while nodes is loading or reloading.

To Reproduce

  1. open nodes
  2. Click on open project
  3. select project
  4. loading screen appears

2.1 click on create project
2.2 create project
2.3 back to 4.

Expected behavior

that the loading screen stays inside the window and does not overlay everything, never seen something like that before

Screenshots

not usefull, loading screen and the cieling of other windows if moved to top

Environment Information:

  • app: 1.0.0-beta.2
  • os: linux
  • node: 12.18.3
  • electron: 11.1.0
  • chrome: 87.0.4280.88

Related Issues

Bug Report: Mistakes in Tutorial text

Describe the bug

Spelling mistakes/typos in Tutorial text

To Reproduce

Read tutorial

Expected behavior

03: Create a graphic canvas

Click on the node in the Graph Editor and change it's name

should be

change its name

...

other graphs and project

should be

other graphs and projects

04: Add a grid

Create another Custom node and rename it to Drag Grid.

should be

Create another Custom node and rename it to Draw Grid.

(this is confusing because otherwise you might think that there is supposed to be some dragging interactivity or something!)

...

Further down, the same mistake is made again:

drag a connection to the in port of Drag Grid canvas.

should be

drag a connection to the in port of Draw Grid canvas.

...

Let’s make it breath a bit

should be (breath = noun, breathe = verb)

Let's make it breathe a bit

09. Extra: add more shapes

There is no text instruction to connect the Small Circle node into the graph, although there is an illustration for this.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.