What is Lily?

Lily is a browser-based, visual programming environment that lets people create programs graphically, without writing code, by drawing connections between data, images, sounds, text and graphics. Lily's cross-platform, free, open source and is written in JavaScript. Did we mention it's fun? Download it, check out the demos or read more about it.


News from the blog:

September 5, 2008

Multitouch for Lily

Tangible computing comes to Lily: yesterday on the user list, Thomas Winningham announced a new set of Lily externals for doing multitouch applications using the TUIO protocol. TUIO is the protocol used by reacTable and other table top interfaces. If you're not familiar with reacTable, take a minute to check out this video. I've been thinking about doing a multitouch demo for the Lily 0.1 release, so Thomas's announcement was a terrific surprise and now I can't wait to try them out. Great work!

Thomas post on his library on the NUI list is here.

June 28, 2008

Public Beta 2

It's been a while coming, but Lily public beta 2 is now available for download. Getting all of Lily's bits and pieces working on Firefox 3 was a bigger task than I imagined and took months to complete. Users contributed many bug reports and suggestions for improvements; not counting FF3 related work, this release contains over 150 bug fixes and enhancements since the first public beta in January. There are some great improvements in performance and usability.

Now that all the FF3 compatibility bugs have been squashed, we should be back on track to release Lily 0.1 in the fall.

May 18, 2008

Lily Update for RC 1

Mozilla released Firefox 3 RC 1 yesterday- I've posted a compatible version of Lily and updated the links on the site.

You'll need to update to use Lily with the new Firefox release candidate.

May 9, 2008

Processing JS

I've added a new external object called "processing" to Lily today to take advantage of John Resig's wonderful new library Processing.js. Processing.js is a Canvas based implementation of the processing language in Javascript. Unlike my own port of the processing API, John's library includes a parser for near total compatibility with the language. Awesome.

I haven't had much time to play with it yet (John only released it last night), but it's been interesting to compare it with my own SVG based implementation. SVG, being DOM-based, seems to have a ceiling for the number of objects that can be included in an animation- once that ceiling is exceeded performance begins to suffer noticeably. John's Canvas-based version seems to handle much more complex animations without pinning the meter. There are also a couple of features in John's library that take advantage of the new Canvas functionality in Firefox 3. I'm really looking forward to spending more time playing it. Great work John!

You can download the latest Lily beta here - it includes the "processing" external.