Thanks a lot for the help throughout this nice project.
1. I'm not sure. I'm not very fond of big packages in general (think about R "car" that you need to install half CRAN just to do an anova), but I rather like when people can cherry-pick the functions that they need. I also see your point, so, maybe we can offer them as separated modules and as a big module, so users can choose if they need only one of them or the whole package. At the end, the full gamlj should contain four modules.
I's need some assistance to make one module out of many modules, because I do not know how to proceed.
2. fixed, it was in the develop branch
3. At the moment no difference, but here is the rationale: The module needs factors to be defined at init() phase. If the factors has no levels, it gets the deviation contrasts which is the standard for the Type III SS based tests. However, if the users defines a custom contrasts in the data tab (I guess in future release of jamovi this will be possible), the module will use the levels it finds already in the contrast. This will give users more freedom, I guess.
4. fixed using your option a. BTW how do you allow nominal text variables? At the moment I have "permit: nominal and ordinal", but in one of your examples I found "nominal text variables" that did not pass the permit restriction.
5. I like the parenthesis suggestion, I fixed that. A for the dummies name I think that users coming from R will like them, and I also like that people get use to the fact that contrasts are actually variables that decompose the categorical variables. The display of both the dummies names and the contrast definitions is a good way , IMHP, to help people learning the basics of linear models. Furthermore, dummies names make a reference to the adjacent labels, saying which variable gropus the labels refer to. They also are a reference for the simple effects tables and other tables (in mixed and future modules) in which contrasts definitions will be awkward to show.
Finally, I fixed the init(). (this init() thing is a bit a pain in arse, but I agree the rendering is much better.
6. fixed by allowing the results (same strategy of the ANCOVA module) but put forward a warning in which aliasing is (very briefly) explained. I did the same for the mixed module where things a bit weired when it comes to aliases, but it should work in the majority of the aliased designs.
7.1 7.2 They now work (there were small bugs that were fixed along development). Btw, I notice that to make the examples work I should re-install the module after the .omw file is opened. Is that by design?
7.3 The model in your example would have worked, but the set-up was incomplete. As in SPSS mixed, one has to specify the clustering variable(s) by assigning it to "clusters". I guess in your example the clustering variable was region. When one does that, one has to specify the random effect (at least one) in the "Random Effects" tab.
here is your example working
However, Mixed still needs a bit of work in the UI, defining the random components (the random effect panel). It works now, but it does not update in an intuitive way when the user put factors or covariate in and out the variable definition. For the rest, I updated the code following your suggestions on the GLM.
Thanks again, I'm loving this