EJS Home Page https://www.um.es/fem/EjsWiki/
EJSS GitLab Repository https://gitlab.com/ejsS
Welcome to the wiki pages for Easy Java/JavaScript Simulations!
About Easy Java/JavaScript Simulations

Executive Summary:
This document provides a briefing on the Easy Java/JavaScript Simulations (EJS or EjsS) Toolkit, an open-source authoring tool designed for non-programmers to create interactive simulations for educational purposes. Developed primarily by Francisco Esquembre, with significant contributions from Félix Jesús Garcia Clemente for the JavaScript flavor, EJS has evolved from a Java-only tool to one that can produce simulations in both Java and JavaScript/HTML5, enabling broader accessibility across devices. The toolkit has received significant recognition for its contribution to physics education and open educational resources.
Key Themes and Important Ideas/Facts:
1. Purpose and Target Audience:
- EJS is a "free authoring tool written in Java that helps non-programmers create interactive simulations in Java or JavaScript, mainly for teaching or learning purposes."
- The primary goal is to empower educators and learners without extensive programming knowledge to develop and utilize interactive simulations.
2. Historical Evolution and Naming:
- Initially named "Easy Java Simulations" (EJS), the tool was limited to creating Java-based simulations.
- With the introduction of JavaScript and HTML5 support (starting from release 5.0), the name was changed to "Easy Java/JavaScript Simulations," and the acronym can now be EJS or EjsS.
- This shift allowed for the creation of simulations runnable on tablets and smartphones via Reader Apps.
- Due to the divergence of Java and JavaScript development, release 6.0 introduced a split between "Java EJS" and "JavaScript EJS" (or "Js EJS").
- Currently, generating Java simulations requires Java 8, while JavaScript simulations can be created with the latest Java version.
- Despite the split, "the philosophy and main architectural structure of EJS remain common." The main differences lie in the construction of graphical user interfaces.
3. Core Functionality:
- EJS enables users to create interactive simulations without requiring in-depth programming skills.
- It supports the creation of simulations in two main "flavours": Java and JavaScript (utilizing HTML5).
- The JavaScript/HTML5 capability significantly enhances accessibility across various devices, including mobile devices.
4. Development and Authorship:
- EJS was created by Francisco Esquembre from the Universidad de Murcia and is part of the Open Source Physics project.
- Félix Jesús Garcia Clemente, also from the Universidad de Murcia, is the co-author of the JavaScript library that supports the JavaScript flavor of EJS and the main developer of the Reader Apps.
5. Open Educational Resource and Licensing:
- EJS is presented as an Open Educational Resource.
- The content within the wiki is licensed under the Creative Commons Attribution-Share Alike 4.0 Singapore License.
- Commercial use of the EasyJavaScriptSimulations Library requires a separate license, details of which can be found at https://www.um.es/fem/EjsWiki/Main/EJSLicense.
6. Recognition and Awards:
EJS and its developers have received significant recognition for their contributions to physics education and open educational resources, including:
- American Physical Society 2020 Excellence in Physics Education Award (awarded September 2019).
- Multimedia in Physics Teaching and Learning Award (received December 2015).
- Science SPORE Prize (received November 2011).
- Selection by UNESCO Bangkok in March 2015 to be part of the "UNESCO Directory of Free Educational Resources for Teachers. Vol. 1: Science".
- UNESCO King Hamad Bin Isa Al-Khalifa Prize for the Use of ICTs in Education (received January 2016 for Open Source Physics At Singapore).
- Numerous awards and recognitions related to the Student Learning Space (SLS) Hackathons in Singapore, highlighting the practical application of EJS in educational settings.
7. Resources and Further Information:
The wiki provides several resources for users:
- EJS Home Page: https://www.um.es/fem/EjsWiki/
- EJSS GitLab Repository: https://gitlab.com/ejsS
- Information on:
- The idea behind EJS.
- Installation process.
- How to create simulations.
- How to deploy simulations.
- A reference for all EJS view elements.
8. Community and Usage Examples:
- The wiki page lists numerous examples of simulations created using EJS, often stemming from workshops and hackathons, particularly within the context of the Singaporean Student Learning Space (SLS).
- These examples cover a wide range of topics across science, mathematics, and even some social sciences (e.g., Economics).
- The "Popular Tags" section indicates areas where EJS is frequently used, such as "Electromagnetism," "Kinematics," "Differential equations," and in the creation of "Laboratorios Virtuales Interactivos."
Conclusion:
The Easy Java/JavaScript Simulations Toolkit is a valuable open-source resource that democratizes the creation of interactive simulations for educational purposes. Its evolution to support JavaScript and HTML5 has significantly broadened its accessibility and applicability across modern devices. The numerous awards and recognitions underscore its impact on physics education and the wider open educational resource community. The provided wiki serves as a comprehensive starting point for individuals interested in learning, using, and contributing to the EJS project.
Easy Java/JavaScript Simulations Toolkit Study Guide
Quiz
- What is the primary purpose of Easy Java/JavaScript Simulations (EJS)?
- Who are the creators of EJS, and with which project is it associated?
- What was the former name of EJS, and why was it changed?
- What are the two main "flavours" of EJS available since release 6.0? Explain the primary reason for this split.
- What are some of the key topics covered in the EJS wiki pages, as listed in the provided text?
- Mention at least three awards or recognitions received by Easy Java/JavaScript Simulations or the Open Source Physics project.
- What is the role of Félix Jesús Garcia Clemente in the development of EJS?
- Before version 5.0, what type of simulations could EJS create? What changed in version 5.0?
- Where can one find the source code repository for Easy JavaScript Simulations?
- What is the licensing information for the content on the EJS wiki, and what should one do for commercial use of the EasyJavaScriptSimulations Library?
Quiz Answer Key
- The primary purpose of Easy Java/JavaScript Simulations (EJS) is to serve as a free authoring tool that allows non-programmers to create interactive simulations, primarily for teaching or learning purposes. These simulations can be developed in either Java or JavaScript.
- Easy Java/JavaScript Simulations (EJS) was created by Francisco Esquembre and is part of the Open Source Physics project. Félix Jesús Garcia Clemente collaborated on the JavaScript flavour of EJS.
- The former name of EJS was "Easy Java Simulations." The name was changed to "Easy Java/JavaScript Simulations" with the release of version 5.0 because the tool could then also create simulations using JavaScript and HTML5, enabling them to run on tablets and smartphones.
- The two main "flavours" of EJS since release 6.0 are Java EJS and JavaScript EJS (or Js EJS). This split was decided because the current release of EJS requires Java 8 to generate Java simulations, while it can generate JavaScript simulations with the latest Java version.
- The EJS wiki pages cover topics such as the idea behind EJS, installation of EJS, how to create simulations, how to deploy simulations, and a reference for all EJS view elements.
- Three awards or recognitions received are the American Physical Society 2020 Excellence in Physics Education Award, the Multimedia in Physics Teaching and Learning Award (received December 2015), and the UNESCO King Hamad Bin Isa Al-Khalifa Prize for the Use of ICTs in Education (received January 2016).
- Félix Jesús Garcia Clemente is the co-author with Francisco Esquembre of the JavaScript library that supports the JavaScript flavour of EJS and is the main developer of the Reader Apps that allow JavaScript EJS simulations to run on tablets and smartphones.
- Before version 5.0, EJS could only create Java simulations. In version 5.0, EJS underwent a major change allowing it to also create simulations using JavaScript and HTML5, making them compatible with tablets and smartphones.
- The source code repository for Easy JavaScript Simulations can be found at the EJSS GitLab Repository: https://gitlab.com/ejsS.
- The content on the EJS wiki is licensed under the Creative Commons Attribution-Share Alike 4.0 Singapore License. For commercial use of the EasyJavaScriptSimulations Library, one should read the terms at https://www.um.es/fem/EjsWiki/Main/EJSLicense and contact fem@um.es directly.
Essay Format Questions
- Discuss the evolution of Easy Java Simulations (EJS) into Easy Java/JavaScript Simulations (EjsS). What were the key motivations and technological advancements that led to this transition, and what are the implications for its use in education?
- Explore the significance of EJS being an open-source project and part of the Open Source Physics initiative. How does this contribute to its accessibility, development, and impact on physics education globally, particularly in developing countries as suggested by the UNESCO recognition?
- Analyze the statement that EJS is an authoring tool designed for non-programmers. Based on the information provided, what features or aspects of EJS might contribute to its ease of use for individuals without extensive programming knowledge?
- Consider the numerous examples of simulations and applets listed on the EJS wiki page. How do these examples demonstrate the potential applications of EJS in teaching and learning across different subjects and levels? Provide specific examples and discuss their pedagogical value.
- Examine the various awards and recognitions received by EJS and the Open Source Physics project. What do these accolades suggest about the quality, impact, and innovation of the EJS toolkit in the field of education and physics education specifically?
Glossary of Key Terms
- Easy Java/JavaScript Simulations (EJS/EjsS): A free, open-source authoring tool written in Java that allows non-programmers to create interactive simulations in Java or JavaScript for teaching and learning purposes.
- Open Source Physics (OSP): A project focused on creating and disseminating open-source computational tools and resources for physics education. EJS is part of this project.
- Java EJS: The version of EJS specifically designed to generate simulations using the Java programming language. Requires Java 8 for the current release.
- JavaScript EJS (Js EJS): The version of EJS designed to generate simulations using JavaScript and HTML5, allowing them to run on web browsers, tablets, and smartphones.
- HTML5: The latest evolution of the standard that defines HTML, the main markup language for displaying web pages and web applications. It includes features that support multimedia without plugins.
- Reader Apps: Applications developed to support the execution of JavaScript EJS simulations on tablets and smartphones.
- Authoring Tool: Software designed to help create content, in this case, interactive simulations, without requiring extensive programming skills.
- Open Educational Resources (OER): Educational materials and resources offered freely and openly for anyone to use, adapt, and share. EJS and its associated resources fall under this category.
- Graphical User Interface (GUI): A type of interface that allows users to interact with electronic devices through graphical icons and visual indicators rather than text-based commands. The differences in GUI construction are a primary reason for the split between Java EJS and JavaScript EJS.
- Applet: A small application, often written in Java, that can be run within a web browser or another application. The term is used in the context of older Java-based simulations, while JavaScript EJS often produces HTML5-based simulations.
Easy Java/JavaScript Simulations, also known as EJS (or Ejs, or EjsS), is a free authoring tool written in Java that helps non-programmers create interactive simulations in Java or JavaScript, mainly for teaching or learning purposes. EJS has been created by Francisco Esquembre and is part of the Open Source Physics project.
The JavaScript 'flavour' of EJS is possible thanks to the collaboration of Félix Jesús Garcia Clemente, co-author with Francisco of the JavaScript library that supports this flavour and main developer of the Reader Apps.
In this wiki:
- The idea of Easy Java/JavaScript Simulations.
- Installation of EJS.
- How to create simulations.
- How to deploy simulations.
- A reference for all EJS view elements.
Attach:Main/APSAwardLogo.jpg Δ
American Physical Society 2020 Excellence in Physics Education Award. Awarded September 2019. See APS Award letter. Δ
Multimedia in Physics Teaching and Learning Award received December 2015. See MPTL Award letter.
Science SPORE Prize received November 2011
UNESCO Bangkok, Asia and Pacific Regional Bureau for Education selected in March 2015 Easy Java/JavaScript Simulations to be part of the free educational compilation entitled “UNESCO Directory of Free Educational Resources for Teachers. Vol. 1: Science” for distribution worldwide, mostly in the Asia-Pacific region targeting developing countries. See UNESCO Bangkok letter.
UNESCO King Hamad Bin Isa Al-Khalifa Prize for the Use of ICTs in Education received January 2016 for Price to Open Source Physics At Singapore.
Easy Java Simulations Developer:Francisco Esquembre - Universidad de Murcia
fem@um.es
Felix J. Garcia Clemente - Universidad de Murcia
Frequently Asked Questions about Easy Java/JavaScript Simulations (EJS/EjsS)
Q1: What is Easy Java/JavaScript Simulations (EJS/EjsS)? Easy Java/JavaScript Simulations (EJS), also known as Ejs or EjsS, is a free, open-source authoring tool written in Java. It is designed to allow individuals, particularly non-programmers, to create interactive simulations primarily for educational purposes in both Java and JavaScript. EJS is part of the Open Source Physics project.
Q2: What was the original name and why did it change? Before version 5.0, EJS was called "Easy Java Simulations" and its acronym was solely "EJS" because it could only create Java-based simulations. With the release of version 5.0 and the introduction of the capability to create simulations using JavaScript and HTML5 (allowing them to run on tablets and smartphones via Reader Apps), the name was changed to "Easy Java/JavaScript Simulations" to reflect this expanded functionality. The acronym can now be either EJS or EjsS.
Q3: What are the two main "flavours" of EJS and why were they split? For release 6.0, EJS was split into two main versions: Java EJS and JavaScript EJS (or Js EJS). This division was primarily due to the diverging evolution of Java and the increasing focus of EJS on JavaScript. The current release of EJS requires Java 8 to generate Java simulations, while it can generate JavaScript simulations with the latest Java version. This split allows for more specific development and addresses the different requirements of each platform.
Q4: What kind of simulations can be created with EJS/EjsS? EJS/EjsS is primarily used to create interactive simulations for teaching and learning across various subjects, particularly in physics. However, the examples listed on the wiki page demonstrate its applicability to a wide range of topics, including mathematics, chemistry, and even games. The simulations can involve graphical user interfaces and interactive elements to illustrate concepts and allow users to explore parameters and outcomes.
Q5: Who are the creators and developers of EJS/EjsS? Easy Java/JavaScript Simulations was created by Francisco Esquembre from the Universidad de Murcia. The JavaScript functionality was made possible through a collaboration with Félix Jesús Garcia Clemente, also from the Universidad de Murcia, who co-authored the JavaScript library and is the main developer of the Reader Apps. Both are credited as developers of EJS/EjsS.
Q6: What resources are available for learning how to use EJS/EjsS? The provided wiki page itself serves as a primary resource for learning EJS/EjsS. It outlines the core ideas behind the toolkit and provides information on:
- Installation of EJS.
- How to create simulations.
- How to deploy simulations.
- A reference for all EJS view elements.
The EJS Home Page and the EJSS GitLab Repository (linked on the wiki) likely offer additional resources and community support.
Q7: Has EJS/EjsS or its developers received any notable awards or recognition? Yes, EJS/EjsS and its developers have received several prestigious awards and recognitions, including:
- American Physical Society 2020 Excellence in Physics Education Award.
- Multimedia in Physics Teaching and Learning Award (2015).
- Science SPORE Prize (2011).
- Selection by UNESCO Bangkok as part of their Directory of Free Educational Resources for Teachers (2015).
- UNESCO King Hamad Bin Isa Al-Khalifa Prize for the Use of ICTs in Education (2016, awarded to Open Source Physics @ Singapore).
- National Day Awards Commendation Medal 2018 (presumably for contributions to education or technology).
- Platinum and Gold MOE Service Excellence Award (MSEA) 2017 (likely related to work in Singapore's educational sector).
- Several Innergy Awards in 2019 for innovative educational applications.
These awards highlight the significant impact and recognition of EJS/EjsS in the field of education.
Q8: Where can I find examples of simulations created with EJS/EjsS? The wiki page lists numerous examples of simulations, often linked with descriptive titles. Many of these examples are related to specific educational topics and appear to have been developed for the Singaporean educational context (e.g., "SLS Hackathon" projects related to the Student Learning Space). The "Related Sites" section might also provide links to repositories or collections of EJS/EjsS simulations.