## 2 Materials and Methods
### Methodology Framework  
As mentioned earlier, the course comprised 40 students organized into working groups of 2 or 3 members, with each group assigned a specific room to modify. To streamline collaboration and ensure a secure workflow for both the professors and students, GitHub was selected as the version control tool [35]. GitHub, a web-based platform utilizing Git version control, offers features for efficient codebase management, collaboration, and change tracking. Its code review, issue tracking, and project management tools make it a widely-used choice for open-source and private projects, fostering a community-driven development approach. Figure 2 depicts the methodology used for updating the application and the interaction between the professor and student groups through GitHub. The professor acts as the administrator and creates a remote repository on GitHub. The main branch or master branch contains a copy of the primary application (template) used by the professor on their local repository (i.e., the professor's PC). To maintain the functional integrity of the application, only the professor has permission to modify this main branch. Figure 1: Educational industrial metaverse developed: (a) lobby; (b) room—1 st person view; (c) room—example of meta’s avatar; (d) interaction with virtual objects; (e) adding new virtual objects; (f) exit room functionality. Once the workgroups are formed, each group creates a GitHub user, to access the remote repository containing the application template. The professor sets up individual work branches for each group and grants them read and write permissions, allowing them to work independently on their assigned tasks without affecting other groups' work. These branches start with identical copies of the main application. Workgroups use a Git manager, like GitHub Desktop, to \"clone\" the content of their branch into their local repositories (i.e., student PCs), facilitating their work on the application. Within the application, each working group has a designated folder, to incorporate their proposals into the virtual environment. This may include 3D models (e.g., obj or fbx files), materials, and small scripts. When a modification is made, the group can easily update the remote repository, by pulling the changes into their branch. The professor can then review the modifications made, by accessing the respective branches on both the remote and local repositories. When a group wants to view the results of their modifications in the VR application, using the headsets, they initiate a pull request. The professor assesses potential conflicts with the main application in the main branch or master. If everything appears in order, with no conflicts, the professor proceeds to update the main branch with the group's changes. Once the application is successfully updated in the remote repository, the professor pulls the main branch or master into their local repository. This allows the professor to compile the updated application and send it to the Meta bundle, updating the version of the application on all devices that can access it. This seamless process ensures that the latest version of the VR application, incorporating the contributions of all groups, is readily available for use on the headsets. Leveraging GitHub's version control capabilities enables  
Figure 2: Repository workflow. the professor to efficiently manage updates and to seamlessly integrate the collective efforts of the student groups into the final application version. To maintain synchronization and ensure all students can view collective progress, the professor follows a weekly update schedule (see Figure 3). After in-class work on modifications in the associated room, the students continue working on the project at home throughout the week. The professor then updates the main application with the latest changes, until the established date and time. During the subsequent class session, the working groups utilize VR devices, to review advancements made during the previous week.