1const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/AuraGuestbook-CEPB82nA.js","assets/client-CUTvk0f7.js","assets/train-ice-6j0r5CQQ.js","assets/index-B8a2M02w.js","assets/preload-helper-BlTxHScW.js","assets/index-5-l88kjG.css","assets/AuraGuestbook-BqUd5yNR.css"])))=>i.map(i=>d[i]); 2import"./modulepreload-polyfill-B5Qt9EMX.js";import{j as e,r as i,R as F,a as G}from"./client-CUTvk0f7.js";import"./index-B8a2M02w.js";import{u as T,w as H,a as q,t as B,P as U}from"./train-ice-6j0r5CQQ.js";import{_ as V}from"./preload-helper-BlTxHScW.js";import{u as K,L as Y,a as Q,W as J}from"./useAccumulatedEvents-CsLDP_wA.js";import{L as X}from"./clickDefaults-Yw1BgyYC.js";import{u as Z}from"./useCursorTrails-BaXMFvdw.js";import{s as ee}from"./eventUtils-BzBD_l0W.js";import{u as se}from"./useLiveEvents-FNtQDf8X.js";import{W as ne}from"./config-Bjfj771K.js";import{L as I,i as L,C as A}from"./navigation-BD5FpRlu.js";import"./trailPrimitives-CHQyI8sc.js";import"./styleUtils-LkIgZh7T.js";const re="_pill_1tvvn_1",ae="_count_1tvvn_20",te="_dots_1tvvn_25",oe="_dotWrapper_1tvvn_31",ie="_youLabel_1tvvn_37",ce="_dot_1tvvn_25",le="_dotYou_1tvvn_56",de="_overflow_1tvvn_61",v={pill:re,count:ae,dots:te,dotWrapper:oe,youLabel:ie,dot:ce,dotYou:le,overflow:de},E=12;function me(){const{cursors:n}=T(),r=n.allColors;if(r.length===0)return null;const t=r.slice(0,E),m=r.length-E;return e.jsxs("div",{className:v.pill,children:[e.jsx("span",{className:v.count,children:r.length}),e.jsxs("div",{className:v.dots,children:[t.map((c,d)=>{const o=t.filter(a=>a===c).length>1?`${c}-${d}`:c;return e.jsxs("div",{className:v.dotWrapper,children:[d===0&&e.jsx("span",{className:v.youLabel,children:"you"}),e.jsx("div",{className:`${v.dot} ${d===0?v.dotYou:""}`,style:{backgroundColor:c}})]},o)}),m>0&&e.jsxs("span",{className:v.overflow,children:["+",m]})]})]})}const ue="_bench_jibdy_1",he="_benchImg_jibdy_19",pe="_sitCount_jibdy_35",N={bench:ue,benchImg:he,sitCount:pe},R="wewere-bench-sat";function _e(n){return`url("data:image/svg+xml,${`<svg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'><g transform='rotate(30 12 12)'><path d='M5.5 3.21V20.8c0 .45.54.67.85.35l4.86-4.86h6.3c.45 0 .67-.54.35-.85L5.86 3.21z' fill='${encodeURIComponent(n)}' stroke='white' stroke-width='1'/></g></svg>`}") 5 2, pointer`}const ge=H(()=>({defaultData:{sitCount:0}}),({data:n,setData:r,ref:t},m)=>{const{cursors:c}=T(),[d,u]=i.useState(!1),o=i.useRef(!1);q(t),i.useEffect(()=>{const g=sessionStorage.getItem(R)==="true";u(g),o.current=g},[]);const a=()=>{o.current||(o.current=!0,u(!0),sessionStorage.setItem(R,"true"),r(g=>{g.sitCount=(g.sitCount??0)+1}))},w=c.color||"#3d3833",_={cursor:_e(w)};return e.jsxs("div",{id:m.id,className:N.bench,style:_,onMouseEnter:a,onClick:a,role:"button",tabIndex:0,onKeyDown:g=>{(g.key==="Enter"||g.key===" ")&&a()},children:[e.jsx("img",{src:"/red-park-bench-face-right.png",alt:"A red park bench",width:386,height:386,loading:"lazy",decoding:"async",className:N.benchImg,draggable:!1}),e.jsx("span",{className:N.sitCount,children:d?`you sat here${n.sitCount>1?` (${n.sitCount} have sat)`:""}`:n.sitCount===0?"sit down?":`${n.sitCount} ${n.sitCount===1?"person has":"people have"} sat here`})]})}),fe="_coffee_1d3qb_1",we="_scene_1d3qb_9",be="_brewing_1d3qb_23",xe="_brewShake_1d3qb_1",ve="_drinking_1d3qb_30",je="_machineImg_1d3qb_35",ye="_machineBackground_1d3qb_48",Ne="_cupImg_1d3qb_55",ke="_cupReady_1d3qb_68",Ce="_gentleBounce_1d3qb_1",Se="_cupDrinking_1d3qb_73",Te="_drinkShakeAndFall_1d3qb_1",Be="_label_1d3qb_122",Ie="_stats_1d3qb_130",x={coffee:fe,scene:we,brewing:be,brewShake:xe,drinking:ve,machineImg:je,machineBackground:ye,cupImg:Ne,cupReady:ke,gentleBounce:Ce,cupDrinking:Se,drinkShakeAndFall:Te,label:Be,stats:Ie},Le=2500,Ae=1200,Ee=H(()=>({defaultData:{phase:"idle",brewCount:0,drinkCount:0}}),({data:n,setData:r},t)=>{const{dispatchPlayEvent:m,registerPlayEventListener:c,removePlayEventListener:d}=T(),[u,o]=i.useState(null),a=i.useRef(null);i.useEffect(()=>()=>{a.current&&clearTimeout(a.current)},[]);const w=i.useCallback(()=>{a.current&&clearTimeout(a.current),o("brewing"),a.current=setTimeout(()=>{o(null)},Le)},[]),_=i.useCallback(()=>{a.current&&clearTimeout(a.current),o("drinking"),a.current=setTimeout(()=>{o(null)},Ae)},[]);i.useEffect(()=>{const b=c("wewere-coffee-brew",{onEvent:()=>{w()}}),W=c("wewere-coffee-drink",{onEvent:()=>{_()}});return()=>{d("wewere-coffee-brew",b),d("wewere-coffee-drink",W)}},[c,d,w,_]);const g=()=>{n.phase==="idle"&&!u?(r(b=>{b.phase="ready",b.brewCount=(b.brewCount??0)+1}),m({type:"wewere-coffee-brew",eventPayload:{}})):n.phase==="ready"&&!u&&(r(b=>{b.phase="idle",b.drinkCount=(b.drinkCount??0)+1}),m({type:"wewere-coffee-drink",eventPayload:{}}))},f=u??n.phase,j=(n.phase==="idle"||n.phase==="ready")&&!u,P=f==="idle"?"brew a cortado?":f==="brewing"?"brewing...":f==="drinking"?"sipping...":"take a sip?";return e.jsxs("div",{id:t.id,className:x.coffee,children:[e.jsxs("div",{className:`${x.scene} ${x[f]}`,onClick:j?g:void 0,role:j?"button":void 0,tabIndex:j?0:void 0,onKeyDown:j?b=>{(b.key==="Enter"||b.key===" ")&&g()}:void 0,children:[e.jsx("img",{src:"/la-marzocco.png",alt:"Espresso machine",width:943,height:942,loading:"lazy",decoding:"async",className:`${x.machineImg}
2 ${f==="ready"||f==="drinking"?x.machineBackground:""}`,draggable:!1}),e.jsx("img",{src:f==="ready"||f==="drinking"?"/cortado.png":"/cortado-empty.png",width:956,height:958,loading:"lazy",decoding:"async",alt:f==="ready"?"A cortado ready to drink":"An empty cortado cup",className:`${x.cupImg} ${f==="ready"||f==="drinking"?x.cupReady:""} ${f==="drinking"?x.cupDrinking:""}`,draggable:!1})]}),e.jsxs("span",{className:x.label,children:[P,(n.brewCount>0||n.drinkCount>0)&&e.jsxs("span",{className:x.stats,children:[" ","(",n.brewCount," brewed, ",n.drinkCount," sipped)"]})]})]})}),$=[{browser:"Chrome",url:"https://chromewebstore.google.com/detail/we-were-online/bhkdblmogjkgeipehaphdocclmijnkhc?authuser=0&hl=en"},{browser:"Firefox",url:"https://addons.mozilla.org/en-US/firefox/addon/we-were-online/"},{browser:"Edge",url:"https://microsoftedge.microsoft.com/addons/detail/we-were-online/kiamoecdnaglmhigmbmdkiodbbphpodl"},{browser:"Safari",url:"https://apps.apple.com/us/app/we-were-online/id6798847358?mt=12"}],Re="_gate_rx3r9_1",$e="_desktopOnly_rx3r9_13",De="_mobileOnly_rx3r9_22",ze="_form_rx3r9_32",Oe="_row_rx3r9_39",Me="_input_rx3r9_47",He="_submit_rx3r9_72",Pe="_subtext_rx3r9_92",We="_errorText_rx3r9_101",Fe="_successNote_rx3r9_109",Ge="_downloadGroup_rx3r9_117",qe="_downloadSurface_rx3r9_128",Ue="_downloadGroupLarge_rx3r9_137",Ve="_downloadLabel_rx3r9_142",Ke="_downloadItem_rx3r9_146",Ye="_downloadLink_rx3r9_151",Qe="_downloadSeparator_rx3r9_162",p={gate:Re,desktopOnly:$e,mobileOnly:De,form:ze,row:Oe,input:Me,submit:He,subtext:Pe,errorText:We,successNote:Fe,downloadGroup:Ge,downloadSurface:qe,downloadGroupLarge:Ue,downloadLabel:Ve,downloadItem:Ke,downloadLink:Ye,downloadSeparator:Qe},y="wewere.subscribed";function Je(){try{return localStorage.getItem(y)==="1"}catch{return!1}}function Xe(){try{localStorage.setItem(y,"1")}catch{}}function Ze({size:n="default"}){const r=n==="large"?`${p.downloadGroup} ${p.downloadSurface} ${p.downloadGroupLarge}`:`${p.downloadGroup} ${p.downloadSurface}`;return e.jsxs("div",{className:r,children:[e.jsx("span",{className:p.downloadLabel,children:"install:"}),$.map(({browser:t,url:m},c)=>e.jsxs("span",{className:p.downloadItem,children:[e.jsx("a",{href:m,target:"_blank",rel:"noopener noreferrer",className:p.downloadLink,children:t}),c<$.length-1?e.jsx("span",{className:p.downloadSeparator,"aria-hidden":"true",children:"·"}):null]},t))]})}function es(){const[n,r]=i.useState(()=>Je()?{status:"success",firstTime:!1,email:""}:{status:"idle"}),[t,m]=i.useState("");i.useEffect(()=>{function o(a){a.key===y&&a.newValue==="1"&&r({status:"success",firstTime:!1,email:""})}return window.addEventListener("storage",o),()=>window.removeEventListener("storage",o)},[]);async function c(o){o.preventDefault();const a=t.trim();if(!a){r({status:"error",message:"please enter an email address"});return}r({status:"submitting"});try{const w=await fetch(`${ne}/subscribe`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:a,source:"website"})}),_=await w.json();if(!w.ok||!_.ok){r({status:"error",message:_.error||(w.status===429?"slow down â try again in a minute":"something went wrong. try again?")});return}Xe(),window.dispatchEvent(new StorageEvent("storage",{key:y,newValue:"1"})),r({status:"success",firstTime:!_.alreadySubscribed,email:a})}catch{r({status:"error",message:"connection error. try again?"})}}if(n.status==="success")return e.jsx("p",{className:p.successNote,children:n.firstTime&&n.email?e.jsxs(e.Fragment,{children:["sent to ",e.jsx("strong",{children:n.email}),"! excited to make internet feel more alive together :)"]}):e.jsx(e.Fragment,{children:"install link sent â check your email :)"})});const d=n.status==="submitting",u=n.status==="error"?n.message:null;return e.jsxs("form",{className:p.form,onSubmit:c,children:[e.jsxs("div",{className:p.row,children:[e.jsx("input",{type:"email",inputMode:"email",autoComplete:"email",required:!0,placeholder:"your email",className:p.input,value:t,onChange:o=>m(o.target.value),disabled:d,"aria-invalid":u?"true":void 0}),e.jsx("button",{type:"submit",className:p.submit,disabled:d,children:d?"sendingâ¦":"download"})]}),u?e.jsx("p",{className:p.errorText,children:u}):null,e.jsx("p",{className:p.subtext,children:"we'll email you a link so you can install on your computer"})]})}function D({size:n="default"}){return e.jsxs("div",{className:p.gate,children:[e.jsx("div",{className:p.desktopOnly,children:e.jsx(Ze,{size:n})}),e.jsx("div",{className:p.mobileOnly,children:e.jsx(es,{})})]})}const ss="_crossing_k502z_1",ns="_signalSign_k502z_16",rs="_caption_k502z_19",as="_scene_k502z_23",ts="_railTop_k502z_29",os="_railBottom_k502z_30",is="_ties_k502z_31",cs="_train_k502z_56",ls="_trainArrived_k502z_66",ds="_trainIllustration_k502z_70",ms="_serviceLabel_k502z_78",us="_signal_k502z_16",hs="_signalPost_k502z_119",ps="_compact_k502z_139",_s="_compactHeading_k502z_152",gs="_compactScene_k502z_156",fs="_compactTrain_k502z_166",ws="_compactTrainArrived_k502z_176",bs="_compactText_k502z_180",xs="_compactBody_k502z_195",l={crossing:ss,signalSign:ns,caption:rs,scene:as,railTop:ts,railBottom:os,ties:is,train:cs,trainArrived:ls,trainIllustration:ds,serviceLabel:ms,signal:us,signalPost:hs,compact:ps,compactHeading:_s,compactScene:gs,compactTrain:fs,compactTrainArrived:ws,compactText:bs,compactBody:xs};function vs({variant:n="band"}){const r=i.useRef(null),[t,m]=i.useState(()=>window.matchMedia("(prefers-reduced-motion: reduce)").matches);return i.useEffect(()=>{if(t)return;const c=r.current;if(!c)return;if(!("IntersectionObserver"in window)){m(!0);return}const d=new IntersectionObserver(u=>{u.some(o=>o.isIntersecting)&&(m(!0),d.disconnect())},{threshold:.2});return d.observe(c),()=>d.disconnect()},[t]),n==="compact"?e.jsxs("a",{ref:r,className:l.compact,href:"/commute","aria-label":"Commute the internet",children:[e.jsxs("span",{className:l.compactScene,"aria-hidden":"true",children:[e.jsx("span",{className:l.railTop}),e.jsx("span",{className:l.railBottom}),e.jsx("span",{className:l.ties}),e.jsx("span",{className:`${l.compactTrain} ${t?l.compactTrainArrived:""}`,children:e.jsx("img",{className:l.trainIllustration,src:B,alt:""})})]}),e.jsxs("span",{className:l.compactText,children:[e.jsx("span",{className:l.compactHeading,children:"commute the internet"}),e.jsxs("span",{className:l.compactBody,children:["a slow train through the recent web. take a detour through the places that other people are headed."," ",e.jsx("b",{children:"Click to try an early version!"})]})]})]}):e.jsxs("a",{ref:r,className:l.crossing,href:"/commute","aria-label":"Board the internet commute",children:[e.jsxs("span",{className:l.scene,"aria-hidden":"true",children:[e.jsx("span",{className:l.railTop}),e.jsx("span",{className:l.railBottom}),e.jsx("span",{className:l.ties}),e.jsxs("span",{className:`${l.train} ${t?l.trainArrived:""}`,children:[e.jsx("span",{className:l.serviceLabel,children:"try the internet commute"}),e.jsx("img",{className:l.trainIllustration,src:B,alt:""})]}),e.jsxs("span",{className:l.signal,children:[e.jsx("span",{className:l.signalSign,children:"next stop: somewhere new â"}),e.jsx("span",{className:l.signalPost})]})]}),e.jsx("span",{className:l.caption,children:"a slow train through the recent web"})]})}const js="_stage_10m7g_1",ys="_articleTitle_10m7g_9",Ns="_articleBody_10m7g_19",ks="_rememberedLink_10m7g_27",Cs="_selection_10m7g_35",Ss="_cursor_10m7g_40",Ts="_cursorArrow_10m7g_50",Bs="_cursorName_10m7g_56",Is="_cursorNameMira_10m7g_67",Ls="_cursorNameSol_10m7g_71",As="_cursorMira_10m7g_75",Es="_cursorSol_10m7g_79",Rs="_chatBubble_10m7g_83",$s="_chatName_10m7g_100",Ds="_chatText_10m7g_107",zs="_chatHint_10m7g_113",h={stage:js,articleTitle:ys,articleBody:Ns,rememberedLink:ks,selection:Cs,cursor:Ss,cursorArrow:Ts,cursorName:Bs,cursorNameMira:Is,cursorNameSol:Ls,cursorMira:As,cursorSol:Es,chatBubble:Rs,chatName:$s,chatText:Ds,chatHint:zs};function z({color:n}){return e.jsx("svg",{className:h.cursorArrow,viewBox:"0 0 24 24","aria-hidden":"true",focusable:"false",children:e.jsx("path",{d:"M5.5 3.21V20.8c0 .45.54.67.85.35l4.86-4.86h6.3c.45 0 .67-.54.35-.85L5.86 3.21z",fill:n,stroke:"#faf7f2",strokeWidth:"1"})})}function Os(){return e.jsxs("div",{className:h.stage,"aria-hidden":"true",children:[e.jsx("h4",{className:h.articleTitle,children:"Rabbit hole"}),e.jsxs("p",{className:h.articleBody,children:["A ",e.jsx("span",{className:h.rememberedLink,children:"metaphor"}
2)," for a chain of events that leads somewhere unexpected, usually far from where you"]}),e.jsxs("p",{className:h.articleBody,children:["started. The phrase describes anything"," ",e.jsx("span",{className:h.selection,children:"absorbing to explore"})," long past the point you meant to stop."]}),e.jsxs("span",{className:`${h.cursor} ${h.cursorMira}`,children:[e.jsx(z,{color:"#4a9a8a"}),e.jsx("span",{className:`${h.cursorName} ${h.cursorNameMira}`,children:"mira"})]}),e.jsxs("span",{className:`${h.cursor} ${h.cursorSol}`,children:[e.jsx(z,{color:"#c4724e"}),e.jsx("span",{className:`${h.cursorName} ${h.cursorNameSol}`,children:"sol"})]}),e.jsxs("span",{className:h.chatBubble,children:[e.jsx("span",{className:h.chatName,children:"sol"}),e.jsx("span",{className:h.chatText,children:"down the hole we go"})]}),e.jsx("span",{className:h.chatHint,children:"press / to chat"})]})}const Ms="_page_14vni_1",Hs="_trails_14vni_8",Ps="_content_14vni_15",Ws="_siteNav_14vni_20",Fs="_hero_14vni_63",Gs="_wordmark_14vni_79",qs="_tagline_14vni_88",Us="_siteCard_14vni_96",Vs="_siteCardTeal_14vni_130",Ks="_siteCardRust_14vni_146",Ys="_scrollCue_14vni_162",Qs="_scrollCueMark_14vni_181",Js="_scrollCueTrail_14vni_188",Xs="_scrollCueArrow_14vni_189",Zs="_section_14vni_227",en="_sectionHeading_14vni_257",sn="_essayBlock_14vni_265",nn="_benchesLine_14vni_292",rn="_marginalia_14vni_308",an="_marginaliaLeft_14vni_331",tn="_marginaliaAside_14vni_341",on="_openQuestions_14vni_376",cn="_helpBuild_14vni_402",ln="_helpBuildLead_14vni_412",dn="_helpBuildBody_14vni_421",mn="_helpBuildActions_14vni_430",un="_helpBuildCta_14vni_438",hn="_helpBuildCtaPrimary_14vni_456",pn="_helpBuildEmailLink_14vni_463",_n="_helpBuildEmailAddr_14vni_477",gn="_srOnly_14vni_481",fn="_linkList_14vni_497",wn="_transitionDivider_14vni_519",bn="_transitionRule_14vni_528",xn="_transitionLabel_14vni_534",vn="_browserWindow_14vni_547",jn="_browserBar_14vni_555",yn="_browserDots_14vni_564",Nn="_browserDot_14vni_564",kn="_browserLabel_14vni_577",Cn="_featureRows_14vni_586",Sn="_featureRow_14vni_586",Tn="_featureText_14vni_608",Bn="_featureMedia_14vni_612",In="_featureHeading_14vni_621",Ln="_featureBody_14vni_630",An="_featureAside_14vni_638",En="_featureAsideLink_14vni_647",Rn="_featureCards_14vni_663",$n="_featureCard_14vni_663",Dn="_featureCardFrame_14vni_678",zn="_featureCardImage_14vni_683",On="_featureCardTitle_14vni_691",Mn="_featureCardBody_14vni_699",Hn="_comingSoon_14vni_707",Pn="_comingSoonHeader_14vni_713",Wn="_cautionStripe_14vni_724",Fn="_comingSoonGrid_14vni_733",Gn="_comingCard_14vni_745",qn="_comingCardA_14vni_749",Un="_comingCardB_14vni_753",Vn="_comingCardC_14vni_757",Kn="_comingThumbFrame_14vni_761",Yn="_comingThumb_14vni_761",Qn="_statusChip_14vni_774",Jn="_statusChipBeta_14vni_786",Xn="_comingSoonCommute_14vni_799",Zn="_comingTitle_14vni_803",er="_comingBody_14vni_811",sr="_footer_14vni_819",s={page:Ms,trails:Hs,content:Ps,siteNav:Ws,hero:Fs,wordmark:Gs,tagline:qs,siteCard:Us,siteCardTeal:Vs,siteCardRust:Ks,scrollCue:Ys,scrollCueMark:Qs,scrollCueTrail:Js,scrollCueArrow:Xs,section:Zs,sectionHeading:en,essayBlock:sn,benchesLine:nn,marginalia:rn,marginaliaLeft:an,marginaliaAside:tn,openQuestions:on,helpBuild:cn,helpBuildLead:ln,helpBuildBody:dn,helpBuildActions:mn,helpBuildCta:un,helpBuildCtaPrimary:hn,helpBuildEmailLink:pn,helpBuildEmailAddr:_n,srOnly:gn,linkList:fn,transitionDivider:wn,transitionRule:bn,transitionLabel:xn,browserWindow:vn,browserBar:jn,browserDots:yn,browserDot:Nn,browserLabel:kn,featureRows:Cn,featureRow:Sn,featureText:Tn,featureMedia:Bn,featureHeading:In,featureBody:Ln,featureAside:An,featureAsideLink:En,featureCards:Rn,featureCard:$n,featureCardFrame:Dn,featureCardImage:zn,featureCardTitle:On,featureCardBody:Mn,comingSoon:Hn,comingSoonHeader:Pn,cautionStripe:Wn,comingSoonGrid:Fn,comingCard:Gn,comingCardA:qn,comingCardB:Un,comingCardC:Vn,comingThumbFrame:Kn,comingThumb:Yn,statusChip:Qn,statusChipBeta:Jn,comingSoonCommute:Xn,comingTitle:Zn,comingBody:er,footer:sr},nr=i.lazy(()=>V(async()=>{const{AuraGuestbook:n}=await import("./AuraGuestbook-CEPB82nA.js");return{AuraGuestbook:n}},__vite__mapDeps([0,1,2,3,4,5,6])).then(({AuraGuestbook:n})=>({default:n}))),O="https://news.spencer.place/p/alive-internet-theory",M="https://news.spencer.place/p/the-internet-has-no-benches",rr="https://discord.gg/SKbsSf4ptU",C="hi",S="spencer.place",ar="help build we were online",tr="make our site feel inhabited";function or(n){const r=`${C}@${S}`;window.location.href=`mailto:${r}?subject=${encodeURIComponent(n)}`}function k({label:n,children:r,bodyClassName:t}){return e.jsxs("div",{className:s.browserWindow,children:[e.jsxs("div",{className:s.browserBar,children:[e.jsxs("span",{className:s.browserDots,"aria-hidden":"true",children:[e.jsx("span",{className:s.browserDot}),e.jsx("span",{className:s.browserDot}),e.jsx("span",{className:s.browserDot})]}),e.jsx("span",{className:s.browserLabel,children:n})]}),e.jsx("div",{className:t,children:r})]})}function ir(){return e.jsxs("svg",{width:"100%",height:"100%",style:{position:"absolute",inset:0,opacity:.7,pointerEvents:"none",mixBlendMode:"multiply"},children:[e.jsxs("defs",{children:[e.jsxs("filter",{id:"noise",children:[e.jsx("feTurbulence",{type:"fractalNoise",baseFrequency:"0.9",numOctaves:"3",stitchTiles:"stitch"}),e.jsx("feColorMatrix",{type:"matrix",values:"1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 2 -1"})]}),e.jsxs("filter",{id:"grain",children:[e.jsx("feTurbulence",{type:"turbulence",baseFrequency:"0.5",numOctaves:"2",stitchTiles:"stitch"}),e.jsx("feColorMatrix",{type:"saturate",values:"0"}),e.jsx("feComponentTransfer",{children:e.jsx("feFuncA",{type:"discrete",tableValues:"0 0.2 0.3 0.4"})})]})]}
2),e.jsx("rect",{width:"100%",height:"100%",filter:"url(#noise)"}),e.jsx("rect",{width:"100%",height:"100%",filter:"url(#grain)",style:{opacity:.3}})]})}function cr({children:n,fallback:r,rootMargin:t="600px"}){const m=i.useRef(null),[c,d]=i.useState(!1);return i.useEffect(()=>{if(c)return;const u=m.current;if(!u)return;if(!("IntersectionObserver"in window)){d(!0);return}const o=new IntersectionObserver(a=>{a.some(w=>w.isIntersecting)&&(d(!0),o.disconnect())},{rootMargin:t});return o.observe(u),()=>o.disconnect()},[c,t]),e.jsx("div",{ref:m,children:c?n:r})}const lr=500,dr={randomizeColors:!1,filters:[],pidFilter:"",eventFilter:{move:!0,click:!0,hold:!1,cursor_change:!1},trailStyle:"chaotic",chaosIntensity:.6,trailAnimationMode:"natural",maxConcurrentTrails:5,overlapFactor:1,minGapBetweenTrails:.1,documentSpace:!1,singleSegmentPerGroup:!0},mr={strokeWidth:5,pointSize:4,trailOpacity:.5,animationSpeed:1,...X};function ur(){const[n,r]=i.useState({width:window.innerWidth,height:window.innerHeight}),{events:t,connected:m}=se({maxEvents:lr});i.useEffect(()=>{const _=()=>r({width:window.innerWidth,height:window.innerHeight});return window.addEventListener("resize",_),()=>window.removeEventListener("resize",_)},[]);const c=i.useRef(new Set),d=i.useCallback(_=>{for(const g of _)c.current.add(g)},[]),u=K(t,{maxGroups:60,evictIdsRef:c}),{trailStates:o}=Z(u,n,dr),a=i.useMemo(()=>ee(t),[t]),w=window.location.pathname;return e.jsxs("div",{className:s.page,children:[e.jsxs("div",{className:s.trails,children:[o.length>0&&e.jsx(Y,{trailStates:o,showClickRipples:!0,onTrailsRemoved:d,settings:mr}),e.jsx(ir,{}),e.jsx(Q,{connected:m,peopleCount:a.people,timezones:a.timezones,continents:a.continents,style:{position:"absolute",top:"calc(100vh - 36px)",left:16,zIndex:2}}),e.jsx(J,{style:{position:"absolute",top:"calc(100vh - 40px)",right:16,zIndex:2}})]}),e.jsxs("div",{className:s.content,children:[e.jsxs("nav",{className:s.siteNav,"aria-label":"Site navigation",children:[e.jsx("a",{"aria-current":L(w,I)?"page":void 0,href:I,children:"live portrait"}),e.jsx("a",{"aria-current":L(w,A)?"page":void 0,href:A,children:"changelog"})]}),e.jsxs("section",{className:s.hero,children:[e.jsx("h1",{className:s.wordmark,children:"we were online"}),e.jsx("p",{className:s.tagline,children:"turning the internet into a living, shared space"}),e.jsx("div",{className:`${s.siteCard} ${s.siteCardTeal}`,"can-spin":"true",id:"wewere-site-card-1",children:"the cursor trails are from real people browsing"}),e.jsx("div",{className:`${s.siteCard} ${s.siteCardRust}`,"can-spin":"true",id:"wewere-site-card-2",children:"install the extension to try it out!"}),e.jsx(D,{}),e.jsx("span",{className:s.scrollCue,"aria-hidden":"true",children:e.jsxs("svg",{className:s.scrollCueMark,viewBox:"0 0 72 48","aria-hidden":"true",focusable:"false",children:[e.jsx("path",{className:s.scrollCueTrail,d:"M8 10 C 23 16, 16 30, 34 32 S 54 26, 55 38"}),e.jsx("path",{className:s.scrollCueArrow,d:"M45 30 L55 39 L65 30"})]})})]}),e.jsxs("section",{className:s.section,id:"homepage-essay",children:[e.jsxs("div",{className:s.essayBlock,children:[e.jsxs("p",{children:["It's controversial to have hope for the internet these days."," ",e.jsx("a",{href:"https://en.wikipedia.org/wiki/Dead_Internet_theory",target:"_blank",rel:"noopener noreferrer",children:"Dead internet theory"})," ","has entered mainstream discourse as AI social accounts multiply and compete for what flavor of slop comes after Italian brainrot."]}),e.jsxs("p",{children:["But there's so much life around us, still thriving on the open Internet. From rural"," ",e.jsx("a",{href:"https://forum.melonland.net/",target:"_blank",rel:"noopener noreferrer",children:"forums"}),","," ",e.jsx("a",{href:"https://merveilles.town/about",target:"_blank",rel:"noopener noreferrer",children:"towns"}),", and"," ",e.jsx("a",{href:"https://playhtml.fun/fridge",target:"_blank",rel:"noopener noreferrer",children:"fridge walls"})," ","to community-run"," ",e.jsx("a",{href:"http://wikipedia.org/",target:"_blank",rel:"noopener noreferrer",children:"encyclopedias"})," ","and"," ",e.jsx("a",{href:"https://www.openstreetmap.org/communities",target:"_blank",rel:"noopener noreferrer",children:"maps"}),", pockets of humanity continue to flourish despite (& perhaps now, in part, in spite) of these existential fears."]}),e.jsx("p",{children:"So why does it still feel so lonely when we browse the Internet?"}),e.jsxs("div",{className:`${s.marginalia} ${s.marginaliaLeft}`,children:[e.jsx("aside",{className:s.marginaliaAside,children:e.jsx(ge,{id:"wewere-bench"})}),e.jsxs("p",{className:s.benchesLine,children:["I think it's because"," ",e.jsx("a",{href:M,target:"_blank",rel:"noopener noreferrer",children:"the Internet has no benches"}),"."]})]}),e.jsx("p",{children:"One of my favorite things about walking around in the real world is the causal sharing of space with other people. We share a look when something funny happens or help out when a stranger trips. Sometimes these spontaneous encounters become meaningful encounters that stay with us."}),e.jsxs("div",{className:s.marginalia,children:[e.jsx("p",{children:"The Internet has none of this. Online, we're forced to perform or consume. We have all this life around us on the web, but we can't feel it."}),e.jsx("aside",{className:s.marginaliaAside,children:e.jsx(Ee,{id:"wewere-coffee"})})]}),e.jsxs("p",{children:[e.jsx("em",{children:e.jsx("b",{style:{fontSize:"1.1em"},children:"we were online"})})," ","is an online multiplayer worldâpart game, artwork, and toolâthat turns the existing Internet into a living, shared world, actively shaped by its inhabitants."]}),e.jsxs("p",{children:["Built on ",e.jsx("a",{href:"https://playhtml.fun/",children:"playhtml"}),", an open-source library for creating shared experiences, the game is designed to be customized and extended by its players. Individual websites can create interactions that respond to live events on other websites and change behavior depending on a userâs history and personality."]}),e.jsx("p",{children:"Isolated browsing becomes the site of serendipitous encounters as everything becomes material for connection. Assets, buttons, and other components can be created, grown, moved, taken, and gifted. Pages show wear as people pass through and use them. Cursors become digital appendages for bumping into others."}),e.jsxs("p",{children:["Instead of a new social platform, I'm invested in helping the existing Internet we already live in"," ",e.jsx("a",{href:O,target:"_blank",rel:"noopener noreferrer",children:"come to life"})," ","with our presence â one we can shape together, piece by piece. Not as users, but as neighbors and stewards nurturing a home for generations to come."]})]}),e.jsx("br",{}),e.jsx(D,{})]}
2),e.jsxs("div",{className:s.transitionDivider,"aria-hidden":"true",children:[e.jsx("span",{className:s.transitionRule}),e.jsx("span",{className:s.transitionLabel,children:"make the internet feel alive"}),e.jsx("span",{className:s.transitionRule})]}),e.jsxs("section",{className:s.featureRows,children:[e.jsxs("div",{className:s.featureCards,children:[e.jsxs("div",{className:s.featureCard,children:[e.jsx(k,{label:"your portrait",bodyClassName:s.featureCardFrame,children:e.jsx("img",{className:s.featureCardImage,src:"/home/cursor-portrait.jpg",alt:"A dense self-portrait drawn from browsing: overlapping cursor trails in purple, blue, red, and green, with concentric rings marking clicks and dark strokes marking keypresses",loading:"lazy",decoding:"async"})}),e.jsx("h3",{className:s.featureCardTitle,children:"make a cursor portrait"}),e.jsx("p",{className:s.featureCardBody,children:"Your trails, clicks, and keypresses become a self-portrait of your time online. Contribute them to a collective portrait, transforming this traditional surveillance material into expression (fully anonymized)."})]}),e.jsxs("div",{className:s.featureCard,children:[e.jsx(k,{label:"new tab · how you browsed",bodyClassName:s.featureCardFrame,children:e.jsx("img",{className:s.featureCardImage,src:"/home/history-week.jpg",alt:"The history page for a week: 18 hours 35 minutes of browsing across 973 pages, a bar of the most-visited sites, and a list of notable new sites explored for the first time",loading:"lazy",decoding:"async"})}),e.jsx("h3",{className:s.featureCardTitle,children:"review your browsing"}),e.jsx("p",{className:s.featureCardBody,children:"A history page that shows where your time went: the rabbit holes you followed, the smaller places beyond your busiest roads where you settled in, and a cursor portrait from each day."})]})]}),e.jsxs("div",{className:s.featureRow,children:[e.jsx("div",{className:s.featureMedia,children:e.jsx(k,{label:"en.wikipedia.org/wiki/Rabbit_hole",children:e.jsx(Os,{})})}),e.jsxs("div",{className:s.featureText,children:[e.jsx("h2",{className:s.featureHeading,children:"wikipedia feels inhabited"}),e.jsx("p",{className:s.featureBody,children:"Live cursors, article chat, and link patina turn reading into a place where you can cross paths with other visitors and follow each other down rabbit holes."}),e.jsxs("p",{className:s.featureAside,children:["Wikipedia is the first. If you steward an aligned organization or community site,"," ",e.jsx("button",{type:"button",className:s.featureAsideLink,onClick:_=>{or(tr),_.currentTarget.blur()},children:"let's make your corner of the web feel inhabited too â"})]})]})]})]}),e.jsxs("section",{className:s.comingSoon,children:[e.jsxs("div",{className:s.comingSoonHeader,children:[e.jsx("h2",{className:s.featureHeading,children:"what's coming"}),e.jsx("span",{className:s.cautionStripe,"aria-hidden":"true"})]}),e.jsxs("div",{className:s.comingSoonGrid,children:[e.jsxs("div",{className:`${s.comingCard} ${s.comingCardA}`,children:[e.jsxs("div",{className:s.browserWindow,children:[e.jsxs("div",{className:s.browserBar,children:[e.jsxs("span",{className:s.browserDots,"aria-hidden":"true",children:[e.jsx("span",{className:s.browserDot}),e.jsx("span",{className:s.browserDot}),e.jsx("span",{className:s.browserDot})]}),e.jsx("span",{className:s.browserLabel,children:"your shore"}),e.jsx("span",{className:s.statusChipBeta,children:"BETA"})]}),e.jsx("div",{className:s.comingThumbFrame,children:e.jsx("img",{className:s.comingThumb,src:"/home/scraps-all.jpg",alt:"A dense collage of images, buttons, icons, and screenshots collected while browsing, layered across the page",loading:"lazy",decoding:"async"})})]}),e.jsx("h3",{className:s.comingTitle,children:"internet scraps"}),e.jsx("p",{className:s.comingBody,children:"a snapshot of your browsing in the media you pass â images, buttons, icons, cursors."})]}),e.jsxs("div",{className:`${s.comingCard} ${s.comingCardB}`,children:[e.jsxs("div",{className:s.browserWindow,children:[e.jsxs("div",{className:s.browserBar,children:[e.jsxs("span",{className:s.browserDots,"aria-hidden":"true",children:[e.jsx("span",{className:s.browserDot}),e.jsx("span",{className:s.browserDot}),e.jsx("span",{className:s.browserDot})]}),e.jsx("span",{className:s.browserLabel,children:"somewhere kind"}),e.jsx("span",{className:s.statusChip,children:"SOON"})]}),e.jsx("div",{className:s.comingThumbFrame,children:e.jsx("img",{className:s.comingThumb,src:"/home/letter-prototype.jpg",alt:"A pink letter card tucked into a web page, opening with a handwritten salutation and dated in the corner",loading:"lazy",decoding:"async"})})]}),e.jsx("h3",{className:s.comingTitle,children:"letters to a website"}),e.jsx("p",{className:s.comingBody,children:"tuck a sealed letter into a page for the next person to find and share why the website was meaningful to you."})]}),e.jsxs("div",{className:`${s.comingCard} ${s.comingCardC}`,children:[e.jsxs("div",{className:s.browserWindow,children:[e.jsxs("div",{className:s.browserBar,children:[e.jsxs("span",{className:s.browserDots,"aria-hidden":"true",children:[e.jsx("span",{className:s.browserDot}),e.jsx("span",{className:s.browserDot}),e.jsx("span",{className:s.browserDot})]}),e.jsx("span",{className:s.browserLabel,children:"somewhere sloppy"}),e.jsx("span",{className:s.statusChip,children:"SOON"})]}),e.jsx("div",{className:s.comingThumbFrame,children:e.jsx("img",{className:s.comingThumb,src:"/home/quarantine-tape.jpg",alt:"A listicle article crossed over with yellow and red caution tape reading AI SLOP and SEO SPAM",loading:"lazy",decoding:"async"})})]}),e.jsx("h3",{className:s.comingTitle,children:"AI slop tape"}),e.jsx("p",{className:s.comingBody,children:"Tape off pages and content that are AI-generated slop or SEO spam. Help keep our web clean!"})]})]}),e.jsx("div",{className:s.comingSoonCommute,children:e.jsx(vs,{variant:"compact"})})]}),e.jsxs("section",{className:s.section,children:[e.jsx("h2",{className:s.sectionHeading,children:"leave a mark"}),e.jsx(cr,{fallback:e.jsx("div",{style:{minHeight:720},"aria-hidden":"true"}),children:e.jsx(i.Suspense,{fallback:e.jsx("div",{style:{minHeight:720},"aria-hidden":"true"}),children:e.jsx(nr,{id:"wewere-online-guestbook"})})})]}),e.jsxs("section",{className:`${s.section} ${s.helpBuild}`,children:[e.jsx("p",{className:s.helpBuildLead,children:"want to make this world with us?"}),e.jsx("p",{className:s.helpBuildBody,children:"I'm looking for people who want to help build this together. Designers, artists, writers, all internet hopefuls welcome."}),e.jsxs("div",{className:s.helpBuildActions,children:[e.jsx("a",{href:rr,target:"_blank",rel:"noopener noreferrer",className:`${s.helpBuildCta} ${s.helpBuildCtaPrimary}`,children:"join the playhtml discord"}),e.jsxs("button",{type:"button",className:s.helpBuildEmailLink,onClick:_=>{const f=`mailto:${`${C}@${S}`}?subject=${encodeURIComponent(ar)}`;window.location.href=f,_.currentTarget.blur()},"aria-label":"email spencer",children:["or email directly â"," ",e.jsxs("span",{className:s.helpBuildEmailAddr,children:[C,e.jsx("span",{"aria-hidden":"true",children:" [at] "}),e.jsx("span",{className:s.srOnly,children:"@"}),S]})]})]})]}),e.jsxs("section",{className:s.section,children:[e.jsxs("h2",{className:s.sectionHeading,children:[" ","open questions I'm exploring:"]}),e.jsxs("ol",{className:s.openQuestions,children:[e.jsxs("li",{children:["How do you foster"," ",e.jsx("a",{href:"https://www.are.na/omayeli-arenyeka/solidarity-on-the-web",target:"_blank",rel:"noopener noreferrer",children:"solidarity on the web"}),"?"]}),e.jsx("li",{children:"What makes a digital space feel safe for you to express yourself and how much of yourself do you need to reveal to feel genuinely connected to a stranger online?"}),e.jsx("li",{children:"How can it feel genuinely good and meaningful to spend time online without veering into addiction?"}),e.jsxs("li",{children:["What can serve as a"," ",e.jsx("a",{href:"https://www.poetryfoundation.org/poetrymagazine/articles/60484/the-third-thing",target:"_blank",rel:"noopener noreferrer",children:'"third thing"'})," ",'to help us find "joint rapture"?']})]}),e.jsx("h2",{className:s.sectionHeading,children:"read more"}),e.jsxs("ul",{className:s.linkList,children:[e.jsxs("li",{children:[e.jsx("a",{href:O,target:"_blank",rel:"noopener noreferrer",children:"Alive Internet Theory"})," ","â on how we'll never let the Internet die"]}),e.jsxs("li",{children:[e.jsx("a",{href:M,target:"_blank",rel:"noopener noreferrer",children:"The Internet Has No Benches"})," ","â on the missing third places of the web"]})]})]}),e.jsxs("footer",{className:s.footer,children:[e.jsxs("p",{children:["stewarded by"," ",e.jsx("a",{href:"https://spencer.place",target:"_blank",rel:"noopener noreferrer",children:"spencer"}),", built on"," ",e.jsx("a",{href:"https://playhtml.fun/",target:"_blank",rel:"noopener noreferrer",children:"playhtml"})]}),e.jsxs("p",{children:["contact ",e.jsx("a",{href:"mailto:[email protected]",children:"[email protected]"})," with questions, provocations, ideas"]})]})]}),e.jsx(me,{})]})}F.createRoot(document.getElementById("root")).render(e.jsx(G.StrictMode,{children:e.jsx(U,{initOptions:{curs
2ors:{enabled:!0,enableChat:!1,coordinateMode:"absolute"}},children:e.jsx(ur,{})})}));
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.