Open a-abdulbaha opened 2 weeks ago
What are some good files to look at to get started on this issue?
First, take a look at Lingua Libre's Record Wizard in action: https://lingualibre.org/wiki/Special:RecordWizard. Here's the repository: https://github.com/lingua-libre/RecordWizard/tree/master. It seems to be mostly Javascript & PHP. The README states that MediaWiki is required for it to work, so the task would be removing that requirement & porting it to PalWeb. Note that the Upload2Commons
extension is used to upload the finished files to Wikimedia Commons. Instead of that, the files should be uploaded to PalWeb's remote storage server (a DigitalOcean "Droplet"). Another thing is that the Record Wizard has a few options for retrieving the word lists to be recorded. Instead of that, the PalWeb application itself should automatically produce a queue of terms to record based on which terms don't already have an audio file. I haven't really dived into the Record Wizard repository, but among my first questions would be where this mini-application would belong within the PalWeb application; then the job would be stripping down all the unnecessary MediaWiki-specific bits & plugging the rest into PalWeb.
OK, I downloaded the Record Wizard files & brought them into the application. I started looking at everything & removing the unnecessary parts. No PHP or JS packages had to be installed in the end; the lingua-recorder
package files were brought directly into the application to make them directly editable. From here, what will need to be done is move the PHP stuff to the app
directory — probably the RecordWizardController
— & the rest into resources/js
. Weirdly, there are no actual .vue
files; maybe that's to do with the fact that the Record Wizard is built off of Vue 2.0, which will need to be adapted to Vue 3.0. Basically, the next task is getting the Wizard to render. After that, we can see about how the word lists are passed onto the Wizard & how the files are uploaded, etc.
Port Lingua Libre's Record Wizard into PalWeb