JavaScript and DHTML flexibility, Native Power
JNEXT is an open source (triple MPL, GPL, LGPL license), small footprint and cross platform framework for extending Web browser Javascript (for more background and motivation check this blog entry).
With JNEXT it is possible to utilize existing Web browsers to host full and self contained applications that do not depend on external Web servers for the application logic (although they are free to make use of them). This is acheived by enabling Javascript controlled access to the full range of native operating system resources (such as TCP/UDP sockets, files, databases, threads etc). An example is worth a thousand words:
below is another example to whet your appetite:
As can be seen from the above examples, the extensions are transparently added to JavaScript just by including the JNEXT libraries. JNEXT runs on Linux and on Windows on several Web browsers: IE, FireFox, Opera, Netscape and Safari have been successfully tested on Windows. On Linux it has been successfully tested on Firefox and Netscape Navigator (support for Konqueror and Opera is in progress). JNEXT has recently been successfully tested on Mac OS/X too - the formal OS/X support will be added in the next release.
The main purpose for creating JNEXT was to enable developers to build applications much faster by using JavaScript as the language for creating the HTML UI and application logic, while using native plugins to access system resources that are not available from JavaScript due to obvious security reasons.
Sounds great, but what about security ?
Any browser using the JNEXT framework can only access JNEXT via JavaScript if the site or file containing the JavaScript native extensions code is explicitly authorized by a local whitelist to access JNEXT extensions. The type of extensions (sockets, sqlite etc.) that are allowed to be accessed by JavaScript code for each permitted URL or file can also be explicitly defined. No other page has access to any of the local operating system resources.
Where can I download it from ?
Binaries
A binary setup for Windows can be downloaded below (automatically installs JNEXT for IE, Firefox, Safari, Opera and Netscape):
JNEXT-1.0.7.exe (1.1 MB)
A binary setup for Linux can be downloaded below (manual installation, includes a readme file):
JNEXT-bin-1.0.7.tgz (714 KB)
Sources
If you wish to download the source code, the link below will download the source code that compiles on both Linux and Windows.
(compiling the Windows version currently requires the standard version of VC2005). The sources also contain a sample project
to illustrate how to easily create your own JNEXT extension:
jnext-src-1.0.7.tgz (1.2 MB)
You can always post questions or comments to the blog or the
discussion group
Where can I learn more ?
If you're a Web developer, check out the Using JNEXT link. If you wish to help with developing JNEXT, read more at the Extending JNEXT page.
Although there's not much activity at the moment, you can also check out the JNEXT irc channel at #jnext