Thought I should send everyone an update on how development is going. You have all been seeing the number of commits going into github and getting involved in everything and we have really come a very long way in a short space of time. So here is a quick overview to get everyone up to speed:
- I have released 28 versions of the windows edition of deskshell
- There are six different installers:
- Mac Edition
- Main SDK for windows
- Portable edition for windows
- Portableapps_com for windows
- Runtime for windows
- (compiled applications that are run on machine without deskshell install this version themselves after asking user)
- Standalone for windows (if you are creating very large apps you can integrate your app into deskshell)
We have already implemented a large amount of features:
There have been a good number of applications built with deskshell and it is working really well as a webserver and socket server.
I will let Ingwie post about the mac edition, a lot has happened there and he has been very busy with some big future features that should be landing before the end of the year!
I have discussed with a number of you my ideas for having a "plugin" based setup for deskshell, we want to support multiple front and backends and allow people to customize and select exactly what components to use for their application. There are a number of things we have been researching into.
We are very far along with a php backend thanks mainly to Ingwie. We have also discovered a handcoded c library that packs most of the php functionality into a 700k library which looks very interesting for compiling into deskshell.
We have a chrome frontend currently. I have been looking into QtWeb (http://qtweb.net/
) which is a webkit based browser but packed into just 8 meg on disk. This would be ideal for smaller applications. It would also be possible for us to embed the Qt browser control in our own Qt application shell and customise the result much more.
Also I have managed to build a new cef3 based frontend. This was just started this week but I have already implemented a very large number of features concentrating on exposing as much of the parameters to the app builder as possible. I have managed to add a C JSON library into the binary so on startup cef3 can read settings for window size, chrome and everything else from the app.desk file.
We have a lot of different editions of deskshell and people are using it for a wide range of different styles of application. We have been looking at how people are using the application and are working on integrating the different editions into a single way of setting up deskshell that still keeps flexibility to be used in many different ways.
We will also move towards a more "npm" centric setup for deskshell. I have a prototype system with a portable npm module. This would allow us to package up each of the front ends up into a different npm module. Then developers can choose what modules they want and install from npm. So the plug-in ideas will basically be implemented as a series of npm modules which is really a simplification of what we have been doing until now and will make the project more accessible to new developers.
Ok well I hope you feel you are up to date with our current thinking on deskshell, as you can see development is continuing at quite a pace and we are adding a lot of features.