User:Editor142/Lively: Difference between revisions
No edit summary |
No edit summary |
||
Line 48: | Line 48: | ||
==External links== |
==External links== |
||
*[http:// |
*[http://lively-kernel.org/ Project Page] |
||
*[http:// |
*[http://lively-kernel.org/mailman/listinfo/general Mailing List] |
||
*[http:// |
*[http://lively-kernel.org/repository/lively/index.xhtml Examples] |
||
[[Category: |
[[Category:JavaScript_libraries]] |
||
[[Category: |
[[Category:JavaScript_libraries]] |
||
{{web-software-stub}} |
{{web-software-stub}} |
Revision as of 05:07, 17 April 2010
Developer(s) | Sun Microsystems Laboratories |
---|---|
Stable release | 0.8.5
/ April 6, 2009 |
Type | Web development |
License | MIT |
Website | http://lively-kernel.org/ |
The Lively Kernel is a web programming environment originally developed at Sun Microsystems Laboratories. The Lively Kernel supports desktop-style applications with rich graphics and direct manipulation capabilities, but without the installation or upgrade hassles that conventional desktop applications have.
Overview
The Lively Kernel is a graphical composition and integrated programming environment written entirely in the JavaScript programming language using standard browser graphics (W3C Canvas or SVG) It is thus accessible to any browser as a web page, and it begins to operate as soon as the web page is loaded. It is able to edit its own graphics, edit its own code and, through its built-in WebDAV support, it can save its results or even clone itself onto new web pages. In addition to its application development capabilities, Lively can also function as an integrated development environment (IDE), making the whole system self-sufficient and able to improve and extend itself dynamically.
Shapes, Widgets, Windows and an IDE all on a Web Page
The Lively Kernel uses a Morphic graphics model to add behavior to a scene graph built from browser graphics. Simple graphics are thus assembled into such standard widgets as sliders, scroll bars, text views, lists and clipping frames. A simple window system built from these widgets offers object inspectors, file browsers and code browsers. Even the rudimentary demo pages thus have the ability to edit and test new code in a simple code browser while the system is running.
Lively has been used to build simple web sites, including its own tutorial, and also a client-side Wiki system that stores its pages in an SVN repository. Lively content varies from relatively static pages of text to fully dynamic models that look and behave like flash simulations. The Lively Kernel achieves complex dynamic behavior without any specific animation support (it does not use the animation features of SVG), but by simple scheduling of multiple green-thread processes in JavaScript.
Lively Text and Transformations
The Lively Kernel includes its own multifont text editor written in JavaScript. It includes support for centering, justification and similar rudimentary text composition capabilities. Working in Lively thus has much the same feel as working in a web page design program, except that the on-the-fly text layout is not being done in an offline composition program, but it is in fact the built-in dynamic behavior of text in the Lively Kernel.
The liveliness of Lively graphics becomes even more apparent when you manipulate the scale and rotation handles for objects and text. The entire code browser can be used when tilted 20 degrees on its side. Because the text editor is comprised entirely of lively graphics, it works perfectly well when rotated or scaled, just as do the scroll bars, clipping frames, and the rest of the entire lively user interface.
Cross-Browser Compatibility
The Lively Kernel depends on browser support for JavaScript and SVG or Canvas graphics, all now part of the W3C standards. At the time of writing, this means that it runs in Safari, Firefox, Chrome and Opera browsers.
While this requirement might seem less compatible than HTML, Lively is actually more compatible across the browsers on which it runs than is HTML. This is because there is greater uniformity among JavaScript, SVG and Canvas implementations than there is from one HTML implementation to another. Except for one small initial file, the Lively Kernel code base is entirely free of tests for which client browser is being used.
The Lively IDE
The Lively Wiki
Example code
console.log('Lively');