We are building a flexible and extensible cross-platform native bridge for Delphi's Firemonkey and a collection of OS native controls.
We are building a flexible and extensible cross-platform native bridge for Delphi's Firemonkey and a collection of OS native controls. Read more
NakeyMonkey is a native OS control framework for Delphi XE2's Firemonkey platform.
Delphi's Firemonkey GUI platform renders all controls internally, skinning them to appear to be native OS controls, leaving them to feel a bit odd and look a bit off on each platform. Also, since component developers must do 100% of the rendering work when writing Firemonkey controls, complex controls like Rich Text Editors and HTML viewers are extremely problematic to build.
NakeyMonkey will provide a native OS control framework for the Firemonkey Platform and a component pack that includes several wrapped native controls. Controls can be cross-platform to any Firemonkey supported platform on which exists a native version of the control, but the initial release will specifically target controls common to OS X and Win32/64.
The base funding level that I'm looking to receive is $20,000. This level of funding will allow me to release the core NakeyMonkey framework along with a pack of three native components including the frequently requested RichEdit. For every $5,000 that my project receives over the $20,000 goal, I'll add another native control to the component pack.
Contributors who have given at least $100 to this project will automatically get a license with at least one year support contract to this pack.
Now, should this project be funded to at least $45,000, then not only will I build the above stated component pack but I will also open source the entire pack under the MIT license. Doing so would permit anyone to bundle it up and use it within their own products.
With Delphi XE2, Embarcadero told a very exciting story, one that speaks to heart of Delphi developers worldwide. It brought us the promise of true write-once and cross-compile to Windows, OS X and iOS. Unfortunately, what developers soon learned was that the path to multi-platform nirvana was not paved as smoothly as they would have liked.
Firemonkey promised us the ability to create cross platform 3D business applications full of animations and polish. What it delivered was young, incomplete and did not always look or function as you would expect on each platform. The root cause of this, aside from it being a completely new platform written from the ground up, was that each Firemonkey component is drawn and rendered from within the framework and skinned to appear as though it was a native OS control. While this may be good in theory and it may even be passible in a lot of situations, it generally falls flat for real world business use cases which require consistency with the platform providing minimal training and uptake for your users..
At the heart of every Firemonkey application though is a native OS window just begging to display some native OS controls. That's where NakeyMonkey comes in.
NakeyMonkey is first a set of base components and interfaces that simplify wrapping native OS controls in a cross-platform way allowing them to be write-once, cross-compile anywhere (well, anywhere that Delphi supports). By providing a base component to descend native wrappers from and a base platform object for implementing the OS specific implementation, NakeyMonkey allows components like a RichEdit to be available to your Firemonkey apps without having to rewrite the entire implementation of parsing rich text tags and figuring out how that should be visually represented on the canvas.
Rich Editors, WebBrowsers, VideoPlayers, ListViews, Calendar, Toolbar, TreeViews, Tabs and PageControls are all great examples of standard OS native controls that are easily brought into Firemonkey thanks to NakeyMonkey.
If you are already working in Firemonkey, you probably have already been wishing for something like this. If you haven't yet started with Firemonkey, you almost certainly will want this when you do.
So I am asking you for your support. If you can give a little, that's great. If you can give a lot, that's awesome. And if you can't afford to give anything, then please, at the very least, pass this project along to your friends. If we don't raise the needed funds, the Nakey Monkey will die a very quick death.
The future of NakeyMonkey is in your hands.
- (30 days)