compatibility => any student should be able to use it, whatever their OS, browser and privacy settings
robustness => let's avoid relying on 2-way binding, polyfills and other technical tricks that may cause bugs
testability => build it in a way that makes it fast to test, so we can enable continuous integration
modularity => it should allow to plug-in different back-ends and/or UI elements, e.g. to enable self-assessment with granular feedback
simple deployment => before adding any plug-ins, the UI should be a static webapp, so we can deploying easily and quickly to a wide range of hosting platforms, including free ones. (e.g. github pages, netlify, now.sh, firebase...)
foster contributions => use a tech stack that is popular, to make it motivating and accessible for other developers to contribute
Also, we should probably create a separate repo for the UI, and focus this one on the writing of exercises + the collection and evaluation of student submissions.
See the list of related issues, below, including closed ones. (consider this issues as an epic that should cover all these requirements)
Objectives:
Also, we should probably create a separate repo for the UI, and focus this one on the writing of exercises + the collection and evaluation of student submissions.
See the list of related issues, below, including closed ones. (consider this issues as an epic that should cover all these requirements)