Feedback for GSoC '22 proposal on "Implementing auto attach aia file in App Inventor Community"

Hello everyone,
I am looking forward to participate in GSoC this year. The basic abstract of problem i am willing to solve is:

While developing apps using MIT App Inventor, students often need help. For this there is this community where students can reach out for help. While the community is very helpful and makes development easier, it would be even more convenient and time-saving to have a user interface in the app inventor website itself from which users can directly ask questions in the community and project files can be automatically uploaded along with that.
this is the feature I want to implement and I have created a proposal for that. It would be very much helpful to get feedback from powerusers and all other community members for the proposal.

Here is the link of proposal

Thank you

5 Likes

Nice proposal. I think it will be a great addition for beginners to the current App Inventor system. Have a nice summer!

2 Likes

Nice idea. But only posting an aia makes it easier for the students but not for the users who want to help. They have to download and import the aia to see the blocks. So being able to look at the blocks would also be a great idea.

Would it be possible to integrate Unchive in your proposal? This way it would be very easy to open the aia in Unchive and see a lot of information about the blocks.

https://unchive.kodular.io/

I left some other comments in your Google Doc.

5 Likes

I agree having unchive will greatly help users quickly view the blocks and properties. I installed the repo and saw the code. Most of the things are already there. Probably need to enable CORS policy and it should work. I think it won't be much time-consuming to integrate this in project. I will add unchive integration in proposal as well.
Thanks a lot for your taking time reading it

1 Like

Hello ,

This feature-proposal is great. Would it be feasible to reduce redundant posts, since the user posting won't be aware of similar posts or errors which would already have been addressed previously. To reduce redundant posts or duplicate/similar posts.

Does it make it feasible to introduce a sub-feature where users may see the similar response in real time, just as we have in Ajax. That may be looking into a storage to know existing posts that are there within the forum Magnifier Glass to check if this problem is already solved or having satisfactory responses.

2 Likes

One more thing, shouldn't it be bidirectional or it is unidirectional only - from App Inventor to Fourm, or does it make sense to let user be seated at App Inventor Websit and you new feature will act as a fasade between user and communit forurm.

The system should also include a drop down containing similar issues, just like in Stack Overflow, they automatically detect whether similar questions were asked before. Also, there should also be a "How to ask a question" guideline, just like in this community.

I think after uploading the question, a better option would be to open it in a new tab where user can have control over complete UI provided by discourse

1 Like

@Gordon_Lu are you referring to this post Welcome to the MIT App Inventor Community?

No, this post.

There should also be text stating "Have you read our guidelines?" before they post.

Thanks for sharing link

:+1: will post an update UI in proposal. Thanks

1 Like

hey @Peter,
How i am currently thinking of adding unchive is by adding a link at the end of the question. for example
let's suppose the aia file attached will be at https://community.appinventor.mit.edu/somepath/project.aia then at the end of question I will put a link like this https://unchive.kodular.io/?url=https://community.appinventor.mit.edu/somepath/project.aia so when the user clicks on that link it will be redirected to unchive and project will be directly opened in unchive. and 1 more important thing is instead of unchive.kodular.io we might need to host our own instance since kodular is blocking aia files hosted on different origin (url),

does it sound good?
Thanks :slight_smile:

It might be better to just use a repo link to open the project in App Inventor instead.

PS: You can drag links to AIAs from this forum into your project list in App Inventor and it should load the project.

Didn't knew about dragging links. Thanks of letting us know :+1:

Drag this aia link from here

Edit: I deleted the earlier sequence since that was causing some unclarity about what is happening. Link is to be drop over project list,

Then it get imported to the project space

1 Like

Actually, I'm surprised what you did worked but maybe older me is smarter than I thought. There are 4 drop areas in App Inventor that have been implemented:

  1. Project list - Drag and drop AIA files to the project list to import them into your account. You can also drag URLs to AIAs on servers that allow CORS requests from ai2.appinventor.mit.edu (such as this community or GitHub Pages).
  2. Extensions panel - Import .aix extension files into the palette using the same technique (either file or CORS-friendly URL)
  3. Asset panel - Add assets to the project by dragging and dropping them from your file system (I think URLs may also work here)
  4. Blocks workspace - Drag and drop block code PNGs exported using the right click menu to add those blocks to the project.

In theory those streams shouldn't cross and say, App Inventor won't let you import a project as an asset using this technique, but IIRC I may have set it up so that it routes the import to the right spot (except dropping anything into the project list since a project isn't considered open at that point).

1 Like

Yes, I did this way only, but once I was done with importing the project and want to share the screen, I mistakenly taken the image of droping the file in the imported project block area. Thanks

Idea is cool. But I'm not sure if allowing to create community posts directly in App Inventor builder is good for User Experience. Because you might need to create a full rich-editor like we have in Discourse. (Quoting another post, selecting category, inserting time, local and cloud drafts, using markdown etc.) So when users visit the community, they can see their posts looks exactly like what it looks on "Create community post" dialog on builder. Also, after creating the post, how users will read other replies? Will they need to visit the community?

So, instead of adding this feature to builder, I think this can be added to community directly with a Discourse plugin. (It can be also make things easier, maybe?) So you won't need to deal with creating a new account because both Discourse and App Inventor already manages your login credentials, you may just need to add a new endpoint on App Inventor side that returns projects with community login. (Of course, users will need to link their community accounts with builder accounts, as their email addresses may not be the same on both.)

The plugin can add a new option to the editor toolbar for picking a project to send as attachment (and some categories can have enforcement like at least one project should be selected, etc.)

Example:

3 Likes

Hi thanks for having a look at proposal

In GWT there is already a class called HTMLEditor which allows markdown editing. link to it HtmlEditor

another one (official package) RichTextArea (GWT Javadoc)

As of now the idea is to provide a link to the question once the question is published.

I like the idea of the plugin but the biggest limitation is authentication using app inventor. I know a way to authenticate community account to app inventor but for vice versa i think it would take lot of server side work on app inventor and also need to ask powerusers about adding server side code.

1 Like

by the way is the screenshot attached of real plugin or is it a mock?