e-Learning-by-SSE / nm-self-learning

https://staging.sse.uni-hildesheim.de/selflearn
3 stars 4 forks source link

LiaScript Exporter #139

Closed Elscha closed 5 months ago

Elscha commented 5 months ago

Ein wichtiges Sekundärziel des Projekts ist die Bereitstellung/Unterstützung von OER, sowie die Anbindung von anderen Systemen. LiaScript bietet das Potential beides zu lösen.

Idee

Wir schreiben eine Exportfunktion, die einen Kurs (Sammlung von Nanomodulen inkl. Content und Lernzielkontrollen, Kapiteln, Beschreibungstexten, auf unseren Server hochgeladene Media-Inhalte, Meta-Daten wie z.B. Skills, ...) so gut es geht nach LiaScript exportiert. Dabei sollten einzelne Nanomodule auch wieder als eizelne Seiten sein, die zusammenhängend in einem LiaScript-Kurs untergebracht sind. Dazu sollten sich MarkDown Inhalte weitest gehend direkt exportieren lassen, jedoch müssten Überschriften in <section></section> Tags eingefasst werden, da diese sonst als separate Seite interpretiert werden.

Vorarbeiten

Marcel hatte bereits mit dem Entwickler Kontakt aufgenommen, der uns eine Bibliothek zur Prüfung erstellt hatte: https://www.npmjs.com/package/@liascript/markdownify, https://github.com/LiaScript/Markdownify/

Ein Beispiel sieht dazu wie folgt aus:

import liascriptify from './node_modules/@liascript/markdownify/dist/lib'
import * as example from '../src/example.json'
liascriptify(example)
    .then((doc:string) =>{
        console.log('ok', doc)
    })
    .catch((err:string) =>{
        console.warn('err', err)
    })

Offene Punkte

Um dieses Beispiel auszuführen muss wird Parcel benötigt, was scheinbar dafür vorgesehen ist das Projekt selber als Webserver laufen zu lassen, was sich nicht mit React vertragen würde. Auch soll es als Library funktionieren, hier gab es bislang aber immer Seitens von Typescript Build-Fehler.

Auch ist unklar, ob man nur Content in Form von Textblöcken oder bereits existierenden Markdown-Inhalten angeben kann (die dann mit <section> Tags angereichert werden

Arbeitsschritte

Elscha commented 5 months ago

Dublikat: #138