Frequently Asked Questions

What is the website?

The website is a web-based Integrated Development Environment (IDE) and Content Management System (CMS) that enables the collaborative development and distribution of a JavaScript library called JsPHP.

What is available on the website?

If you're an unregistered user you will have access to browse the JsPHP library and to download functions that you'd like to use in your own projects. As a registered user you can be involved in the development of the JsPHP library. That is, you can edit code for functions, unit tests or benchmarks; leave comments; and edit function dependencies. To get started learning about what's available on the website head over to the demo page.

Who pays for the website?

The website is a ProgClub project. ProgClub is a free international club for computer programmers, and ProgClub is sponsored by an Australian software development company, Blackbrick. So it is essentially Blackbrick who pays to develop and host the website.

Who runs the website?

As mentioned above the website is a ProgClub project. John Elliot is in charge of the project at ProgClub. Checkout the contact page if you need to get in touch.

Who develops the website?

The website is developed by ProgClub. It's another one of ProgClub's open-source computer programming projects. The website runs a customised Content Managemnt System (CMS) and Integrated Development Environment (IDE) that is made available through the Pcphpjs software. The Pcphpjs software is developed by ProgClub members on a volunteer and paid basis. Generally Pcphpjs is a volunteer project, but Blackbrick has employed programmers to work on some of the more involved features.

What is the JsPHP library?

The JsPHP library is an open-source JavaScript library that aims to deliver the PHP API. This means that the functions available in a PHP programming environment have been implemented as JavaScript functions so you can use similar functions in a JavaScript environment. The library is particularly useful when you are porting algorithms that have been written in PHP to JavaScript environments (such as web-browsers).

Can you explain the function statuses 'Ported', 'Unported', etc?

Functions at JsPHP are classified with one of the following statuses: Ported, Unported, Not-porting, Experimental, or Workbench. The idea of this classification is to let you know what the plans are for a function and where it is at in terms of development. An explanation of the various function statuses follows.

Ported functions are the PHP functions which have been successfully ported to JavaScript and are available in the JsPHP library.
Unported functions are the PHP functions which we would like to include in the JsPHP JavaScript library but which have not yet been ported.
Not-porting functions are PHP functions which are available in PHP but which will not be being made available in JsPHP for some reason. For example, perhaps the function cannot be implemented usefully in a JavaScript environment for a technical or practical reason.
Experimental functions are PHP functions which may be ported to the JsPHP JavaScript library, but it's too early to say for sure. If a function has an experimental JavaScript implementation it carries this status.
Workbench functions are PHP functions which will be ported to the JsPHP JavaScript library, but which haven't been completely ported yet. While work is proceeding on such functions they carry a Workbench status.

What is the Pcphpjs project?

The Pcphpjs project is a ProgClub project, and it is the software that provides the website. You can learn more on the Pcphpjs project page.

What is the history of the JsPHP library?

The JsPHP library started life as php.js, initially released as an open-source library by Kevin van Zonneveld in 2008. Kevin's php.js project evolved to, where the upstream library continues to be developed and made available today. In December 2011 John Elliot forked the codebase into a new ProgClub project at where the code is made available, with some improvements and modifications, as the JsPHP library.

Why did you fork code already available at

John had a fix for one of the functions that didn't get applied. You can read more about it on his blog. Apart from being annoyed that his fix didn't make it into the production release at he figured he could do a better job. At there are version control, public authoring, dependency management, unit tests and benchmarking facilities in addition the other features available at both sites such as attribution and comments. So the idea was basically to try and make a better CMS tool (an entire web-based IDE in the end), learn a thing or two about PHP and JavaScript, and fix that bug.



There are no comments yet, be the first!

Please Login or Register to post comments.


ProgClub is a club for computer programmers, and we created the website. Come hang out with us if you'd like. :) is the upstream source for the JsPHP JavaScript library that provides the PHP API.


Blackbrick is an Australian technology company that graciously pays to host If you're looking to employ expert JavaScript programmers to help you with your project feel free to get in contact with Blackbrick who may be able to help you out.