[DAO:b69ee51] Update #2 for proposal "Decentraland University Live Teaching Platform"

Author: 0xe5cf1bb88a59f9fc609689c681d1d14bfe7ce73a
Update Status: Late
Project Health: :green_circle: On Track


The smart contract development really took shape in the first half of October and it is now feature complete. The dApp has changed relatively little and has been refined and tweaked to keep up with the contract development.
The NPM Package now has the core functionality implemented and is now focusing on complexities such as supporting multiple classrooms in a single scene.
The Community Venue is in good progress - the exterior is largely complete and the interior classroom is in development.


Smart Contract

  • The smart contract is largely complete with contract deploys to testnet being required less frequently.
  • It is integrated with the LANDRegistry contract so that LANDOperators can specify classroom administrators. We have our own test LANDRegistry on testnet so we can fully simulate the end to end experience without worrying about ownership of the LAND.
  • Teacher Permissions Implemented
  • Cleanup on delete.
  • Automation of test data. We have a script which fully populates a newly deployed contract version with a stable set of test data.


  • Improved Teacher Screen which now contains a simple content packager which is used to create class content JSON that is used by classrooms to read the educational content being presented by the teacher.
  • Updates made in line with changes to LAND contract.
  • Classroom Administrator screen evolved in line with changes to the smart contract, and semantics cleared up to avoid confusion

NPM Package

  • Blockchain Integration - core code added to interact with blockchain to authenticate the teacher and allow them to start the class
  • Communication abstraction in place based around a Channel interface with Reference Server and peer to peer channels implementations.
  • Evolution of the main teacher’s content transport, allowing Teachers to navigate through a collection of Images, Videos and 3D content. This is demonstrable in an example scene.
  • Video Control transport broadcasts to allow teachers to remotely play, pause and set the volume across all students.
  • Introduced 3D Content type.
  • Notifications with a toast implementation.

Reference Server

  • Basic subscribe messaging with teacher and student channels.
  • Example Scene setup using node.js reference with the reference server channel implementation in the NPM package.

Community Venue

  • Community designed and blocked out.
  • Exterior finished with Texturing.
  • One classroom interior blocked out.

Example Scenes

  • Scene Template 1 using simple classroom interior.
  • Further work on existing samples scenes
  • Introduction of scene for reference server development.


A bug with SDK 7 where the handling of custom avatar animations has stopped working unless we roll back to an earlier version of SDK7. The means that although the seating manager and raise a hand functionality both technically work on our side, both depend on custom avatar animations so the animations (e.g. raising a hand) are only shown when we go to the earlier SDK 7 version. We will continue to investigate and if necessary will raise a defect report with DCL.

Next steps

Introduction of Classroom volume, which is necessary to support multiple classrooms on a scene, and also that the display of 3d content is relative to the classroom itself and not the scene in which it is contained.

  • Completion of LAND Operator screen in terms of usability and enforcing the overall operator rights established with the recent LANDRegistry integration in our smart contract.
  • Implementation of DCL Worlds Owner screen in the dApp
  • Handling of interactive 3d content.
  • Handling of 3d content with multiple animations.
  • Creation of example classroom content packages.
  • Complete the reference server implementation.
  • Start coding the community venue now the 3D modelling of that is well established.
  • Creation of more example projects
  • Beef up the documentation website
  • Ensure that all example projects have their own markdown documentation that is viewable in Github

Additional notes and links

View this update on the Governance dApp