➡ We are looking for a suitable platform to compile standalone versions of Bol Processor BP3.
Currently, Bol Processor BP3 is the combination of a console (written in C language) and a set of PHP/HTML/CSS/Javascript files that act as its interface. A console version of Csound can also be attached. See the Bol Processor ‘BP3’ and its PHP interface page for installation details.
It all works beautifully in a design that is compatible with multiple 64-bit systems: MacOS, Linux and Windows. However it does require the installation of an Apache+PHP package to run the interface. (We are currently using the free version of MAMP on Mac computers to develop the BP3 interface.)
The next step will be to create a standalone application that replaces the web browser and its PHP/HTML/CSS files. The application will have Linux, MacOS and Windows versions.
Over the past two decades, a number of platforms have been developed for building desktop applications that emulate the behaviour of a web browser. Most of these seem to have been abandoned, or at least not updated for years, but we are confident that PHP Desktop will be eligible for this process.
We urgently need to evaluate the ability of PHP Desktop (in its current Linux implementation) to compile a standalone version of the Bol Processor interface. We would like to hire a programmer for this specific task. Please contact us to discuss the terms of collaboration.
Below is a list of requirements for compiling the PHP/HTML/CSS/Javascript interface. Please provide links to alternative solutions in the comments at the bottom of this page, or privately via the Contact page.
Requirements
- Display a HTML/PHP page using links to its CSS file(s)
- Support the “require_once()” procedure to bind several PHP pages together
- Support all types of HTML “<input>” instructions: fields, buttons, checkboxes etc.
- Support “$_GET” and “$_POST” to handle forms
- Support PHP “open()” instruction to create/update text files
- Support PHP “exec()” instruction to send commands to the console
- Support multi-tag or multi-window work space
- Support Javascript “window.open()” to create pop-up windows
- Support HTML CANVAS graphics and PHP GD graphics
- Support the HTML Audio tag to stream WAV sound files
- Preferably imbedding Chrome browser
Note that no databases or SESSION variables are used in the interface. Temporary data is kept in files that are automatically discarded when obsolete.
A global variable “$which_system” can be set at the beginning of the code to compile desktop applications running on different systems. Minimum system versions could be: MacOS 10.14 (Mojave), Windows 10, and Linux ≥ January 2019.