Build interactions: Build interactions
Build interactions
Create a question type
PIE elements define how a question is edited, displayed and scored. You can adapt an existing element or build one that works with the same players.
Before building a new element
- Configure an existing element. Change its authored content or editor settings. Browse the library.
- Compose an item. Combine existing interaction elements in markup with one model per instance. Use the item player.
- Customize the application. Add a layout, tool or provider. See extension points.
- Create an interaction. Implement a new response behavior and its authoring view against the element contract.
Element development guides
How an element works
The model describes the question; the session holds the learner's response. A controller prepares the data for each mode and role, and can score the response. Delivery and authoring views use HTML custom elements, so they work across frontend frameworks.
The library includes React and Svelte implementations you can use as examples, including accessibility, validation and packaging.