Skip to content

Commit

Permalink
Deploy preview for PR 203 🛫
Browse files Browse the repository at this point in the history
  • Loading branch information
Tzal3x committed Jan 15, 2025
1 parent 040c2ee commit 701325e
Show file tree
Hide file tree
Showing 4 changed files with 76 additions and 44 deletions.
58 changes: 37 additions & 21 deletions pr-preview/pr-203/print.html
Original file line number Diff line number Diff line change
Expand Up @@ -3348,8 +3348,23 @@ <h2 id="there-is-a-maximum-redirect-depth"><a class="header" href="#there-is-a-m
does not result in an infinite loading loop.</p>
<p>Different portals can set this limit as they desire. The limit for the portal hosted at
<a href="https://walrus.site">https://walrus.site</a> has a maximum redirect depth of 3.</p>
<h2 id="service-workers-are-not-available"><a class="header" href="#service-workers-are-not-available">Service workers are not available</a></h2>
<p>Walrus Sites leverage service workers in the clients' browsers to perform essential operations:</p>
<h2 id="service-worker-portal-limitations"><a class="header" href="#service-worker-portal-limitations">Service-worker portal limitations</a></h2>
<p>The following limitations apply to portals based on service workers:</p>
<div id="admonition-warning" class="admonition admonish-warning" role="note" aria-labelledby="admonition-warning-title">
<div class="admonition-title">
<div id="admonition-warning-title">
<p>Warning</p>
</div>
<a class="admonition-anchor-link" href="walrus-sites/restrictions.html#admonition-warning"></a>
</div>
<div>
<p>This limitation <strong>only applies to portal based on service workers</strong>. If you need to support
this feature, you should use a server-side portal.</p>
</div>
</div>
<h3 id="service-worker-portals-cant-serve-sites-based-on-service-workers"><a class="header" href="#service-worker-portals-cant-serve-sites-based-on-service-workers">Service-worker portals, can't serve sites based on service workers</a></h3>
<p>Service-worker portals leverage service workers in the clients' browsers to perform essential
operations:</p>
<ol>
<li>reading the site metadata from Sui;</li>
<li>fetching the page content from Walrus; and</li>
Expand All @@ -3358,41 +3373,42 @@ <h2 id="service-workers-are-not-available"><a class="header" href="#service-work
<p>Therefore, a site deployed on Walrus Sites cannot use service workers itself. Installing a service
worker from within a Walrus Site will result in a dysfunctional site and a poor experience for the
user.</p>
<div id="admonition-note" class="admonition admonish-note" role="note" aria-labelledby="admonition-note-title">
<h3 id="ios-sui-mobile-wallets-do-not-work-with-the-service-worker-portal"><a class="header" href="#ios-sui-mobile-wallets-do-not-work-with-the-service-worker-portal">iOS Sui mobile wallets do not work with the service-worker portal</a></h3>
<div id="admonition-warning-1" class="admonition admonish-warning" role="note" aria-labelledby="admonition-warning-1-title">
<div class="admonition-title">
<div id="admonition-note-title">
<p>Note</p>
<div id="admonition-warning-1-title">
<p>Warning</p>
</div>
<a class="admonition-anchor-link" href="walrus-sites/restrictions.html#admonition-note"></a>
<a class="admonition-anchor-link" href="walrus-sites/restrictions.html#admonition-warning-1"></a>
</div>
<div>
<p>This limitation only applies to portal based on service workers. A web portal will not
have this limitation.</p>
<p>This limitation <strong>only applies to portal based on service workers</strong>. If you need to support
this feature, you should use a server-side portal.</p>
</div>
</div>
<h2 id="ios-sui-mobile-wallets-do-not-work-with-the-service-worker-portal"><a class="header" href="#ios-sui-mobile-wallets-do-not-work-with-the-service-worker-portal">iOS Sui mobile wallets do not work with the service-worker portal</a></h2>
<p>Service workers cannot be loaded inside an in-app browser on iOS, because of a limitation of the
WebKit engine. As a consequence, Walrus Sites cannot be used within Sui-compatible wallet apps on
iOS. Therefore, Sui wallets cannot currently be used on a service-worker portal on iOS. Note,
however, that <em>browsing</em> a Walrus Site is still possible on iOS through any browser.</p>
<p>To provide a seamless experience for iOS users (and other users on browsers that do not support
service workers), we implemented a redirect to a server-side portal (<a href="https://blob.store">https://blob.store</a>). Whenever
a user on an iOS wallet browses a Walrus Site, the redirect will automatically take them to the
<code>&lt;site_name&gt;.blob.store</code> server-side portal. This way, the user can still use the wallet.</p>
<div id="admonition-note-1" class="admonition admonish-note" role="note" aria-labelledby="admonition-note-1-title">
<p>Given that you decided to use a service-worker portal as your main point of access to your sites,
to provide a seamless experience for iOS users (and other users on browsers that do not support
service workers), it is recommended to redirect to a server-side portal (<a href="https://walrus.site">https://walrus.site</a>).
Whenever a user on an iOS wallet browses a Walrus Site, the redirect will automatically take them
to the <code>&lt;site_name&gt;.walrus.site</code> server-side portal. This way, the user can still use the wallet.</p>
<h3 id="service-worker-portals-do-not-support-progressive-web-apps-pwas"><a class="header" href="#service-worker-portals-do-not-support-progressive-web-apps-pwas">Service worker portals do not support progressive web apps (PWAs)</a></h3>
<div id="admonition-warning-2" class="admonition admonish-warning" role="note" aria-labelledby="admonition-warning-2-title">
<div class="admonition-title">
<div id="admonition-note-1-title">
<p>Note</p>
<div id="admonition-warning-2-title">
<p>Warning</p>
</div>
<a class="admonition-anchor-link" href="walrus-sites/restrictions.html#admonition-note-1"></a>
<a class="admonition-anchor-link" href="walrus-sites/restrictions.html#admonition-warning-2"></a>
</div>
<div>
<p>This limitation only applies to portals based on service workers. A web portal will not
have this limitation.</p>
<p>This limitation <strong>only applies to portal based on service workers</strong>. If you need to support
this feature, you should use a server-side portal.</p>
</div>
</div>
<h2 id="no-support-for-progressive-web-apps-pwas"><a class="header" href="#no-support-for-progressive-web-apps-pwas">No support for progressive web apps (PWAs)</a></h2>
<p>With the current design, Walrus Sites cannot be used for progressive web apps (PWAs).</p>
<p>With the current design, service-worker portals cannot be used for progressive web apps (PWAs).</p>
<p>Two characteristics of the service-worker portal prevent support for PWAs:</p>
<ul>
<li>Since the service worker needs to be registered for the page to work, the PWA's manifest file
Expand Down
2 changes: 1 addition & 1 deletion pr-preview/pr-203/searchindex.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion pr-preview/pr-203/searchindex.json

Large diffs are not rendered by default.

58 changes: 37 additions & 21 deletions pr-preview/pr-203/walrus-sites/restrictions.html
Original file line number Diff line number Diff line change
Expand Up @@ -243,8 +243,23 @@ <h2 id="there-is-a-maximum-redirect-depth"><a class="header" href="#there-is-a-m
does not result in an infinite loading loop.</p>
<p>Different portals can set this limit as they desire. The limit for the portal hosted at
<a href="https://walrus.site">https://walrus.site</a> has a maximum redirect depth of 3.</p>
<h2 id="service-workers-are-not-available"><a class="header" href="#service-workers-are-not-available">Service workers are not available</a></h2>
<p>Walrus Sites leverage service workers in the clients' browsers to perform essential operations:</p>
<h2 id="service-worker-portal-limitations"><a class="header" href="#service-worker-portal-limitations">Service-worker portal limitations</a></h2>
<p>The following limitations apply to portals based on service workers:</p>
<div id="admonition-warning" class="admonition admonish-warning" role="note" aria-labelledby="admonition-warning-title">
<div class="admonition-title">
<div id="admonition-warning-title">
<p>Warning</p>
</div>
<a class="admonition-anchor-link" href="#admonition-warning"></a>
</div>
<div>
<p>This limitation <strong>only applies to portal based on service workers</strong>. If you need to support
this feature, you should use a server-side portal.</p>
</div>
</div>
<h3 id="service-worker-portals-cant-serve-sites-based-on-service-workers"><a class="header" href="#service-worker-portals-cant-serve-sites-based-on-service-workers">Service-worker portals, can't serve sites based on service workers</a></h3>
<p>Service-worker portals leverage service workers in the clients' browsers to perform essential
operations:</p>
<ol>
<li>reading the site metadata from Sui;</li>
<li>fetching the page content from Walrus; and</li>
Expand All @@ -253,41 +268,42 @@ <h2 id="service-workers-are-not-available"><a class="header" href="#service-work
<p>Therefore, a site deployed on Walrus Sites cannot use service workers itself. Installing a service
worker from within a Walrus Site will result in a dysfunctional site and a poor experience for the
user.</p>
<div id="admonition-note" class="admonition admonish-note" role="note" aria-labelledby="admonition-note-title">
<h3 id="ios-sui-mobile-wallets-do-not-work-with-the-service-worker-portal"><a class="header" href="#ios-sui-mobile-wallets-do-not-work-with-the-service-worker-portal">iOS Sui mobile wallets do not work with the service-worker portal</a></h3>
<div id="admonition-warning-1" class="admonition admonish-warning" role="note" aria-labelledby="admonition-warning-1-title">
<div class="admonition-title">
<div id="admonition-note-title">
<p>Note</p>
<div id="admonition-warning-1-title">
<p>Warning</p>
</div>
<a class="admonition-anchor-link" href="#admonition-note"></a>
<a class="admonition-anchor-link" href="#admonition-warning-1"></a>
</div>
<div>
<p>This limitation only applies to portal based on service workers. A web portal will not
have this limitation.</p>
<p>This limitation <strong>only applies to portal based on service workers</strong>. If you need to support
this feature, you should use a server-side portal.</p>
</div>
</div>
<h2 id="ios-sui-mobile-wallets-do-not-work-with-the-service-worker-portal"><a class="header" href="#ios-sui-mobile-wallets-do-not-work-with-the-service-worker-portal">iOS Sui mobile wallets do not work with the service-worker portal</a></h2>
<p>Service workers cannot be loaded inside an in-app browser on iOS, because of a limitation of the
WebKit engine. As a consequence, Walrus Sites cannot be used within Sui-compatible wallet apps on
iOS. Therefore, Sui wallets cannot currently be used on a service-worker portal on iOS. Note,
however, that <em>browsing</em> a Walrus Site is still possible on iOS through any browser.</p>
<p>To provide a seamless experience for iOS users (and other users on browsers that do not support
service workers), we implemented a redirect to a server-side portal (<a href="https://blob.store">https://blob.store</a>). Whenever
a user on an iOS wallet browses a Walrus Site, the redirect will automatically take them to the
<code>&lt;site_name&gt;.blob.store</code> server-side portal. This way, the user can still use the wallet.</p>
<div id="admonition-note-1" class="admonition admonish-note" role="note" aria-labelledby="admonition-note-1-title">
<p>Given that you decided to use a service-worker portal as your main point of access to your sites,
to provide a seamless experience for iOS users (and other users on browsers that do not support
service workers), it is recommended to redirect to a server-side portal (<a href="https://walrus.site">https://walrus.site</a>).
Whenever a user on an iOS wallet browses a Walrus Site, the redirect will automatically take them
to the <code>&lt;site_name&gt;.walrus.site</code> server-side portal. This way, the user can still use the wallet.</p>
<h3 id="service-worker-portals-do-not-support-progressive-web-apps-pwas"><a class="header" href="#service-worker-portals-do-not-support-progressive-web-apps-pwas">Service worker portals do not support progressive web apps (PWAs)</a></h3>
<div id="admonition-warning-2" class="admonition admonish-warning" role="note" aria-labelledby="admonition-warning-2-title">
<div class="admonition-title">
<div id="admonition-note-1-title">
<p>Note</p>
<div id="admonition-warning-2-title">
<p>Warning</p>
</div>
<a class="admonition-anchor-link" href="#admonition-note-1"></a>
<a class="admonition-anchor-link" href="#admonition-warning-2"></a>
</div>
<div>
<p>This limitation only applies to portals based on service workers. A web portal will not
have this limitation.</p>
<p>This limitation <strong>only applies to portal based on service workers</strong>. If you need to support
this feature, you should use a server-side portal.</p>
</div>
</div>
<h2 id="no-support-for-progressive-web-apps-pwas"><a class="header" href="#no-support-for-progressive-web-apps-pwas">No support for progressive web apps (PWAs)</a></h2>
<p>With the current design, Walrus Sites cannot be used for progressive web apps (PWAs).</p>
<p>With the current design, service-worker portals cannot be used for progressive web apps (PWAs).</p>
<p>Two characteristics of the service-worker portal prevent support for PWAs:</p>
<ul>
<li>Since the service worker needs to be registered for the page to work, the PWA's manifest file
Expand Down

0 comments on commit 701325e

Please sign in to comment.