How would you re-envision the App Inventor projects explorer? (GSoC project user feedback)

Hi all!

I'm Vishwas, and I'll be working on modernising the App Inventor projects explorer as part of my Google Summer of Code 2021 project!

What my project is about

My project mainly entails revamping the projects view by easing some of the current bottlenecks users face when navigating through their (often many) projects. On the technical side of things, my work will involve writing a new projects explorer that users can opt into, one that will provide additional features and shortcuts for ease-of-use.

You can find the full proposal here. Feel free to leave a comment or post here; I'd love to get feedback from you!

What to consider when giving feedback

I will be working on a new interface for the projects explorer that will include shortcuts for commonly used project actions (like export, download, etc.) and greater support for project folders. Your thoughts and opinions on what the design for these UI interactions should look like will greatly help me put together mock-ups and wireframes.

  • What are some current bottlenecks and pain-points when navigating your projects? (i.e.; is it hard to find what you're looking for? does performing a particular action take more clicks than you think are necessary?)

  • How easy do you find it to use features offered in the explorer? (say, importing projects via drag-and-drop, using the trash functionality, etc.)

  • What additional features do you think would make it easier to handle all your projects at once?

Next steps

Based on your feedback, I will be able to start working on user-facing designs and the technologies that will have to be used to implement the project. While some of these have already been discussed in the project proposal linked above, a lot of it is still open to debate! Your opinions and thoughts will greatly help in prioritising and shaping the features that will be implemented in the new projects view.

Thank you for taking the time to participate in the discussion!

  • folders would be nice to be able to sort projects,
  • you could improve the export of many projects at once, now there is such a function, but it does not work with too many projects,
  • make it possible to rename the project, now you have to copy the project and give a new name,
  • projects deleted to trash should not conflict with other projects, now when we delete project x to trash, we won't create a new project named x,
  • the possibility of changing the name of the project during import and automatic replacement of the space with an underscore, currently, when we have eg () in the name, the project will not be loaded, you must first rename the file and then load the project again.

This looks like a massive project. Good luck with this. I will be happy to test any progress you make.

I read your paper and it is clear what you try to achieve. What i think would be great is if you could implement Unchive into the projects page. From a teachers point of view it would be great to see all blocks and assets and summary of the project. Even for a developer it could be easier to see the content of the project and then decide if he wants to load it.

Maybe when the GSOC is ready you could do this.


Thanks for the feedback @Patryk_F and @Peter!

Based on your inputs and requirements from the team, I've formulated a design document that outlines a few approaches to the design, the best of which will be implemented. As to which one is the best, I'd be grateful to hear from everyone here and come to the most optimal design solution.

The design document can be found here:

Feedback is welcome, appreciated, and encouraged! Feel free to comment in the doc or respond here.

Thanks and cheers!


Perhaps a → Search function can also be built in so that certain blocks (text) can be found more easily than is possible using a browser search:


Browser search


Thanks for the feedback @Anke!

From what I understand, this might be slightly out of the scope of my GSoC project as I will be primarily dealing with the projects explorer and not the designer/blockly editor itself :sweat_smile:. Nevertheless, it's a valuable suggestion and I'm sure this will be looked into by the team or other external contributors!

While we're on the topic of search, perhaps it would be a good idea to include an option to search projects from the explorer. Ideally, this would be placed in the project list header; preferably as a textbox.

What are your thoughts on this?


I think a browser search option might be a good idea for the Project Explorer too.

Vishwas's project scope is only for the project explorer, but it's part of a broader effort to refactor the user interface, so the suggestion for the blocks editor is noted.


Hmm, I'm not sure if projects in collapsed sub-folders will be visible to the browser's search function, and if so, how the user would bring focus to them. I'll take a look and get back here with additional context :smile:

1 Like

Fair enough. Educators in particular can end up with a lot of projects in their explorer. If browser search is enough, that's fine.

1 Like

Yes, that would be helpful too.


I like the folders-in-place option. It is very recognizable to users.

This would really be handy.


I (and I know that many people feel the same way), for example, often have to replace several components with extensions or vice versa. This will require adaptations in dozens of places. So it would be very helpful if you could find these places (blocks) directly without searching through the entire project (~ 5000 - 10000 blocks) manually.

(Note: If you remove the components / extensions from the Designer beforehand, the whole project becomes unusable / broken, as countless blocks are thrown out and can no longer be assigned.)

I realize that this is not the actual topic of your project, but I wanted to draw attention to it at this point.

Maybe this can be implemented elsewhere.


Hello again!

I've been working on a document that outlines what project folders will look like once implemented. This doc leans more towards the technical side of things, but I'd like to hear from all of you regardless of your experience with these technologies :smile:

Feel free to leave comments here or in the doc

Thank you for taking time out to share feedback!