# Editor.p5js.org present mode disappeared?

**URL:** <https://discourse.processing.org/t/editor-p5js-org-present-mode-disappeared/33495>\
**Category:** p5.js\
**Created:** [November 14, 2021, 2:11am UTC](https://discourse.processing.org/t/editor-p5js-org-present-mode-disappeared/33495 "2021-11-14T02:11:12Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![bakercp](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/bakercp/32/7785_2.png) [@bakercp](https://discourse.processing.org/u/bakercp)\
**Post date:** [November 14, 2021, 2:11am UTC](https://discourse.processing.org/t/editor-p5js-org-present-mode-disappeared/33495/1 "2021-11-14T02:11:12Z")

</div>

Hi there, I’m working with a student who is using the web bluetooth api in [https://editor.p5js.org](https://editor.p5js.org). Previously we got around iframe cross-origin security errors by running the sketch in full-screen present mode. Now it appears that the present link redirects to the “fullscreen” link and places the sketch within an iframe using a blob source making the present mode inaccessible. Is there a work around for this that would allow us to continue using the online editor or are we required to self host?

Thanks!

---

<div class="post-metadata">

**Author:** ![bakercp](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/bakercp/32/7785_2.png) [@bakercp](https://discourse.processing.org/u/bakercp)\
**Post date:** [November 14, 2021, 2:21am UTC](https://discourse.processing.org/t/editor-p5js-org-present-mode-disappeared/33495/2 "2021-11-14T02:21:12Z")

</div>

I just noted that present mode was just removed for good reason.

> **[Release v2.1.4 · processing/p5.js-web-editor](https://github.com/processing/p5.js-web-editor/releases/tag/v2.1.4)**
>
> What's Changed
> 
> Remove Present view to prevent phishing by @catarak in #1967
> 
> Full Changelog: v2.1.3...v2.1.4

Any workaround suggestions are still appreciated.

@kjhollen answered my question here. Sorry for the noise 🙂

> <https://github.com/processing/p5.js-web-editor/issues/1970#issuecomment-967382449>
>
> \<!--
> Hi there! If you are here to report a bug, or to discuss a feature (new or… existing), you can use the below template to get started quickly. Fill out all those parts which you're comfortable with, and delete the remaining ones.
> \--\>
> 
> \#### Nature of issue?
> 
> 
> 
> \- Found a bug
> 
> 
> Dear Sir, the future "Present" in the share menu in the online P5.js editor is no longer valid. my work uses this option is destroyed!
> 
> Please, tell me what is happening, shall I transfer to another editor?

---

<div class="post-metadata">

**Author:** ![KumuPaul](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/kumupaul/32/13072_2.png) [@KumuPaul](https://discourse.processing.org/u/KumuPaul)\
**Post date:** [November 14, 2021, 5:28am UTC](https://discourse.processing.org/t/editor-p5js-org-present-mode-disappeared/33495/3 "2021-11-14T05:28:19Z")

</div>

Wow, that’s sad and does not seem like a good solution to me. I do not understand the rationale of the decision makers in this case (_UPDATE: I hindsight and with more sober consideration I can see why something needed to be done quickly since some users were losing access to [p5js.org](http://p5js.org) because of alleged real world abuse, and at least temporarily taking down [preview.p5js.org](http://preview.p5js.org) may have been necessary_). This is pretty much the last nail in the [editor.p5js.org](http://editor.p5js.org) coffin for me. I suggest you use [OpenProcessing.org](http://OpenProcessing.org):

https://openprocessing.org/sketch/1165174/embed/?plusEmbedHash=NWEzMDU1MGZmMzAwNjhmMjhmODRlYmFhM2QxYmY4Mjc3MWE2NmI4NmRlNGYzMDg2YTEzYTdhYzgwYjgzMWI4NTIwY2IxNzkxNTFlNjg4OTBlOTYwMGUxMjJmYzQ4M2E4NmMyMjcxNjc3MTc1ODFkMWFkNWZiMzQxMjEzOTNlN2NYYzVHYVRWY3JOUGFXdlFYdm9HaG5OQ2JnejZyN2xNMkNHT1A2TEFuYTB0VEZWU1RpbkdVc3VUbklzZmNXMHZWZE03ODFZUy9iaHR5SjJ0OWJFdGdHdz09&plusEmbedTitle=true

---

<div class="post-metadata">

**Author:** ![KumuPaul](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/kumupaul/32/13072_2.png) [@KumuPaul](https://discourse.processing.org/u/KumuPaul)\
**Post date:** [November 14, 2021, 6:04am UTC](https://discourse.processing.org/t/editor-p5js-org-present-mode-disappeared/33495/4 "2021-11-14T06:04:37Z")

</div>

[Protest lodged](https://github.com/processing/p5.js-web-editor/issues/1971)

---

<div class="post-metadata">

**Author:** ![kjhollen](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/kjhollen/32/23_2.png) [@kjhollen](https://discourse.processing.org/u/kjhollen)\
**Post date:** [November 14, 2021, 5:32pm UTC](https://discourse.processing.org/t/editor-p5js-org-present-mode-disappeared/33495/5 "2021-11-14T17:32:28Z")

</div>

thanks for your kind understanding, @bakercp.

---

<div class="post-metadata">

**Author:** ![GoToLoop](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/gotoloop/32/86_2.png) [@GoToLoop](https://discourse.processing.org/u/GoToLoop)\
**Post date:** [November 14, 2021, 5:49pm UTC](https://discourse.processing.org/t/editor-p5js-org-present-mode-disappeared/33495/6 "2021-11-14T17:49:20Z")

</div>

> [@bakercp](#):
>
> Now it appears that the present link redirects to the “fullscreen” link and places the sketch within an iframe using a blob source making the present mode inaccessible.

Just checked some random example and its “present” link is indeed redirected to its corresponding “full” link:

- [404 Page Not Found - p5.js Web Editor](http://editor.p5js.org/p5/present/iRsBGsWQKw2)

And on that “full” link there’s an outer `<iframe>` tag:  
`<iframe title="sketch preview" src="https://preview.p5js.org" sandbox="allow-forms allow-modals allow-pointer-lock allow-popups allow-same-origin allow-scripts allow-top-navigation-by-user-activation allow-downloads" allow="accelerometer; ambient-light-sensor; autoplay; camera; encrypted-media; geolocation; gyroscope; hid; microphone; magnetometer; midi; payment; usb; serial; vr; xr-spatial-tracking" scrolling="auto" allowfullscreen="" frameborder="0" class="PreviewFrame__Frame-sc-1a6lcg6-0 hnmshZ"></iframe>`

Followed by an inner `<iframe>` which indeed loads a “blob” sketch link:  
`<iframe aria-label="Sketch Preview" role="main" frameborder="0" class="EmbedFrame__Frame-sc-1ubw1m0-0 jkcGdZ" src="blob:https://preview.p5js.org/53e1840f-43d9-4527-88a0-8243ca59026b"></iframe>`

> [@bakercp](#):
>
> Any workaround suggestions are still appreciated.

No workaround AFAIK, but you can switch to something else.

@KumuPaul has already vouched for [OpenProcessing.org](http://OpenProcessing.org).

Another p5js sketch hosting site is p5js.SketchPad.cc.

This is some online sketch I’ve got there:  
[http://p5js.SketchPad.cc/sp/pad/view/ro.CYuAGs4xyhzhKu/latest](http://p5js.SketchPad.cc/sp/pad/view/ro.CYuAGs4xyhzhKu/latest)

And if we have a peek on its `<iframe>` tag:  
`<iframe id="ifr" width="100%" height="100%" scrolling="no" style="border:1px solid #000000; background: url(/static/img/jun09/pad/connectingbar.gif) no-repeat center 60px;" src="http://p5js.processingtogether.com/sp/pad/iframe/ro.CYuAGs4xyhzhKu/rev.13?so=1&amp;autostart=0"></iframe> `

We can know the actual link which runs the sketch w/o any `<iframe>`:  
[p5js.ProcessingTogether.com/sp/pad/iframe/ro.CYuAGs4xyhzhKu/latest](http://p5js.ProcessingTogether.com/sp/pad/iframe/ro.CYuAGs4xyhzhKu/latest)

For a more generic JS hosting site you can try out [Glitch.com](http://Glitch.com):

Another online example I’ve got there:

> **[Glitch Code Editor ･ﾟ✧](https://glitch.com/edit/#!/blob-growth-p5js)**
>
> Simple, powerful, free tools to create and use millions of apps.

And likewise, peeking on its `<iframe>`:  
`<iframe allow="geolocation; microphone; camera; midi; vr; encrypted-media" sandbox="allow-scripts allow-modals allow-forms allow-same-origin" data-testid="app-preview-iframe" src="https://blob-growth-p5js.glitch.me/" title="Preview of blob-growth-p5js"></iframe>`

We discover its “iframe-less” link:  
[Blob-Growth-p5js.Glitch.me](http://Blob-Growth-p5js.Glitch.me)

Obviously the most complete option is putting a sketch on a [GitHub.com](http://GitHub.com) repo:  
[GitHub - GoToLoop/ML-Matrix-P5JS-Template: Sorta template to have types for browser-loaded libs.](http://GitHub.com/gotoloop/ML-Matrix-P5JS-Template/)

And then activate the “GitHub Pages” option, which allows us to run repo sketches by going to their corresponding [GitHub.io](http://GitHub.io) link:  
[GoToLoop.GitHub.io/ML-Matrix-P5JS-Template](http://GoToLoop.GitHub.io/ML-Matrix-P5JS-Template)

Besides full-fledged repos, GitHub also got much simpler “gists”:  
[Gist.GitHub.com/GoToLoop](http://Gist.GitHub.com/GoToLoop)

Gists don’t have “GitHub Pages”, but we can use [Bl.ocks.org](http://Bl.ocks.org) to run any sketch hosted there:  
[GoSubRoutine’s gists · GitHub](http://Bl.ocks.org/gosubroutine)

Here’s some Gist Bl.ocks example sketch I’ve got there:

> <https://gist.github.com/gosubroutine/a117ecb16a8b0f939a190f87d3a13267>

It’s also wrapped up by an `<iframe>` obvisouly:  
`<iframe sandbox="allow-popups allow-scripts allow-forms allow-same-origin" src="/GoSubRoutine/raw/a117ecb16a8b0f939a190f87d3a13267/de8f4ab2948159292114dfb1e1f282f1176d99cd/" marginwidth="0" marginheight="0" style="height:400px;" scrolling="no"></iframe>`

But a raw “iframe-less” option is available by clicking the “Open” button:  
[Bl.ocks.org/GoSubRoutine/raw/a117ecb16a8b0f939a190f87d3a13267](http://Bl.ocks.org/GoSubRoutine/raw/a117ecb16a8b0f939a190f87d3a13267)

Actually you can use any other generic JS hosting site to run p5js sketches online; and there are myriads of them!

---

<div class="post-metadata">

**Author:** ![kjhollen](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/kjhollen/32/23_2.png) [@kjhollen](https://discourse.processing.org/u/kjhollen)\
**Post date:** [November 15, 2021, 1:47am UTC](https://discourse.processing.org/t/editor-p5js-org-present-mode-disappeared/33495/7 "2021-11-15T01:47:10Z")

</div>

The language you have used in this post is not alignment with our code of conduct. Please be respectful of other members of our community.

---

<div class="post-metadata">

**Author:** ![KumuPaul](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.processing.org/kumupaul/32/13072_2.png) [@KumuPaul](https://discourse.processing.org/u/KumuPaul)\
**Post date:** [November 15, 2021, 7:03pm UTC](https://discourse.processing.org/t/editor-p5js-org-present-mode-disappeared/33495/8 "2021-11-15T19:03:55Z")

</div>

I would like to apologize for my negative insinuations directed a specific people in this matter. I still think the sequence of events and current state of affairs is not ideal. However I genuinely believe that everybody working on the site is doing their best and a good job. My remark was uncalled for. I am sorry.
