@cmontella cmontella released this Dec 3, 2016 · 1046 commits to master since this release

Assets 2

Eve logo

What's new in Eve Alpha v0.2.2?

Eve npm package

We published a package for Eve on npm, so you can now install Eve like so:

npm install -g witheve

This will give you a global Eve installation that you can invoke with the command eve from anywhere. Doing so will start an Eve server, in the same way npm start currently does. (Note: be sure to install witheve, as installing eve will give you a different package)


We're introducing the ability to run Eve in a custom project workspace. To create a new Eve project workspace, create a folder with an empty file named package.json then start Eve from within this folder. Eve recognizes that it's starting in an Eve project, and will serve *.eve files from within this directory instead of the Eve examples folder. Furthermore, you can serve various assets, like images or CSS, by placing them in an "assets" sub-folder.

Server Mode

Now, Eve can be started in server mode using the --server flag:

eve --server

Without this flag, execution of Eve programs happens within the browser, with the Eve server acting as an intermediary between the browser and your local system. In server mode, Eve will instead execute your program on the server. Currently written programs will operate exactly as before, but this is a preliminary step in order to get networked Eve applications going (like a chat server or a multiplayer game). There is still work needed to be done there (currently in review), so stay tuned for more!

Deploying Eve Apps

Eve npm

This is one of the most requested features to date, so we're happy to bring it to you! You can now run Eve applications without the editor, which should pave the way to deploying them on your own server. You can specify which Eve program you want to run after the Eve command:

eve ~/myEveDir/myEveFile.eve

Now you can navigate to Eve in your browser to access the specified program. If you like, you can also recover the editor with a flag:

eve ~/myEveDir/myEveFile.eve --editor

This will run the supplied Eve program with the editor visible.

Standard Library

The standard library still needs a lot of work, but thanks to our intrepid community we made some great progress on adding basic functionality.

  • Added support for the vast majority of HTML/SVG tags (thanks @frankier!)
  • Added urlencode[] (thanks @renegr!)
  • Achieved parity with Javascript math library functions and constants (thank @Cormac-Williams!)

Changelog (51)


  • Fixed non-eve block identifiers being overwritten - [573]
  • Added notification when the editor is disconnected from the server - [597]
  • Added tooltips for editor buttons - [496]
  • Fix inspector after refactor - [555]


  • Added support for more HTML and SVG tags - [576]
  • Added support for more HTML and SVG tags - [602]
  • Fix dom ordering when sort value is 0 - [596]
  • Fixed cursor reset when changing value of input. - [601]
  • Send keydown for window element - [542]
  • Add tickbox change event - [506]
  • Add coordinates to click and dblclick events for SVG and root elements - [532]


  • Allow nots without dependencies to run - [613]
  • Standalone Eve Apps - [571]
  • Fix determining if a stratum has database scans - [614]
  • Fixed a case where malformed messages were crashing the server - [556]
  • Added port flag for Eve server - [553]


  • npm package - [598]
  • Make CSS, favicon and font dependencies local - [521]
  • Fix Docker install - [560]
  • Add system-polyfill.js - [518]


  • Fix error when JSON value is null - [593]
  • Fix error when JSON value is null - [604]
  • Fixed [#time timestamp] - [603]
  • Fixed HTTP requests being sent twice - [504]
  • Replace angle with radians and degrees in sin and cos - [516]
  • Support for query-params - [517]
  • added Urlencode function to urlencode a string - [517]
  • fix a bug in http where the request wasn't being opened before setting headers - [517]
  • Fixed power function having arguments in wrong order - [524]
  • Make Gaussian use its own result cache rather than using (uniform) Random's - [529]
  • Clean up math.ts - [530]
  • Extend math.ts to match the rest of javascript's math library - [535]


  • Cleaned up references to match - [14]
  • Added hour-24 to #time - [20]
  • Cleaned up references to @name - [21]
  • Fixed examples in split - [23]
  • Added sort - [27]

Misc Fixes

[594] [485] [543] [567] [494] [488] [578] [615] [8] [11] [13] [16] [17] [19]

Contributors (25)