Aiken to MoodleXML
This JS library parses Aiken quizzes into MoodleXML files.
Usage
import aikenToMoodleXML from 'aiken-to-moodlexml';
// ...
aikenToMoodleXML(aikenString, (result, error) => {
if (error) {
console.error(error);
} else {
console.log(result);
}
});
Examples
On the server
import aikenToMoodleXML from 'aiken-to-moodlexml';
const fs = require('fs');
const path = require('path');
const xmlString = fs.readFileSync("/path/to/your/aiken/file.txt", 'utf8');
aikenToMoodleXML(aikenString, (result, error) => {
if (error) {
console.error(error);
} else {
console.log(result);
}
});
On a JS SPA
import aikenToMoodleXML from 'aiken-to-moodlexml';
// ...
fetch("https://myweb.org/aiken.txt")
.then(res=>res.text())
.then(aikenString => {
aikenToMoodleXML(aikenString, (result, error) => {
if (error) {
console.error(error);
} else {
console.log(result);
}
});
});
Development
Commands
npm run clean
- Removelib/
directorynpm test
- Run tests with linting and coverage results.npm test:only
- Run tests without linting or coverage.npm test:watch
- You can even re-run tests on file changes!npm test:prod
- Run tests with minified code.npm run test:examples
- Test written examples on pure JS for better understanding module usage.npm run lint
- Run ESlint with airbnb-confignpm run cover
- Get coverage report for your code.npm run build
- Babel will transpile ES6 => ES5 and minify the code.npm run prepublish
- Hook for npm. Do all the checks before publishing your module.
License
MIT © Sonsoles López Pernas