Difference between revisions of "Design Document Environment"

From BOARD18 Project WIKI
Jump to navigation Jump to search
(2.1)
(→‎Server Side: updated versions)
 
(7 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{ReleaseNotice|2.1}}{{Design Document Index}}
{{ReleaseNotice|2.5}}{{Design Document Index}}
== Languages==
== Languages==
=== Client Side===
=== Client Side===
{| class="wikitable floatright"  
{| class="wikitable floatright"  
|+ Javascript Library Releases
|+ Javascript Library Releases
!BOARD18 Release!!2.1
!BOARD18 Release!!2.5!!
|-
|-
|jquery||1.11.0
|jquery||1.11.0||
|-
|-
|jquery.ui.position||1.10.4
|jquery.ui.position||1.10.4||depricated
|-
|-
|sha256||2.2
|sha256||2.2||
|}
|}
Board 18 is being developed using HTML5 (with canvas), CSS 3 and the JavaScript standard referred to as ECMAScript 5. Various Javascript Libraries are used by BOARD18 as shown in the table to the right.  
Board 18 is being developed using HTML5 (with canvas), CSS 3 and the JavaScript standard referred to as ECMAScript 5. Various Javascript Libraries are used by BOARD18 as shown in the table to the right.  


The Firefox browser is the main development platform for this project. Currently Firefox version 46.x is being used. I recommend that this browser (or a later version of it) be used to run BOARD18. But all other '''modern''' browsers also seem to work.  
The Firefox browser is the main development platform for this project. But all '''modern''' browsers also seem to work.


<span style="color: Red">NOTE: </span>Canvas support is now present in all modern browsers. See [http://caniuse.com/canvas Can I Use Canvas]. But, at this point in the development of BOARD18, I do not have the resources to test it thoroughly in other browsers.  [[Project:Community_portal|I would be happy to accept your help in this area!]]
=== Server Side===


=== Server Side===
The server side of BOARD18 will use LAMP. LAMP stands for Linux, Apache, MySQL and PHP. PHP will be the programming language. And MySQL will be the data base language. The current development environment is based on PHP version 7.2 and MySQL version 5.7.
 
== Database ==


The server side of BOARD18 will use LAMP. LAMP stands for Linux, Apache, MySQL and PHP. PHP will be the programming language. And MySQL will be the data base language. The current development environment is based on PHP version 5.3 and MySQL version 5.5.  
There will be no client side data base. All permanent storage will be via the server side MySQL data base. PHP will be used for all MySQL access. PHP will use the '''procedural style''' of the ''mysqli'' API to access the database.


== Database==
== Cookies ==


There will be no client side data base. All permanent storage will be via the server side MySQL data base. PHP will be used for all MySQL access. PHP will use the '''procedural style''' of the ''mysqli'' API to access the database.  
Three cookies are used to provide convenience features to the log-in and security experience of BOARD18. All client side access of these cookies is done via the BD18.docCookies object which is defined in board18com.js. More information about these cookies is available [[Player%27s_Guide_V2.5_Cookies|here]].


== Client/Server Communication==
== Client/Server Communication==
Line 34: Line 36:
Board18 will accept the following user inputs: keyboard, mouse movement and mouse button clicks. Right clicks and some left clicks will activate pop-up menus. Scroll wheel events will not be used by the BOARD18 application.  
Board18 will accept the following user inputs: keyboard, mouse movement and mouse button clicks. Right clicks and some left clicks will activate pop-up menus. Scroll wheel events will not be used by the BOARD18 application.  
<span style="color: Fuchsia">Development of compatibility for hand held [small screen] devices  
<span style="color: Fuchsia">Development of compatibility for hand held [small screen] devices  
is being worked on and should be expected to gradually appear in future releases.</span>
is on hold but it may gradually appear in future releases.</span>


[[Category:Design]]
[[Category:Design]]

Latest revision as of 05:06, 3 April 2020

This page has been updated to comply with Release 2.5.x of BOARD18.
Design Document edit


Languages

Client Side

Javascript Library Releases
BOARD18 Release 2.5
jquery 1.11.0
jquery.ui.position 1.10.4 depricated
sha256 2.2

Board 18 is being developed using HTML5 (with canvas), CSS 3 and the JavaScript standard referred to as ECMAScript 5. Various Javascript Libraries are used by BOARD18 as shown in the table to the right.

The Firefox browser is the main development platform for this project. But all modern browsers also seem to work.

Server Side

The server side of BOARD18 will use LAMP. LAMP stands for Linux, Apache, MySQL and PHP. PHP will be the programming language. And MySQL will be the data base language. The current development environment is based on PHP version 7.2 and MySQL version 5.7.

Database

There will be no client side data base. All permanent storage will be via the server side MySQL data base. PHP will be used for all MySQL access. PHP will use the procedural style of the mysqli API to access the database.

Cookies

Three cookies are used to provide convenience features to the log-in and security experience of BOARD18. All client side access of these cookies is done via the BD18.docCookies object which is defined in board18com.js. More information about these cookies is available here.

Client/Server Communication

The client side of BOARD18 will use the XMLHttpRequest protocol to communicate with the server side. We will be using the get(), getJSON() and put() Ajax functions from the jQuery library for this.

User Interface

Board18 will accept the following user inputs: keyboard, mouse movement and mouse button clicks. Right clicks and some left clicks will activate pop-up menus. Scroll wheel events will not be used by the BOARD18 application. Development of compatibility for hand held [small screen] devices is on hold but it may gradually appear in future releases.