264 lines
5.8 KiB
HTML
264 lines
5.8 KiB
HTML
<!doctype html>
|
||
<html lang="en">
|
||
<head>
|
||
<meta charset="UTF-8" />
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||
<link rel="preconnect" href="https://fonts.googleapis.com" />
|
||
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
|
||
<link
|
||
href="https://fonts.googleapis.com/css2?family=Recursive:slnt,wght,CASL,CRSV,MONO@-15..0,300..1000,0..1,0..1,0..1&display=swap"
|
||
rel="stylesheet"
|
||
/>
|
||
<title>Folk Canvas</title>
|
||
<style>
|
||
html {
|
||
height: 100%;
|
||
background: #f5f5f5;
|
||
}
|
||
|
||
body {
|
||
margin: 0;
|
||
min-height: 100%;
|
||
}
|
||
|
||
folk-sand {
|
||
position: fixed;
|
||
top: 0;
|
||
left: 0;
|
||
width: 100%;
|
||
height: 100%;
|
||
}
|
||
|
||
main {
|
||
position: relative;
|
||
font-family: 'Recursive', Courier, monospace;
|
||
font-variation-settings:
|
||
'slnt' 0,
|
||
'wght' 400,
|
||
'CASL' 1,
|
||
'CRSV' 0,
|
||
'MONO' 0;
|
||
max-width: 800px;
|
||
margin: 20px auto;
|
||
padding: 20px;
|
||
border-radius: 2px;
|
||
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
|
||
background: rgba(255, 255, 255, 0.9);
|
||
}
|
||
|
||
h1 {
|
||
margin: 0;
|
||
margin-bottom: 1em;
|
||
text-align: center;
|
||
font-variation-settings:
|
||
'CASL' 0,
|
||
'MONO' 1;
|
||
}
|
||
|
||
h2 {
|
||
font-size: 1.2em;
|
||
font-weight: 800;
|
||
margin: 1em 0 0;
|
||
font-variation-settings: 'wght' 800;
|
||
}
|
||
|
||
ul {
|
||
list-style-type: none;
|
||
line-height: 1.8;
|
||
padding-left: 0;
|
||
margin: 0;
|
||
}
|
||
|
||
li {
|
||
display: grid;
|
||
grid-template-columns: 2em 1fr;
|
||
padding-left: 0;
|
||
text-indent: 0;
|
||
}
|
||
|
||
li::before {
|
||
content: '➔';
|
||
justify-self: center;
|
||
}
|
||
|
||
#questions li::before {
|
||
content: attr(data-symbol);
|
||
}
|
||
|
||
a {
|
||
color: #22282f;
|
||
text-decoration: none;
|
||
}
|
||
|
||
a:hover {
|
||
text-decoration: underline;
|
||
}
|
||
|
||
#questions {
|
||
font-size: 0.9rem;
|
||
font-variation-settings: 'slnt' 1;
|
||
margin-bottom: 2rem;
|
||
}
|
||
|
||
#disclaimer {
|
||
font-size: 0.75rem;
|
||
font-style: italic;
|
||
}
|
||
</style>
|
||
<script type="module">
|
||
import '@labs/standalone/folk-sand.ts';
|
||
|
||
const alchemicalSymbols = [
|
||
'🜁',
|
||
'🜂',
|
||
'🜃',
|
||
'🜄',
|
||
'🜅',
|
||
'🜆',
|
||
'🜇',
|
||
'🜈',
|
||
'🜉',
|
||
'🜊',
|
||
'🜋',
|
||
'🜌',
|
||
'🜍',
|
||
'🜎',
|
||
'🜏',
|
||
'🜐',
|
||
'🜑',
|
||
'🜒',
|
||
'🜓',
|
||
'🜔',
|
||
'🜕',
|
||
'🜖',
|
||
'🜗',
|
||
'🜘',
|
||
'🜙',
|
||
'🜚',
|
||
'🜛',
|
||
'🜜',
|
||
'🜝',
|
||
'🜞',
|
||
'🜟',
|
||
'🜠',
|
||
'🜡',
|
||
'🜢',
|
||
'🜣',
|
||
'🜤',
|
||
'🜥',
|
||
'🜦',
|
||
'🜧',
|
||
'🜨',
|
||
'🜩',
|
||
'🜪',
|
||
'🜫',
|
||
'🜬',
|
||
'🜭',
|
||
'🜮',
|
||
'🜯',
|
||
'🜰',
|
||
'🜱',
|
||
'🜲',
|
||
'🜳',
|
||
'🜴',
|
||
'🜵',
|
||
'🜶',
|
||
'🜸',
|
||
'🜹',
|
||
'🜺',
|
||
'🜻',
|
||
'🜼',
|
||
'🜾',
|
||
'🜿',
|
||
'🝀',
|
||
'🝁',
|
||
'🝂',
|
||
'🝃',
|
||
'🝄',
|
||
'🝅',
|
||
'🝆',
|
||
'🝈',
|
||
'🝉',
|
||
'🝊',
|
||
'🝋',
|
||
'🝌',
|
||
'🝍',
|
||
'🝎',
|
||
'🝏',
|
||
'🝐',
|
||
'🝑',
|
||
'🝒',
|
||
'🝓',
|
||
'🝔',
|
||
'🝕',
|
||
'🝖',
|
||
'🝗',
|
||
'🝘',
|
||
'🝙',
|
||
'🝚',
|
||
'🝛',
|
||
'🝜',
|
||
'🝝',
|
||
'🝞',
|
||
'🝟',
|
||
'🝠',
|
||
'🝡',
|
||
'🝢',
|
||
'🝣',
|
||
'🝤',
|
||
'🝥',
|
||
'🝦',
|
||
'🝧',
|
||
'🝩',
|
||
'🝪',
|
||
'🝬',
|
||
'🝭',
|
||
'🝮',
|
||
'🝯',
|
||
'🝰',
|
||
'🝲',
|
||
'🝳',
|
||
];
|
||
|
||
document.addEventListener('DOMContentLoaded', () => {
|
||
const questionItems = document.querySelectorAll('#questions li');
|
||
questionItems.forEach((li) => {
|
||
const randomSymbol = alchemicalSymbols[Math.floor(Math.random() * alchemicalSymbols.length)];
|
||
li.setAttribute('data-symbol', randomSymbol);
|
||
});
|
||
});
|
||
</script>
|
||
</head>
|
||
<body>
|
||
<folk-sand initial-sand="0"></folk-sand>
|
||
<main>
|
||
<h1> Folk Canvas [<a href="https://github.com/folk-canvas/folk-canvas">Github</a>] </h1>
|
||
<ul id="questions">
|
||
<li>How do we make the web feel more alive and less rigid and closed off?</li>
|
||
<li>How can we more easily compose web pages and their data together?</li>
|
||
<li>How seamlessly can we turn an HTML document into a spatial canvas and visa versa?</li>
|
||
<li>What would it look like if the browser had primitives for building spatial canvases?</li>
|
||
<li>How can we annotate, re-layout, and program web pages we did not make or distribute?</li>
|
||
<li
|
||
>How can we compose visual programming interfaces, hypermedia, and LLMs that can be embedded into on any web
|
||
page?</li
|
||
>
|
||
<li
|
||
>How can we use spatial qualities like proximity and connection as a communication channel for hypermedia and
|
||
websites to communicate with each other?</li
|
||
>
|
||
</ul>
|
||
|
||
<h2>Experiments from the lab</h2>
|
||
<p id="disclaimer">
|
||
These experiments (like this page) are very raw, intended to poke at new primitives and ideas. Make sure to
|
||
checkout the dev tools, all of these are just authored in HTML!
|
||
</p>
|
||
|
||
<ul id="links">
|
||
{{ LINKS }}
|
||
</ul>
|
||
</main>
|
||
</body>
|
||
</html>
|