PageSourceSearch

https://wystem.ai/assets/OGPreviewPage-BIU3EZKn.js

js wystem.ai collected 2026-10-05 15:26:47 UTC 31,457 bytes, 1 lines download raw bytes

1import{j as e,R as E}from"./vendor-react-BTaBH3I0.js";import{H as F}from"./vendor-helmet-BVAFyVM5.js";import{aE as k,a4 as x,aA as v,a5 as b,l as S,aD as W,B as A,N as P,aH as R,V as D,ad as M}from"./index-pVy5dhMT.js";import"./vendor-misc-DOep9v2o.js";import"./vendor-router-DaUSQCqh.js";const i={surfacePage:"#fafaf4",surfacePlate:"#faf1df",ink:"#0f172a",inkSecondary:"#334155",inkMuted:"#64748b",inkFaint:"#94a3b8",hairline:"#d9c8a9",accent:"#b5621e",accentSecondary:"#059669",display:'"Host Grotesk", system-ui, -apple-system, sans-serif',serif:'"Source Serif 4", Georgia, serif'},d=1200,f=630,O="#059669",H="#b5621e",l=({size:t=64})=>e.jsxs("span",{style:{fontFamily:i.display,fontWeight:800,fontSize:t,letterSpacing:"-0.03em",lineHeight:1},children:[e.jsx("span",{style:{color:O},children:"wystem"}),e.jsx("span",{style:{color:H},children:".ai"})]}),h=({text:t,color:n=i.accent,size:s=14})=>e.jsx("span",{style:{fontFamily:i.display,fontWeight:800,fontSize:s,letterSpacing:"0.28em",textTransform:"uppercase",color:n},children:t}),N=()=>e.jsxs("div",{style:{width:"100%",height:"100%",background:i.surfacePage,display:"flex",alignItems:"center",justifyContent:"center",flexDirection:"column",textAlign:"center",padding:96},children:[e.jsx(l,{size:140}),e.jsx("p",{style:{fontFamily:i.serif,fontSize:44,fontStyle:"italic",color:i.inkSecondary,lineHeight:1.35,marginTop:48,maxWidth:820},children:"A living knowledge commons of the social sector."}),e.jsxs("div",{style:{marginTop:64,display:"flex",gap:20,alignItems:"center",color:i.inkFaint},children:[e.jsx("span",{style:{width:60,height:1,background:i.hairline}}),e.jsx(h,{text:"powered by Mycelium",color:i.inkMuted,size:16}),e.jsx("span",{style:{width:60,height:1,background:i.hairline}})]})]}),L=()=>e.jsxs("div",{style:{width:"100%",height:"100%",background:i.surfacePage,display:"flex",flexDirection:"column",padding:"80px 96px"},children:[e.jsx(h,{text:"The knowledge commons",size:22}),e.jsxs("h1",{style:{fontFamily:i.display,fontWeight:700,fontSize:96,letterSpacing:"-0.02em",lineHeight:1,color:i.ink,margin:"32px 0 0",maxWidth:"18ch"},children:["The social sector's",e.jsx("br",{}),"shared archive",e.jsx("span",{style:{color:i.accent},children:"."})]}),e.jsxs("div",{style:{marginTop:"auto",display:"flex",gap:40,alignItems:"baseline"},children:[e.jsx(r,{n:"49",label:"orgs"}),e.jsx(u,{}),e.jsx(r,{n:"73",label:"signals"}),e.jsx(u,{}),e.jsx(r,{n:"218",label:"insights"}),e.jsx(u,{}),e.jsx(r,{n:"11",label:"this week",accent:!0}),e.jsx("span",{style:{flex:1}}),e.jsx(l,{size:44,muted:!0})]})]}),r=({n:t,label:n,accent:s})=>e.jsxs("span",{style:{fontFamily:i.display,fontWeight:600,fontSize:28,color:i.inkSecondary,letterSpacing:"0.04em"},children:[e.jsx("span",{style:{color:s?i.accentSecondary:i.ink,fontWeight:700,marginRight:10,fontSize:44},children:t}),n]}),u=()=>e.jsx("span",{style:{color:i.hairline},children:"·"}),_=()=>e.jsxs("div",{style:{width:"100%",height:"100%",background:i.surfacePage,display:"flex",flexDirection:"column",padding:"64px 88px"},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:18},children:[e.jsx(k,{size:32,style:{color:i.accent}}),e.jsx(h,{text:"Open question · from the commons",size:22})]}),e.jsx("p",{style:{fontFamily:i.serif,fontStyle:"italic",fontSize:80,lineHeight:1.13,color:i.ink,margin:"36px 0 0",letterSpacing:"-0.01em",maxWidth:"20ch"},children:"How can communities recover livelihoods after extreme weather?"}),e.jsxs("div",{style:{marginTop:"auto",display:"flex",alignItems:"center",justifyContent:"space-between"},children:[e.jsx("span",{style:{color:i.inkMuted,fontFamily:i.display,fontSize:30,letterSpacing:"0.02em"},children:"— voiced by 7 organisations"}),e.jsx(l,{size:52,muted:!0})]})]}),G=()=>{const t=(n,s)=>e.jsxs("div",{style:{width:"33.333%",height:"50%",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:22,borderRight:`1px solid ${i.hairline}`,borderBottom:`1px solid ${i.hairline}`},children:[e.jsx(s,{size:96,style:{color:i.accent}}),e.jsx("span",{style:{fontFamily:i.display,fontWeight:700,fontSize:32,color:i.inkSecondary,textTransform:"uppercase",letterSpacing:"0.18em"},children:n})]});return e.jsxs("div",{style:{width:"100%",height:"100%",background:i.surfacePage,display:"flex",flexDirection:"column"},children:[e.jsx("div",{style:{width:"100%",height:"20%",background:i.surfacePlate,borderBottom:`1px solid ${i.hairline}
1`,display:"flex",alignItems:"center",justifyContent:"center"},children:e.jsx(l,{size:72})}),e.jsxs("div",{style:{width:"100%",height:"80%",display:"flex",flexWrap:"wrap"},children:[t("Articles",v),t("Findings",x),t("Recipes",b),t("Stories",S),t("Signals",W),t("Orgs",A)]})]})},B=()=>e.jsxs("div",{style:{width:"100%",height:"100%",background:i.surfacePage,display:"grid",gridTemplateColumns:"1fr 1fr"},children:[e.jsxs("div",{style:{padding:"80px 64px",display:"flex",flexDirection:"column",justifyContent:"center",gap:16},children:[e.jsx(h,{text:"The commons holds",size:22}),[{l:"Signals",d:"What the commons is asking for"},{l:"Insights",d:"What it has learned"},{l:"Articles",d:"Synthesised from documents"},{l:"Recipes",d:"Methods you can copy"},{l:"Findings",d:"Patterns across organisations"},{l:"Data stories",d:"Drawn from datasets"}].map(t=>e.jsxs("div",{style:{display:"flex",alignItems:"baseline",gap:20},children:[e.jsx("span",{style:{fontFamily:i.display,fontWeight:700,fontSize:36,color:i.ink,letterSpacing:"-0.01em",minWidth:220},children:t.l}),e.jsx("span",{style:{fontFamily:i.serif,fontStyle:"italic",fontSize:22,color:i.inkMuted},children:t.d})]},t.l))]}),e.jsxs("div",{style:{background:i.accent,padding:"80px 64px",display:"flex",flexDirection:"column",justifyContent:"space-between"},children:[e.jsxs("div",{children:[e.jsxs("span",{style:{fontFamily:i.display,fontWeight:700,fontSize:84,letterSpacing:"-0.025em",lineHeight:1,color:"#fff"},children:["wystem",e.jsx("span",{style:{color:i.surfacePlate},children:"."}),"ai"]}),e.jsx("p",{style:{fontFamily:i.serif,fontStyle:"italic",fontSize:32,color:"#faf1df",lineHeight:1.35,marginTop:32,maxWidth:"18ch"},children:"A living knowledge commons of the social sector."})]}),e.jsx("p",{style:{fontFamily:i.display,fontSize:18,fontWeight:700,letterSpacing:"0.22em",textTransform:"uppercase",color:"#fdf2e6",margin:0},children:"powered by Mycelium"})]})]}),$=()=>e.jsxs("div",{style:{width:"100%",height:"100%",background:i.surfacePage,display:"flex",flexDirection:"column",justifyContent:"center",padding:"64px 96px"},children:[e.jsxs("p",{style:{fontFamily:i.serif,fontSize:72,lineHeight:1.2,color:i.ink,margin:0,letterSpacing:"-0.005em"},children:["The social sector publishes ",e.jsx("em",{style:{color:i.accent},children:"so much"})," — and reads ",e.jsx("em",{style:{color:i.accent},children:"so little"})," of it."]}),e.jsx("p",{style:{fontFamily:i.serif,fontStyle:"italic",fontSize:40,lineHeight:1.35,color:i.inkSecondary,marginTop:44,maxWidth:"28ch"},children:"wystem.ai is the engine that turns those archives into a commons."})]}),V=()=>{const t=E.useMemo(()=>{const n=[];let s=42;const a=()=>(s=s*1664525+1013904223>>>0,(s>>>8)/16777215);for(let c=0;c<180;c++)n.push({x:60+a()*1080,y:80+a()*350,r:1.5+a()*4,a:.18+a()*.55});return n},[]);return e.jsxs("div",{style:{width:"100%",height:"100%",background:i.surfacePage,position:"relative",overflow:"hidden"},children:[e.jsxs("svg",{viewBox:`0 0 ${d} 500`,width:"100%",height:"78%",style:{position:"absolute",top:0,left:0},"aria-hidden":!0,children:[t.map((n,s)=>e.jsx("circle",{cx:n.x,cy:n.y,r:n.r,fill:i.accent,opacity:n.a},s)),[120,230,340,470,610,820,1010].map((n,s)=>e.jsx("circle",{cx:n,cy:200+s*23%180,r:6,fill:i.accentSecondary,opacity:.85},`f-${s}`))]}),e.jsxs("div",{style:{position:"absolute",left:0,right:0,bottom:0,padding:"48px 88px 64px",background:`linear-gradient(180deg, transparent 0%, ${i.surfacePage} 60%)`},children:[e.jsx(l,{size:104}),e.jsx("p",{style:{fontFamily:i.serif,fontStyle:"italic",fontSize:32,color:i.inkSecondary,marginTop:20,maxWidth:"40ch"},children:"A constellation of organisations, sectors, places — and what they've learned together."})]})]})},K=()=>e.jsxs("div",{style:{width:"100%",height:"100%",background:i.surfacePage,display:"flex",flexDirection:"column",padding:"56px 80px 72px"},children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"baseline"},children:[e.jsx(l,{size:60,muted:!0}),e.jsx("span",{style:{fontFamily:i.display,fontSize:18,fontWeight:700,letterSpacing:"0.28em",textTransform:"uppercase",color:i.inkFaint},children:"BETA · 2026"})]}),e.jsxs("div",{style:{marginTop:56},children:[e.jsxs("div",{style:{display:"flex",alignItems:"center",gap:14,marginBottom:28},children:[e.jsx(x,{size:26,style:{color:i.accent}}),e.jsx(h,{text:"Finding · climate resilience",size:22})]}),e.jsx("h1",{style:{fontFamily:i.display,fontWeight:700,fontSize:72,lineHeight:1.08,color:i.ink,margin:0,letterSpacing:"-0.02em",maxWidth:"22ch"},children:"Three organisations show how climate recovery starts at the household scale."})]}),e.jsx("p",{style:{marginTop:"auto",fontFamily:i.serif,fontStyle:"italic",fontSize:28,color:i.inkMuted,letterSpacing:"0.005em"},children:"One of 218 insights from the commons. Browse the rest at wystem.ai."})]}),Q=()=>e.jsxs("div",{style:{width:"100%",height:"100%",background:i.surfacePage,display:"flex",flexDirection:"column",padding:0},children:[e.jsx("div",{style:{height:16,background:i.accent,width:"100%"}}),e.jsxs("div",{style:{padding:"36px 80px 24px",display:"flex",justifyContent:"space-between",alignItems:"baseline",borderBottom:`1px solid ${i.hairline}`},children:[e.jsx("span",{style:{fontFamily:i.display,fontWeight:700,fontSize:22,letterSpacing:"0.24em",textTransform:"uppercase",color:i.accent},children:"Wystem · The Knowledge Commons"}),e.jsx("span",{style:{fontFamily:i.serif,fontStyle:"italic",fontSize:24,color:i.inkMuted},children:"Filed continuously"})]}),e.jsx("div",{style:{flex:1,padding:"40px 80px",display:"flex",flexDirection:"column",justifyContent:"center"},children:e.jsxs("h1",{style:{fontFamily:i.display,fontWeight:700,fontSize:96,lineHeight:.98,color:i.ink,margin:0,letterSpacing:"-0.025em",maxWidth:"14ch"},children:["Read what the",e.jsx("br",{}),"social sector",e.jsx("br",{}),"already knows",e.jsx("span",{style:{color:i.accent},children:"."})]})}),e.jsxs("div",{style:{padding:"20px 80px",borderTop:`1px solid ${i.hairline}
1`,display:"flex",gap:32,alignItems:"baseline"},children:[e.jsx(r,{n:"49",label:"orgs filed"}),e.jsx(r,{n:"218",label:"insights"}),e.jsx(r,{n:"73",label:"signals"}),e.jsx("span",{style:{flex:1}}),e.jsx("span",{style:{fontFamily:i.display,fontSize:24,fontWeight:700,color:i.inkSecondary,letterSpacing:"0.02em"},children:"wystem.ai"})]})]}),U=()=>e.jsxs("div",{style:{width:"100%",height:"100%",background:i.surfacePage,display:"flex",flexDirection:"column",padding:"88px 96px"},children:[e.jsxs("p",{style:{fontFamily:i.serif,fontStyle:"italic",fontSize:56,lineHeight:1.25,color:i.inkMuted,margin:0},children:[e.jsx("span",{style:{color:i.accent},children:"Q."})," ","Where in India have organisations documented climate-induced migration?"]}),e.jsxs("p",{style:{fontFamily:i.display,fontWeight:700,fontSize:56,lineHeight:1.2,color:i.ink,margin:"40px 0 0",letterSpacing:"-0.015em"},children:[e.jsx("span",{style:{color:i.accent},children:"A."})," ","Bhitarkanika · Sundarbans · Aravallis. ",e.jsx("span",{style:{color:i.inkMuted},children:"And eight more."})]}),e.jsxs("div",{style:{marginTop:"auto",display:"flex",justifyContent:"space-between",alignItems:"baseline"},children:[e.jsx("span",{style:{fontFamily:i.display,fontWeight:700,fontSize:22,letterSpacing:"0.24em",textTransform:"uppercase",color:i.inkMuted},children:"Ask the commons at"}),e.jsx(l,{size:52,muted:!0})]})]}),Y=[{id:"v01",label:"Wordmark + tagline",tagline:"Spacious, brand-led. The safest read.",Component:N},{id:"v02",label:"Provenance card",tagline:"Civic-archive register with the live stat strip.",Component:L},{id:"v03",label:"Question lead",tagline:"A pulled-quote signal in display serif italic.",Component:_},{id:"v04",label:"Glyph family",tagline:"The six kinds as a geometric mosaic.",Component:G},{id:"v05",label:"Umbrella stack",tagline:"Two-column directory feel; sienna right panel.",Component:B},{id:"v06",label:"Manifesto",tagline:"Pure serif statement. Editorial voice.",Component:$},{id:"v07",label:"Constellation",tagline:"Abstract corpus dot-pattern beneath the wordmark.",Component:V},{id:"v08",label:"Magazine cover",tagline:"Sample featured headline body. Cover register.",Component:K},{id:"v09",label:"Civic-archive dateline",tagline:"Newspaper rule + filing strip. Institutional.",Component:Q},{id:"v10",label:"Editorial Q&A",tagline:"A conversational Q-and-A read.",Component:U}],o={surfacePage:"#fafaf4",ink:"#0f172a",accent:"#b5621e",accentSecondary:"#059669",display:'"Host Grotesk", system-ui, -apple-system, sans-serif'},C="#059669",T="#b5621e",q=({size:t=32})=>e.jsxs("span",{style:{fontFamily:o.display,fontWeight:800,fontSize:t,letterSpacing:"-0.03em",lineHeight:1},children:[e.jsx("span",{style:{color:C},children:"wystem"}),e.jsx("span",{style:{color:T},children:".ai"})]}),X=[{kind:"signals",label:"SIGNALS",displayLabel:"Signals",kicker:"What the commons is asking for",definition:"Voiced demands · Open questions · Across organisations",Icon:W,accent:o.accentSecondary},{kind:"insights",label:"INSIGHTS",displayLabel:"Insights",kicker:"What the commons has learned",definition:"Articles · Recipes · Findings · Data stories",Icon:x,accent:o.accent},{kind:"organizations",label:"ORGANISATIONS",displayLabel:"Organisations",kicker:"Every contributor to the commons",definition:"Profiles · Documents · Derived knowledge",Icon:P,accent:o.accent},{kind:"projects",label:"PROJECTS",displayLabel:"Projects",kicker:"Cross-org initiatives in progress",definition:"Coordinated work · Two or more orgs · What they've learned",Icon:R,accent:o.accent},{kind:"places",label:"PLACES",displayLabel:"Places",kicker:"Where the work is grounded",definition:"Geographies · Coverage · Evidence of work",Icon:D,accent:o.accent}],z=({title:t,size:n=64})=>e.jsxs("p",{style:{fontFamily:o.display,fontSize:n,fontWeight:700,letterSpacing:"-0.02em",lineHeight:1.1,color:o.ink,margin:0,display:"flex",alignItems:"baseline",flexWrap:"wrap",justifyContent:"center",textAlign:"center",maxWidth:"90%"},children:[e.jsxs("span",{children:[t," on "]}),e.jsx("span",{style:{color:C,fontWeight:800,letterSpacing:"-0.03em"},children:"wystem"}),e.jsx("span",{style:{color:T,fontWeight:800,letterSpacing:"-0.03em"},children:".ai"})]}),J=({spec:t})=>e.jsxs("div",{style:{width:"100%",height:"100%",background:o.surfacePage,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:56,border:`14px solid ${t.accent}`,boxSizing:"border-box"},children:[e.jsx(t.Icon,{size:260,style:{color:t.accent}}),e.jsx(z,{title:t.displayLabel,size:68})]}),Z=X.map(t=>({id:`dir-${t.kind}`,label:`Directory · ${t.label}`,url:`/${t.kind}`,Component:()=>e.jsx(J,{spec:t})})),ee=[{id:"imm-article",kindLabel:"ARTICLE",displayKind:"Article",headline:"Mapping human-crocodile c
1onflicts in Bhitarkanika.",Icon:v,accent:o.accent,url:"/immersive/<slug>"},{id:"imm-finding",kindLabel:"FINDING",displayKind:"Finding",headline:"Three organisations show how climate recovery starts at the household scale.",Icon:x,accent:o.accent,url:"/finding/<id>"},{id:"imm-recipe",kindLabel:"RECIPE",displayKind:"Recipe",headline:"Run dedicated camps to find children at risk during heatwaves.",Icon:b,accent:o.accent,url:"/recipe/<id>"},{id:"imm-story",kindLabel:"DATA STORY",displayKind:"Data story",headline:"Crocodile overpopulation drives severe conflict and economic despair.",Icon:S,accent:o.accent,url:"/story/<id>"},{id:"imm-signal",kindLabel:"SIGNAL · OPEN QUESTION",displayKind:"Signal",headline:"How can communities recover livelihoods after extreme weather?",Icon:k,accent:o.accentSecondary,url:"/signal/<slug>"}],ie=({spec:t})=>e.jsxs("div",{style:{width:"100%",height:"100%",background:o.surfacePage,backgroundImage:t.imageUrl?`url(${t.imageUrl})`:void 0,backgroundSize:"cover",backgroundPosition:"center",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:56,border:`14px solid ${t.accent}`,boxSizing:"border-box",position:"relative"},children:[!t.imageUrl&&e.jsxs(e.Fragment,{children:[e.jsx(t.Icon,{size:240,style:{color:t.accent}}),e.jsx(z,{title:t.displayKind,size:68})]}),e.jsx("div",{style:{position:"absolute",bottom:36,right:44,background:"rgba(255,255,255,0.96)",padding:"20px 32px",display:t.imageUrl?"flex":"none",alignItems:"center"},children:e.jsx(q,{size:56})})]}),te=ee.map(t=>({id:t.id,label:`Immersive · ${t.kindLabel}`,url:t.url,Component:()=>e.jsx(ie,{spec:t})})),j={fill:"none",stroke:"currentColor",strokeWidth:1.25,strokeLinecap:"round",strokeLinejoin:"round"},ne=({size:t=16,style:n})=>e.jsxs("svg",{width:t,height:t,viewBox:"0 0 16 16",...j,style:n,children:[e.jsx("path",{d:"M 8 2 Q 12.5 2 12.5 6.25 Q 12.5 9.5 8 14 Q 3.5 9.5 3.5 6.25 Q 3.5 2 8 2 Z"}),e.jsx("circle",{cx:"8",cy:"6.25",r:"1.5",fill:"currentColor",stroke:"none"})]}),se=({size:t=16,style:n})=>e.jsxs("svg",{width:t,height:t,viewBox:"0 0 16 16",...j,style:n,children:[e.jsx("line",{x1:"8",y1:"4",x2:"4",y2:"12"}),e.jsx("line",{x1:"8",y1:"4",x2:"12",y2:"12"}),e.jsx("line",{x1:"4",y1:"12",x2:"12",y2:"12"}),e.jsx("circle",{cx:"8",cy:"4",r:"1.4",fill:"currentColor",stroke:"none"}),e.jsx("circle",{cx:"4",cy:"12",r:"1.4",fill:"currentColor",stroke:"none"}),e.jsx("circle",{cx:"12",cy:"12",r:"1.4",fill:"currentColor",stroke:"none"})]}),ae=({size:t=16,style:n})=>e.jsxs("svg",{width:t,height:t,viewBox:"0 0 16 16",...j,style:n,children:[e.jsx("circle",{cx:"6",cy:"8",r:"4"}),e.jsx("circle",{cx:"10",cy:"8",r:"4"})]}),m={surfacePage:"#fafaf4",ink:"#0f172a",accent:"#b5621e",display:'"Host Grotesk", system-ui, -apple-system, sans-serif'},oe="#059669",re="#b5621e",le=t=>t==="org"?se:t==="project"?ae:ne,p=({name:t,kind:n})=>{const s=le(n),a=(t||"").trim()||"Untitled",c=a.length>22?88:a.length>14?112:144;return e.jsxs("div",{style:{width:"100%",height:"100%",background:m.surfacePage,display:"flex",flexDirection:"column",justifyContent:"center",padding:"64px 88px",gap:32},children:[e.jsx(s,{size:108,style:{color:m.accent}}),e.jsx("h1",{style:{fontFamily:m.display,fontWeight:800,fontSize:c,letterSpacing:"-0.035em",lineHeight:.95,color:m.ink,margin:0},children:a}),e.jsxs("p",{style:{fontFamily:m.display,fontWeight:800,fontSize:80,letterSpacing:"-0.03em",lineHeight:1,margin:0,display:"flex",alignItems:"baseline"},children:[e.jsx("span",{style:{color:oe,display:"flex"},children:"wystem"}),e.jsx("span",{style:{color:re,display:"flex"},children:".ai"})]})]})},w=.5,ce=d*w,de=f*w,me=[{label:"WhatsApp",width:280},{label:"Slack",width:360},{label:"X / Twitter",width:520}],he={v04:{title:"wystem.ai — The knowledge commons of the social sector",description:"A searchable knowledge commons of articles, findings, recipes, data stories, and the signals organisations are surfacing — all citation-grounded in the documents they share.",url:"wystem.ai"},"dir-signals":{title:"Signals on wystem.ai",description:"What the commons is asking for — voiced demands and open questions surfacing across organisations.",url:"wystem.ai/signals"},"dir-insights":{title:"Insights on wystem.ai",description:"What the commons has learned — articles, recipes, findings, and data stories drawn from the social sector's documents.",url:"wystem.ai/insights"},"dir-organizations":{title:"Organisations on wystem.ai",description:"Every contributor to the commons — their profiles, documents, and the knowledge derived from them.",url:"wystem.ai/organizations"},"dir-projects":{title:"Projects on wystem.ai",description:"Cross-organisation initiatives in progress — coordinated work and what the contributors are learning.",url:"wystem.ai/projects"},"dir-places":{title:"Places on wystem.ai",description:"Where the work is grounded — geographies, coverage, and the artefacts tied to them.",url:"wystem.ai/places"}
1,"imm-article":{title:"Mapping human-crocodile conflicts in Bhitarkanika.",description:"Article from the wystem.ai commons. A field-grounded look at how communities navigate proximity to predator habitat — losses, livelihoods, and adaptive practices.",url:"wystem.ai/immersive/<slug>"},"imm-finding":{title:"Three organisations show how climate recovery starts at the household scale.",description:"Finding from the wystem.ai commons — Goonj, SEEDS, Selco. Cross-organisation patterns in post-disaster recovery centred on household livelihoods rather than infrastructure.",url:"wystem.ai/finding/<id>"},"imm-recipe":{title:"Run dedicated camps to find children at risk during heatwaves.",description:"Recipe from the wystem.ai commons. Method for proactively identifying heat-vulnerable children before crises peak — staging, screening criteria, and follow-through.",url:"wystem.ai/recipe/<id>"},"imm-story":{title:"Crocodile overpopulation drives severe conflict and economic despair.",description:"Data story from the wystem.ai commons — Bhitarkanika dataset. Quantitative breakdown of conflict incidents, displaced households, and economic loss across affected villages.",url:"wystem.ai/story/<id>"},"imm-signal":{title:"How can communities recover livelihoods after extreme weather?",description:"Open question from the wystem.ai commons — drawing from Goonj, SEEDS. Surfaced from the documents organisations are sharing across recovery work.",url:"wystem.ai/signal/<slug>"},"entity-org-socratus":{title:"Socratus — Organisation on wystem.ai",description:"Socratus's contribution to the wystem.ai commons — their articles, findings, recipes, and data stories.",url:"wystem.ai/org/socratus"},"entity-org-goonj":{title:"Goonj — Organisation on wystem.ai",description:"Goonj's contribution to the wystem.ai commons — their articles, findings, recipes, and data stories.",url:"wystem.ai/org/goonj"},"entity-project-ace-scanner":{title:"ACE Scanner — Project on wystem.ai",description:"ACE Scanner — a cross-organisation project in the wystem.ai commons. Coordinated work and what the contributors have learned.",url:"wystem.ai/project/ace-scanner"},"entity-project-bhitarkanika":{title:"Bhitarkanika conflict mapping — Project on wystem.ai",description:"Bhitarkanika conflict mapping — a cross-organisation project in the wystem.ai commons. Coordinated work and what the contributors have learned.",url:"wystem.ai/project/bhitarkanika"}},pe=[{id:"entity-org-socratus",label:"Org · Socratus",url:"/og-image/org/socratus.png",Component:()=>e.jsx(p,{name:"Socratus",kind:"org"})},{id:"entity-org-goonj",label:"Org · Goonj",url:"/og-image/org/goonj.png",Component:()=>e.jsx(p,{name:"Goonj",kind:"org"})},{id:"entity-project-ace-scanner",label:"Project · ACE Scanner",url:"/og-image/project/ace-scanner.png",Component:()=>e.jsx(p,{name:"ACE Scanner",kind:"project"})},{id:"entity-project-bhitarkanika",label:"Project · Bhitarkanika",url:"/og-image/project/bhitarkanika.png",Component:()=>e.jsx(p,{name:"Bhitarkanika conflict mapping",kind:"project"})}],ge=({Component:t,width:n,label:s,meta:a})=>{const c=Math.round(n/d*f),I=n/d;return e.jsxs("div",{children:[e.jsxs("p",{style:{fontFamily:"var(--wystem-font-display)",fontSize:10,fontWeight:700,letterSpacing:"0.22em",textTransform:"uppercase",color:"var(--wystem-ink-faint)",margin:"0 0 6px"},children:[s," ",e.jsxs("span",{style:{color:"var(--wystem-ink-muted)",fontWeight:500,marginLeft:4},children:[n,"px"]})]}),e.jsxs("div",{style:{width:n,border:"1px solid var(--wystem-hairline)",borderRadius:8,overflow:"hidden",background:"#fff",boxShadow:"0 1px 2px rgba(0,0,0,0.06)"},children:[e.jsx("div",{style:{width:n,height:c,background:"var(--wystem-surface-page)",overflow:"hidden"},children:e.jsx("div",{style:{width:d,height:f,transform:`scale(${I})`,transformOrigin:"top left"},children:e.jsx(t,{})})}),e.jsxs("div",{style:{padding:"10px 12px 12px",display:"flex",flexDirection:"column",gap:4},children:[e.jsx("p",{style:{fontFamily:"var(--wystem-font-display)",fontSize:13,fontWeight:700,lineHeight:1.25,color:"#0f172a",margin:0,display:"-webkit-box",WebkitLineClamp:2,WebkitBoxOrient:"vertical",overflow:"hidden"},children:a.title}),e.jsx("p",{style:{fontFamily:"var(--wystem-font-display)",fontSize:11,lineHeight:1.35,color:"#475569",margin:0,display:"-webkit-box",WebkitLineClamp:3,WebkitBoxOrient:"vertical",overflow:"hidden"},children:a.description}),e.jsx("p",{style:{fontFamily:"var(--wystem-font-display)",fontSize:10,
1color:"#94a3b8",margin:"2px 0 0",textTransform:"lowercase",letterSpacing:"0.02em"},children:a.url})]})]})]})},g=({entry:t,idColor:n})=>{const s=he[t.id];return e.jsxs("article",{children:[e.jsxs("div",{style:{display:"flex",alignItems:"baseline",justifyContent:"space-between",marginBottom:10,gap:12,flexWrap:"wrap"},children:[e.jsxs("h2",{style:{fontFamily:"var(--wystem-font-display)",fontWeight:700,fontSize:18,letterSpacing:"-0.01em",color:"var(--wystem-ink-primary)",margin:0},children:[e.jsx("span",{style:{color:n??"var(--wystem-accent-primary-ink, #b5621e)",fontSize:11,fontWeight:800,letterSpacing:"0.18em",textTransform:"uppercase",marginRight:10},children:t.id}),t.label]}),t.url&&e.jsx("code",{style:{fontFamily:"var(--wystem-font-mono, ui-monospace)",fontSize:11,color:"var(--wystem-ink-muted)",background:"var(--wystem-surface-plate-subtle)",padding:"2px 8px",borderRadius:2},children:t.url})]}),t.tagline&&e.jsx("p",{style:{fontFamily:"var(--wystem-font-serif)",fontStyle:"italic",fontSize:13,color:"var(--wystem-ink-muted)",margin:"0 0 12px"},children:t.tagline}),e.jsx("div",{style:{width:ce,height:de,border:"1px solid var(--wystem-hairline)",borderRadius:4,overflow:"hidden",background:"var(--wystem-surface-page)",boxShadow:"0 1px 3px rgba(0,0,0,0.04)"},children:e.jsx("div",{style:{width:d,height:f,transform:`scale(${w})`,transformOrigin:"top left"},children:e.jsx(t.Component,{})})}),e.jsxs("div",{style:{marginTop:16,paddingTop:14,borderTop:"1px dashed var(--wystem-hairline)"},children:[e.jsx("p",{style:{fontFamily:"var(--wystem-font-display)",fontSize:10,fontWeight:700,letterSpacing:"0.2em",textTransform:"uppercase",color:"var(--wystem-ink-muted)",margin:"0 0 12px"},children:"As it renders in feed"}),s?e.jsx("div",{style:{display:"flex",flexWrap:"wrap",gap:16},children:me.map(a=>e.jsx(ge,{Component:t.Component,width:a.width,label:a.label,meta:s},a.label))}):e.jsx("p",{style:{fontFamily:"var(--wystem-font-serif)",fontStyle:"italic",fontSize:12,color:"var(--wystem-ink-faint)",margin:0},children:"(no og:meta registered for this card id — add to PREVIEW_META)"})]})]})},y=({kicker:t,title:n,subtitle:s})=>e.jsxs("header",{style:{marginTop:64,marginBottom:24},children:[e.jsx("p",{style:{fontFamily:"var(--wystem-font-display)",fontSize:11,fontWeight:800,letterSpacing:"0.28em",textTransform:"uppercase",color:"var(--wystem-accent-primary-ink, #b5621e)",margin:0},children:t}),e.jsx("h2",{style:{fontFamily:"var(--wystem-font-display)",fontWeight:700,fontSize:"clamp(1.25rem, 2.5vw, 1.75rem)",letterSpacing:"-0.015em",lineHeight:1.15,color:"var(--wystem-ink-primary)",margin:"10px 0 0"},children:n}),e.jsx("p",{style:{fontFamily:"var(--wystem-font-serif)",fontStyle:"italic",fontSize:15,color:"var(--wystem-ink-secondary)",marginTop:10,maxWidth:"64ch"},children:s})]}),we=()=>M()?e.jsxs("div",{className:"max-w-6xl mx-auto px-6 py-12",children:[e.jsx(F,{children:e.jsx("title",{children:"OG card system · wystem.ai lab"})}),e.jsxs("header",{className:"mb-10",children:[e.jsx("p",{style:{fontFamily:"var(--wystem-font-display)",fontSize:11,fontWeight:700,letterSpacing:"0.28em",textTransform:"uppercase",color:"var(--wystem-accent-primary-ink, #b5621e)",margin:0},children:"Lab · social card system"}),e.jsx("h1",{style:{fontFamily:"var(--wystem-font-display)",fontWeight:700,fontSize:"clamp(1.5rem, 3vw, 2rem)",letterSpacing:"-0.02em",lineHeight:1.1,color:"var(--wystem-ink-primary)",margin:"12px 0 0"},children:"OG card preview — homepage variants · directory templates · immersive templates."}),e.jsx("p",{style:{fontFamily:"var(--wystem-font-serif)",fontStyle:"italic",fontSize:16,color:"var(--wystem-ink-secondary)",marginTop:16,maxWidth:"64ch"},children:"Every card renders at the canonical 1200×630 dimensions and is shown at half scale plus three feed widths (WhatsApp / Slack / X) so small-size legibility is visible at a glance. Section one is a design pick; sections two and three are template confirmations across the page types."})]}),e.jsx(y,{kicker:"01 · Homepage",title:"The picked design — V04 (Glyph family).",subtitle:"Shared on the root URL (https://wystem.ai/). Top wordmark band sits on a cream plate so the brand is the first thing read;
1 3×2 mosaic below introduces the six surface kinds. Other candidates pruned 2026-05-26."}),e.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-8",children:Y.filter(n=>n.id==="v04").map(n=>e.jsx(g,{entry:n},n.id))}),e.jsx(y,{kicker:"02 · Directory templates",title:"One shared design, five sections.",subtitle:"What the OG card looks like when someone shares /signals, /insights, /organizations, /projects, or /places. Image is pure section identity (chromatic plate + glyph + label + wystem credit); og:title + og:description carry the meaning."}),e.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-8",children:Z.map(n=>e.jsx(g,{entry:n},n.id))}),e.jsx(y,{kicker:"03 · Immersive templates (fallback)",title:"Kind identity, used only when the artefact has no generated illustration.",subtitle:"On prod the OG image for /immersive/<slug>, /finding/<id>, /recipe/<id>, /story/<id>, and /signal/<slug> is the artefact's own generated thumbnail from /api/image-proxy. These chromatic plates only appear when image-proxy returns nothing — the kind glyph + label tell the sharer it's a wystem artefact of that kind."}),e.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-8",children:te.map(n=>e.jsx(g,{entry:n},n.id))}),e.jsx(y,{kicker:"04 · Dynamic entity cards",title:"Per-org and per-project — rendered on demand, cached to disk.",subtitle:"When someone shares /org/socratus or /project/ace-scanner, the OG image is rendered server-side from the entity's name and cached to public/og/orgs/<slug>.png or public/og/projects/<slug>.png. First hit ≈600ms; cached hits ≈1ms. Below are four examples (two orgs, two projects). Open the .png URL to see the actual prod render."}),e.jsx("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-8",children:pe.map(n=>e.jsx(g,{entry:n},n.id))}),e.jsx("footer",{style:{marginTop:80,paddingTop:24,borderTop:"1px solid var(--wystem-hairline)",fontFamily:"var(--wystem-font-serif)",fontStyle:"italic",fontSize:13,color:"var(--wystem-ink-muted)"},children:"Each card shows the canonical 1200×630 image AND a feed mock — image paired with the real og:title + og:description served by routes/og.ts — at three feed widths. That pairing is the unit the sharer actually sees."})]}):e.jsx("div",{className:"max-w-4xl mx-auto px-6 py-24 text-center",children:e.jsxs("p",{style:{fontFamily:"var(--wystem-font-serif)",fontStyle:"italic",color:"var(--wystem-ink-muted)",fontSize:"1.125rem"},children:["This page is admin-only. Append ",e.jsx("code",{children:"?admin=1"})," to the URL to enter admin mode."]})});export{we as OGPreviewPage,we as default};

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.