microsoft / pxt-arcade

Arcade game editor based on Microsoft MakeCode
https://arcade.makecode.com
MIT License
477 stars 206 forks source link

Tutorials won't embed in websites #5661

Open kiki-lee opened 1 year ago

kiki-lee commented 1 year ago

Abhijith mentioned that only games have the option of being embedded right now, but we have a partner working with the Atlanta Hawks who are trying to embed their tutorial in the Hawks website so they can run a contest.

How soon can we get embeds working for tutorials?

(Their attempt at embedding Chase the Pizza) https://atlhawksdigital.com/projects/__current/dunk2.html

abchatra commented 1 year ago

Needs context. Why does the tutorial needs to be embedded? Can we have a workaround of launching in makecode?

abchatra commented 1 year ago

Adding the information on existing embed scenarios we support.

Read Only scenario for a shared game:

Widget scenario: In this scenario we allow embedding the entire editor as a widget. See the API here: https://github.com/microsoft/pxt/blob/master/pxteditor/editorcontroller.ts#L32 However restriction is the parent frame owns all the data and MakeCode behaves as a widget which shows simulator, toolbox & blocks or javascript. No data is sent to backend as parent frame is responsible for handling all the code. Microbit classroom uses this model.

There is no support for tutorial in the widget scenario yet.

kiki-lee commented 1 year ago

This particular partner has now decided to link off to our site due to the quick timeframe, but in general, people using tutorials as promotional tools want to bring people to their site, rather than ours. They want to have the added time on their webpage and avoid passing customers off to domains where they need to give the warning "You are now leaving our site..." etc.

I'm surprised we haven't hit this requirement yet, but I know for sure that at least one of our future partners plans to require that the learning takes place within the "safety" of their domain.

kiki-lee commented 1 year ago

Here's the recap of what we talked about today...

New Work/Capabilities to extend Widget scenario: Potentially allow them to show their own tutorials Button to bring them back to our main website - saving, sharing projects "Powered by MakeCode" branding