Silk-GUI / Silk

GUI for developers and Node OS
http://silkgui.com
BSD 2-Clause "Simplified" License
13 stars 5 forks source link

task-monitor, tunnel and rtc example #12

Closed formula1 closed 9 years ago

formula1 commented 10 years ago

A few other things also.

I'll probably be laying off this for a while, but its been a real pleasure seeing what your doing Im definately excited to see what you come up with

also, if you don't know about it http://codemirror.net/ is definitely worth checking out. I had to use it for work a while back and its pretty nice. Its also what atom uses and a few other popular code editors (I think cloudnine as well)

The Tunnel isn't perfect, its slow remotely and its actually pretty delicate. However, it works remotely and locally (I tested it on a server i had available) https://github.com/formula1/Silk-Server is the server your going to want to use. Its not 100% compatible unless your using my clientside api. You can run it with environment variables to set the ports

hp=HTTPPort sp=TunnelSocketPort node tunnel-server

To connect you will need to go to the tunnel client application and type in http://webserver.com:TunnelSocketPort then a password. This will give you a unique id. Then go to the webserver and type in the unique id and then the password you set.

The Web RTC Example requires 2 open windows. I tried it a while ago on a remote server with success.

The Task monitor expects the environment to be linux, though making it windows may not be too difficult

On a side note, you can use my api by calling <script src="/api.js" ></script>

There you will have access to

zodern commented 10 years ago

its been a real pleasure seeing what your doing Im definately excited to see what you come up with

That's nice to read. I am excited to see what Silk becomes.

I have been thinking about using code mirror in the text editor. Cloud 9 made their own editor called ACE. Last time I checked code mirror supported more programming languages which would make it better for Silk.

I am having difficulty with the submodules. It only has one listed in .gitmodules

$ git submodule init
No submodule mapping found in .gitmodules for path 'apps/WebRTC-Example'

I have never worked with them before so I am probably doing something wrong

It took about 10 seconds between loading the file explorer and the text editor.

I am getting some errors when running Silk. Some of them are from not having all of the apps downloaded. I manually added the task monitor, but it is getting an error from bower for not finding a package.

This is the output from the console:

$ silk Silk at http://0.0.0.0:3000 .DS_Store could not be loaded [Error: /Users/MicaiahNissen/Silk/apps/.DS_Store/window.json does not exist.] WebRTC-Example could not be loaded [Error: /Users/MicaiahNissen/Silk/apps/WebRTC-Example/window.json does not exist.] headless in the child forkready emitted adding fork adding in the child forkready emitted adding fork not headless adding task-monitor could not be loaded { [Error: Command failed: bower ENOTFOUND Package tablesaw@latest not found ] killed: false, code: 1, signal: null } in the child forkready emitted adding fork not headless tunnelclient could not be loaded [Error: /Users/MicaiahNissen/Silk/apps/tunnelclient/window.json does not exist.]

These Windows were completed: ["app-defaults","fileExplorer","textEditor"] { "text/plain": { "default": "", "available": [ "Text Editor" ] }, "": { "default": "", "available": [ "Text Editor" ] } } Silk.defaults {"text/plain":{"default":"","available":["Text Editor"]},"":{"default":"","available":["Text Editor"]}} adding adding user removed or no request adding adding user removed or no request

formula1 commented 10 years ago

sorry about that, this project got me pretty excited so I have been rushing to get as much done as possible. Git modules is probably not the best method, however I wanted to get the feel of each module being its own thing since at some point all apps will be ignored

zodern commented 10 years ago

The submodules now work.

I am getting an error when opening the task manager:

