flutter3d_education

Education on flutter3d, in plain Dart: lab simulations a server replays to check a student's run, the experiment document a lesson is written in, and a lesson's steps read out of a level. The chemistry bench in example/ is the Flutter half: it draws, so it is an application of its own rather than a library here.

The LTI 1.3 and xAPI side a learning platform talks to is flutter3d_education_lti, a package of its own: its cryptography and HTTP client are a service's, and an editor or a lesson that reads an experiment does not carry them.

Library Was What it is
lab.dart flutter3d_lab Virtual laboratory simulations built on flutter3d_sim's stepping and recording primitives

lab.dart

Until 1.0.0-rc.1, flutter3d_lab.

Virtual laboratory simulations built on flutter3d_sim's stepping and recording primitives. The first is the pendulum from edu-04.

Plain Dart, no Flutter SDK. A server verifies a student's submitted lab run the same way it verifies a game run: it replays the run in a container that has no Flutter SDK in it.

Libraries

experiment
The experiment document, f3d.experiment: a level, the substances it uses by catalog id, the probes it reads, and a scenario of steps with the readings each expects and the questions each asks (ExperimentDocument); and the question a lesson or an experiment step asks (CheckQuestion).
flutter3d_education
Every library of flutter3d_education, in one import: the experiment document (experiment.dart), the lab simulations (lab.dart) and a lesson's steps read out of a level (lesson.dart). The LTI 1.3 and xAPI clients are flutter3d_education_lti's.
lab
Virtual laboratory simulations — edu-04's own worked example (PendulumSimulation) is the first, not the only one this package is named for.
lesson
Reading a lesson out of a level: the edu_sequence and edu_step entities a lesson is written as, in the order a viewer plays them (orderedSteps, firstLessonSteps). The question a step asks is CheckQuestion, in experiment.dart.