
dotFX provides a way of developing, deploying, running and managing real client and desktop software over the Internet. In contrast to a browser based web application, software can run on your desktop with the performance, access and intimacy that you would expect from real client software. dotFX technology has been in development for over three years by a team of entrepreneurs based in Silicon Valley. ClientFX handles JavaFX Script applications on the desktop. ClientFX includes a bundle of Java, JavaFX, security and the browser plug-ins to enable fx:// clickable links in the browser.
When a developer starts an application design there are many choices. The idea of fielding an application as client or desktop software, proper, means many things. Often the connotation that software needs to be downloaded wholesale, and an installer has to be written, over time many versions and upgrades have to be managed are too painful to overcome in the face of choosing a web application instead. In recent times AJAX has provided some relief from the browser experience as Web 2.0 ushered in the ability to have more performant and usable web applications. New market movements are towards client side technologies like dotFX, and have been described by many (for example Eric Schmidt, CEO of Google) as Web 3.0. dotFX was founded out of real world frustrations of software developers constantly asking the question "In the age of broadband, 2GHz processors on desktops and modern software techniques and technologies, why is it that we cannot run real client software over the Internet ?"
dotFX and the ClientFX component provide a developer with the ability to design a client application development knowing that the application can be accessible from a browser link, as a desktop icon or system tray item. Moreover a developer does not need to worry about creating an installer application, or managing the client over time. The client (ClientFX) is this component and it is self updating over dotFX versions and over versions of Java and JavaFX transparently, and intelligently cached locally. The application you as a developer will write will always be up-to-date by the same mechanism. Small deltas or micro-patches change the way we can think about deployment of applications, and how early in the development cycle. Rapid application development and extreme programming techniques can be employed, but with agility in the deployment and update cycles.
So what do developers need to digest to use this technology ? Development is easy, just ignore us !
Develop your application stand alone, as developers naturally do for client side operation.
Develop Swing or Java FX Script applications as local applications and deploy them as built.
When it is functional, and perhaps using a local database just drop the software (class files) in the ServerFX repository and make the appropriate fx:// link on the web site where you need it.
Using InstallerFX you can build a desktop installer and have desktop icon/program files folder that 'wraps' this fx:// link.
The application is now live, always up to date and can be made to use the server database and resources by tagging objects as server side (without code re-write).
From the outset of the technology development, the first consideration in the face of the question "Why can you not run desktop software, live over the Internet ?" was the problem of security.
Founders of dotFX are exprienced security practitioners in the area of host, software and network security. Techniques like presenting a "Trust / No Trust" dialogue or code signing are not a solution to this problem.
Architecturally this problem had to be solved, and the idea of retrofitting security to a software system is almost impossible.
By using a combination of Java security mechanisms and providing extensions to Java security mechanism with system policy and design, dotFX is the only client side technology of it's kind that has a coherent security architecture through mechanism, policy and system design.
The founders of dotFX come from a security, networking and software background and set out to enable the running of client software over the Internet. dotFX technology is not intended to be a client side 'player' as an alternative to the browser. The suite of dotFX applications was born.
Allows fast intimate client and desktop software to be downloaded and run locally. ClientFX applications are desktop applications with all the advantages of on or offline use, and can be delivered from the Internet so they are always up to date.
ClientFX was designed from the ground up to deliver Rich Internet Applications written in Java or JavaFX Script. Existing Java assets like Swing Applications and J2EE code can be instantly leveraged.
ClientFX is a plug-in that allows fx:// links to be clicked in a browser or click-to-run applications to be resident on your desktop using InstallerFX.
dotFX is built on a coherent security model designed from the start as a core part of the dotFX architecture.
When an fx:// application or web link is clicked the application runs locally. After running an applicaton it is cached locally. When an application changes or is upgraded, or features are added, just those changes are updated.
Applications are always up to date, but so is ClientFX. dotFX technology is also transparently updated and so an application never needs to be re-installed. There will not be a 'player' versus application compatibility problem. Installer applications made by InstallerFX never need to be updated even between releases !
Completely cross platform. ClientFX works on Windows, OS X and soon will support Linux and BSD. Applications can be written once in Java or JavaFX Script and be delivered to all clients using ClientFX.
ServerFX enables the power of the client, delivering code to the desktop. Client richness and intimacy is mirrored with scale on the server. Only necessary load is put on the server, and the client does the heavy lifting. IT sees scale and lower costs for cpu and bandwidth and the end user gets a better experience.
ClientFX code is delivered just in time, and only as needed. If only one class changes in the server repository all clients will get that update live and incrementally. Applications can be micro-patched after first release and with little or no noticable impact on the end user. Applications can be made to run online or offline with little tax on the developer.
dotFX products (including servers) are available for free download for the Beta release period. Users wishing to have commercial support or release supported product on the dotFX Beta release should contact dotFX directly and we can support you.
ClientFX 1.1.7 release
ServerFX 1.1.7 release