fs.js:429 binding.open(pathModule._makeLong(path), ^ TypeError: path must be a string at Object.fs.open (fs.js:429:11) at OpenReq.process (/Users/User/Silk/node_modules/bower-json/node_modules/graceful-fs/graceful-fs.js:55:16) at OpenReq.Req (/Users/User/Silk/node_modules/bower-json/node_modules/graceful-fs/graceful-fs.js:126:8) at new OpenReq (/Users/User/Silk/node_modules/bower-json/node_modules/graceful-fs/graceful-fs.js:49:7) at Object.open (/Users/User/Silk/node_modules/bower-json/node_modules/graceful-fs/graceful-fs.js:41:3) at ReadStream.open (fs.js:1508:6) at new ReadStream (fs.js:1495:10) at Object.fs.createReadStream (fs.js:1449:10) at /Users/User/Silk/core/client_api.js:25:19 at iterate (/Users/User/Silk/node_modules/async/lib/async.js:149:13)

zodern commented 10 years ago

I am also getting an error when submitting the form in the tunnel client.

fs.js:429 binding.open(pathModule._makeLong(path), ^ TypeError: path must be a string at Object.fs.open (fs.js:429:11) at OpenReq.process (/Users/User/Silk/node_modules/bower-json/node_modules/graceful-fs/graceful-fs.js:55:16) at OpenReq.Req (/Users/User/Silk/node_modules/bower-json/node_modules/graceful-fs/graceful-fs.js:126:8) at new OpenReq (/Users/User/Silk/node_modules/bower-json/node_modules/graceful-fs/graceful-fs.js:49:7) at Object.open (/Users/User/Silk/node_modules/bower-json/node_modules/graceful-fs/graceful-fs.js:41:3) at ReadStream.open (fs.js:1508:6) at new ReadStream (fs.js:1495:10) at Object.fs.createReadStream (fs.js:1449:10) at /Users/User/Silk/core/client_api.js:25:19 at iterate (/Users/User/Silk/node_modules/async/lib/async.js:149:13) fs.js:429 binding.open(pathModule._makeLong(path), ^ TypeError: path must be a string at Object.fs.open (fs.js:429:11) at OpenReq.process (/Users/User/Silk/node_modules/bower-json/node_modules/graceful-fs/graceful-fs.js:55:16) at OpenReq.Req (/Users/User/Silk/node_modules/bower-json/node_modules/graceful-fs/graceful-fs.js:126:8) at new OpenReq (/Users/User/Silk/node_modules/bower-json/node_modules/graceful-fs/graceful-fs.js:49:7) at Object.open (/Users/User/Silk/node_modules/bower-json/node_modules/graceful-fs/graceful-fs.js:41:3) at ReadStream.open (fs.js:1508:6) at new ReadStream (fs.js:1495:10) at Object.fs.createReadStream (fs.js:1449:10) at /Users/User/Silk/core/client_api.js:25:19 at iterate (/Users/User/Silk/node_modules/async/lib/async.js:149:13)

formula1 commented 10 years ago

RSVP and event emitter are needed by the api. I sincerely apologize. My test environment always has everything so I don't think about that

zodern commented 9 years ago

The tunnel client and silk-server works!

The Web RTC Example apps always says the Peer Connection is not ready yet. What am I doing wrong? I have it opened in two tabs.

I like the api.

formula1 commented 9 years ago

So you have the two tabs open, you need to click on the correct name One of them is the tab, the other is the other user

From there, you send an "offer" which gets redirected to the other user User automatically accepts off of the "offer" event, And then you should be alright

I'm sorry for making everything so barebones in terms of UI and etc. I was trying to focus on maximizing everything possible

zodern commented 9 years ago

I think that silk should only include the basic apps and everything else be available in an app store. The basics could be a file explorer, text editor, task manager, terminal, tunnel client, settings and the app store. The Web RTC Example I don't think should be included by default in Silk. What is your opinion? A wiki page for apps is at https://github.com/zodern/Silk/wiki/Apps.

The task manager isn't showing any data. It never calls the .done on ApplicationFork.pipe("tasks").done(function(data){

The terminal output is:

web socket is at: 0.0.0.0:9999 compiling forks setting up default publics setting up utils publics bower and browserify statics Silk at http://0.0.0.0:3000 checks on application: Silk checking window.json for: Silk checking uris for: Silk checking npm dependencies for: Silk checking bower dependencies for: Silk creating fork: Silk Silk has no serverside scripts but that is ok successfully compiled: Silk checks on application: WebRTC-Example checking window.json for: WebRTC-Example Go to https://evqsufhzzm.localtunnel.me to remotely access Silk checking uris for: WebRTC-Example checking npm dependencies for: WebRTC-Example checking bower dependencies for: WebRTC-Example creating fork: WebRTC-Example name: WebRTC-Example in the child forkready adding listeners to fork: WebRTC-Example successfully compiled: WebRTC-Example checks on application: cors recieved mess add: RTC-user checking window.json for: cors cors could not be loaded SyntaxError: Unexpected end of input at Object.parse (native) at /Users/User/Silk-Skeleton/core/fork/fork_container/forkAssembler.js:39:22 at fs.js:271:14 at /Users/User/Silk-Skeleton/node_modules/bower-json-auth/node_modules/graceful-fs/graceful-fs.js:104:5 at Object.oncomplete (fs.js:107:15) checks on application: fileExplorer checking window.json for: fileExplorer checking uris for: fileExplorer checking npm dependencies for: fileExplorer checking bower dependencies for: fileExplorer creating fork: fileExplorer name: fileExplorer in the child forkready adding listeners to fork: fileExplorer successfully compiled: fileExplorer checks on application: task-monitor checking window.json for: task-monitor checking uris for: task-monitor checking npm dependencies for: task-monitor checking bower dependencies for: task-monitor here recieved mess add: /list/path creating fork: task-monitor name: task-monitor in the child forkready adding listeners to fork: task-monitor successfully compiled: task-monitor checks on application: textEditor checking window.json for: textEditor checking uris for: textEditor checking npm dependencies for: textEditor checking bower dependencies for: textEditor creating fork: textEditor cihdl: start cihdl: TERM cihdl: __CF_USER_TEXT_ENCODING name: textEditor in the child forkready adding listeners to fork: textEditor successfully compiled: textEditor checks on application: tunnelclient checking window.json for: tunnelclient checking uris for: tunnelclient checking npm dependencies for: tunnelclient checking bower dependencies for: tunnelclient creating fork: tunnelclient top stderr: invalid option or syntax: -b top usage: top [-a | -d | -e | -c ] [-F | -f] [-h] [-i ] [-l ] [-ncols ] [-o ] [-O ] [-R | -r] [-S] [-s ] [-n ] [-stats <key(s)>] [-pid ] [-user ] [-U ] [-u]

recieved mess add: tasks name: tunnelclient in the child forkready adding listeners to fork: tunnelclient successfully compiled: tunnelclient windows windows here

These Windows were completed: ["Silk","WebRTC-Example","fileExplorer","task-monitor","textEditor","tunnelclient"] windows recieved mess recieved mess recieved mess add: te/open recieved mess add: te/save recieved mess windows recieved mess add: auth recieved mess windows recieved mess applications: 1 applications: 1 task-monitor-tasks: 1 sending to fork tasks applications: 1 task-monitor-tasks: 1 sending to fork tasks applications: 1 task-monitor-tasks: 1 sending to fork tasks applications: 1 task-monitor-tasks: 1 sending to fork tasks

formula1 commented 9 years ago

I'll remove the two applications The reason top isn't working is because your on mac and I only made it work for linux. It also won't work for windows because I don't believe it has a top command. I'd have to make a cross OS version which isn't that difficult, however will take some time.

You are correct, imo, about basic applications. Though for when people are trying to develop for the platform, I do believe examples to work from will make it easier and web rtc is definitely something new and sexy some will want. That being said, I made both of those examples extremely quickly so they aren't in the best condition.

For Web RTC, it could be useful for something like File Sharing which is still useful in a variety of areas.

zodern commented 9 years ago

Everything works!

I need to get a linux vm. The important thing is everything works in NodeOS/linux with Chrome and there are no errors on other platforms or browsers that prevent silk from running.

I agree about the need for examples and I like the Web RTC app.