Difference between revisions of "WebKit Users Guide"
| Line 3: | Line 3: | ||
This Guide will introduce the NWK user interface (UI) and the many useful functions that enhance and support the user's experience. A separate document, the [[WebKit Authors Guide]], is under development. | This Guide will introduce the NWK user interface (UI) and the many useful functions that enhance and support the user's experience. A separate document, the [[WebKit Authors Guide]], is under development. | ||
== | == Nomenclature == | ||
; Model | |||
: A system that is initialized parametrically to an initial state and is sequentially clocked to produce a new state and output vector on each clock strobe. NWK supports System Dynamic (SD), Spatial and Individual-based (IB) models. Models in NWK are currently implemented either in Javascript or Java. | |||
;Simulation | |||
: A model in execution. Simulations are managed from the UI. | |||
;Project | |||
: A single unit deploying 1 or more simulations, usually employing a single Web page. Projects are specified using a '''project file''', containing [https://www.json.org/json-en.html JSON] code detailing the UI and at least providing parameters for the model. Small SD models may be specified in the project file. | |||
== Design Overview== | |||
NWK consists of these elements: | NWK consists of these elements: | ||
# A library of Javascript and CSS code that support the functionality and appearance of the UI. | # A library of Javascript and CSS code that support the functionality and appearance of the UI. | ||
# A library of either Java or Javascript code that implements the API for the simulation's model. | |||
# A library of templates used to construct the HTML files that comprise the Website. | # A library of templates used to construct the HTML files that comprise the Website. | ||
# A Project Manager application that builds the Website from a ''project'' file; the latter containing a "blueprint for the site represented | # A Project Manager application that builds the Website from a ''project'' file; the latter containing a "blueprint for the site represented in [https://www.json.org/json-en.html JSON]. | ||
Revision as of 22:24, 29 June 2025
Numerus WebKit (NWK) is a technology for building powerful simulations that run in a Web browser. It consists of applications and APIs that support the design of models along the lines of NetLogo (NL) and Stella, but using conventional languages such as Java, JavaScript (JS) and Python.[1] These applications are deployed either from a remote server, such as Amazon Web Services (AWS) Elastic Beanstalk (AWSEB), (or, in Java mode, any other server that supports WebSockets, or in JS mode, from any conventional Web or Cloud server); alternatively, they can be run locally without using any network connectivity using a localhost server. JS development only requires text editing, and Java development can take advantage of the Eclipse J2EE (Jakarta) platform using the Apache Tomcat server.
This Guide will introduce the NWK user interface (UI) and the many useful functions that enhance and support the user's experience. A separate document, the WebKit Authors Guide, is under development.
Nomenclature
- Model
- A system that is initialized parametrically to an initial state and is sequentially clocked to produce a new state and output vector on each clock strobe. NWK supports System Dynamic (SD), Spatial and Individual-based (IB) models. Models in NWK are currently implemented either in Javascript or Java.
- Simulation
- A model in execution. Simulations are managed from the UI.
- Project
- A single unit deploying 1 or more simulations, usually employing a single Web page. Projects are specified using a project file, containing JSON code detailing the UI and at least providing parameters for the model. Small SD models may be specified in the project file.
Design Overview
NWK consists of these elements:
- A library of Javascript and CSS code that support the functionality and appearance of the UI.
- A library of either Java or Javascript code that implements the API for the simulation's model.
- A library of templates used to construct the HTML files that comprise the Website.
- A Project Manager application that builds the Website from a project file; the latter containing a "blueprint for the site represented in JSON.
- ↑ This API is under development.