shared/embeddable elements: functionality for sharing elements (or simply data) across websites. This would enable creating components on the web that live across multiple websites and can be changed from any of the locations. Similar to how an iframe allows a site to embed another site, this feature would enable fine-grained control over which piece of a website you want to embed from another
enables... website friendship lamps, interactive web rings, cross-domain social media
authentication: enabling authenticating who the current user is and authorizing what actions they are allowed to take from a custom set of possible permissions. This should work with or without the aid of a browser extension and should be possible and safe without requiring people to host their own servers, close-source their code, or manage a third-party account (this is required for the browser extension game).
enables... editing your website using playhtml, customizing actions for a group of friends, lightweight owner moderation
start to build up interpersonal networks across any page. what happens with these shared networks?
scheduling support: functionality to enable “cron-like” capabilities that happen on some specified interval. For example, I could specify that the lamp on my website should turn off at 8pm every night.
web components: support web components for common components, see PLAY(html) store.
enables... an ecosystem of components designed around communal web experiences
custom persistence: functionality to bring your own database that supports a wide range of options across developer-familiarity levels, from an S3 bucket to a google drive file to a coda table or airtable base.
(in the future) bring your own data: integrating with open data standards like AT Protocol and Activity Pub → can you sync your data to your Bluesky PDS?
enables... ownership of data and privacy, exporting playhtml data to other services
: an attribute that automatically syncs attributes of an element across all clients. This could make it easy to program your own communal experience without worrying about managing the communal state, as you can simply write it as if you were changing it normally.
this requires some safeguards like allow-listing which attributes should sync because it’s vulnerable to any changes from the browser dev tools, too.
eventing / wish-like API: automatically expose all DOM events so that from anywhere, you can write code to react to playhtml events.
Want to print your doc? This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (