AIAs, Source Control & Contributing

We know AIA files contain .scm and .bky files, .scm is just kind-of-JSON but .bky files are formatted in Blockly XML, so it is not exactly human-readable. And this makes things hard to contribute together if these files (.scm, .bky...) put in a source control platform, like GitHub. Also, simply putting the .aia file won't work in "git diffs" (a git diff example) because it is just an archive file.

So my question is, does MIT have plans/ways for making things easier to contribute to a project without needing to loading the whole project in App Inventor every time? For example, editing a single block's text easily in a project file without having to search. This can be useful for open-source App Inventor projects, and for people who just want to read "the code" (including people who have never used App Inventor before)

3 Likes

There was a thesis in 2017 by Xinyue Deng. It is about collaborating together on an App Inventor project like you would do with a Google Document for instance.

2 Likes

It's an interesting idea but as you point out, App Inventor was not structured to support a team Project. It would, therefore, require a paradigm change to achieve.

Not to say it could not be done, but it's a lot of work on top of everything MIT already has in hand.

What people are doing as a team is working on logical parts of a Project's functionality and merging carefully named screens of their Projects into the final Project. This does of course mean there can be inefficiency, especially if the Project would be served better by using Virtual screens, but it works and collaboration can be fun.

2 Likes