Duet Web Control Plug-in Development Template
-
I’m working on an updated Webcam plugin for the Raspberry Pi camera, and I’m new to the Vue framework (I’ve mostly worked in Angular). I took a stab at the update yesterday and think I’ve mostly got the hang of it, but it got me thinking - why not create an empty ‘template’ plugin with some good comments to help those who haven’t used the vue framework before? I think it would help pull more people to contribute who have other web experience.
Also, on a side note, I’d recommend that the localization settings be migrated to the individual plugins to help them be self-contained. Updating a single localization file for every plugin language isn’t very practical. Is there some automation of the localization?
-
@TLAS said in Duet Web Control Plug-in Development Template:
I took a stab at the update yesterday and think I’ve mostly got the hang of it, but it got me thinking - why not create an empty ‘template’ plugin with some good comments to help those who haven’t used the vue framework before? I think it would help pull more people to contribute who have other web experience.
This sounds very useful for someone like me! I can usually get something working if I have something to build off.
-
This will follow as part of v3.3 because that version will support plugins on the Pi too (Duet 3 + SBC). Future plugins should indeed provide their own localization but for built-in plugins it doesn't make much sense to have two i18n providers.
If you can't wait, see here for a preliminary template and docs. To make a new plugin, develop it as a built-in plugin (like the Heightmap for example) with DWC 3.2 and when it's ready build DWC using
npm run build
. Then take the new JS chunk of your plugin (and other resources) from the dist directory and put everything into the www directory. -
@chrishamm can you point me which programming languages supported for third party plugins, thanks.
-
@egauss For the DuetWebControl you use Javascript with Vue, and for the SBC(Raspberry) you use C#. Duet provides DuetAPI and DuetAPIClient nuget packages, which you can use to develop the SBC plugin.