Deploying to pages from @ thepaperpilot/pages@5632b8a6fd 🚀

This commit is contained in:
thepaperpilot 2024-06-17 05:09:50 +00:00
parent 8c509e7595
commit ceb03fffd1
403 changed files with 1424 additions and 1424 deletions

File diff suppressed because one or more lines are too long

View file

@ -1 +1 @@
import{U as o,ap as p,aq as u,ar as l,as as c,at as f,au as d,av as m,aw as h,ax as A,ay as g,d as v,u as y,y as P,x as w,az as C,aA as R,aB as b,aC as E}from"./chunks/framework.CK8QU5WH.js";import{R as S}from"./chunks/theme.CO9joMym.js";function i(e){if(e.extends){const a=i(e.extends);return{...a,...e,async enhanceApp(t){a.enhanceApp&&await a.enhanceApp(t),e.enhanceApp&&await e.enhanceApp(t)}}}return e}const s=i(S),T=v({name:"VitePressApp",setup(){const{site:e,lang:a,dir:t}=y();return P(()=>{w(()=>{document.documentElement.lang=a.value,document.documentElement.dir=t.value})}),e.value.router.prefetchLinks&&C(),R(),b(),s.setup&&s.setup(),()=>E(s.Layout)}});async function _(){globalThis.__VITEPRESS__=!0;const e=D(),a=x();a.provide(u,e);const t=l(e.route);return a.provide(c,t),a.component("Content",f),a.component("ClientOnly",d),Object.defineProperties(a.config.globalProperties,{$frontmatter:{get(){return t.frontmatter.value}},$params:{get(){return t.page.value.params}}}),s.enhanceApp&&await s.enhanceApp({app:a,router:e,siteData:m}),{app:a,router:e,data:t}}function x(){return h(T)}function D(){let e=o,a;return A(t=>{let n=g(t),r=null;return n&&(e&&(a=n),(e||a===n)&&(n=n.replace(/\.js$/,".lean.js")),r=import(n)),o&&(e=!1),r},s.NotFound)}o&&_().then(({app:e,router:a,data:t})=>{a.go().then(()=>{p(a.route,t.site),e.mount("#app")})});export{_ as createApp}; import{U as o,ao as p,ap as u,aq as l,ar as c,as as f,at as d,au as m,av as h,aw as A,ax as g,d as v,u as y,y as P,x as w,ay as C,az as R,aA as b,aB as E}from"./chunks/framework.CsM8T_AH.js";import{R as S}from"./chunks/theme.CQ2FI30M.js";function i(e){if(e.extends){const a=i(e.extends);return{...a,...e,async enhanceApp(t){a.enhanceApp&&await a.enhanceApp(t),e.enhanceApp&&await e.enhanceApp(t)}}}return e}const s=i(S),T=v({name:"VitePressApp",setup(){const{site:e,lang:a,dir:t}=y();return P(()=>{w(()=>{document.documentElement.lang=a.value,document.documentElement.dir=t.value})}),e.value.router.prefetchLinks&&C(),R(),b(),s.setup&&s.setup(),()=>E(s.Layout)}});async function _(){globalThis.__VITEPRESS__=!0;const e=D(),a=x();a.provide(u,e);const t=l(e.route);return a.provide(c,t),a.component("Content",f),a.component("ClientOnly",d),Object.defineProperties(a.config.globalProperties,{$frontmatter:{get(){return t.frontmatter.value}},$params:{get(){return t.page.value.params}}}),s.enhanceApp&&await s.enhanceApp({app:a,router:e,siteData:m}),{app:a,router:e,data:t}}function x(){return h(T)}function D(){let e=o,a;return A(t=>{let n=g(t),r=null;return n&&(e&&(a=n),(e||a===n)&&(n=n.replace(/\.js$/,".lean.js")),r=import(n)),o&&(e=!1),r},s.NotFound)}o&&_().then(({app:e,router:a,data:t})=>{a.go().then(()=>{p(a.route,t.site),e.mount("#app")})});export{_ as createApp};

File diff suppressed because one or more lines are too long

View file

@ -1 +1 @@
import{_ as t,c as e,o as a,a5 as s}from"./chunks/framework.CK8QU5WH.js";const m=JSON.parse('{"title":"Changelog","description":"","frontmatter":{"title":"Changelog","prev":false,"next":false},"headers":[],"relativePath":"changelog/index.md","filePath":"changelog/index.md"}'),n={name:"changelog/index.md"},o=s("",1),r=[o];function l(d,p,c,i,y,h){return a(),e("div",null,r)}const w=t(n,[["render",l]]);export{m as __pageData,w as default}; import{_ as t,c as e,o as a,a4 as s}from"./chunks/framework.CsM8T_AH.js";const m=JSON.parse('{"title":"Changelog","description":"","frontmatter":{"title":"Changelog","prev":false,"next":false},"headers":[],"relativePath":"changelog/index.md","filePath":"changelog/index.md"}'),n={name:"changelog/index.md"},o=s("",1),r=[o];function l(d,p,c,i,y,h){return a(),e("div",null,r)}const w=t(n,[["render",l]]);export{m as __pageData,w as default};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a5 as i}from"./chunks/framework.CK8QU5WH.js";const f=JSON.parse('{"title":"ActivityPub","description":"","frontmatter":{"public":"true","slug":"activitypub","tags":["Decentralized"],"title":"ActivityPub","prev":false,"next":false},"headers":[],"relativePath":"garden/activitypub/index.md","filePath":"garden/activitypub/index.md"}'),r={name:"garden/activitypub/index.md"},c=i('<h1 id="activitypub" tabindex="-1">ActivityPub <a class="header-anchor" href="#activitypub" aria-label="Permalink to &quot;ActivityPub&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/fediverse/">Fediverse</a></p></blockquote><blockquote><p>Tags: <a href="/garden/decentralized/">Decentralized</a></p></blockquote><p><a href="https://activitypub.rocks" target="_blank" rel="noreferrer">ActivityPub</a> is a protocol for <a href="/garden/fediverse/">Federated Social Media</a></p>',4),o=[c];function n(d,s,l,p,_,u){return a(),t("div",null,o)}const v=e(r,[["render",n]]);export{f as __pageData,v as default}; import{_ as e,c as t,o as a,a4 as i}from"./chunks/framework.CsM8T_AH.js";const f=JSON.parse('{"title":"ActivityPub","description":"","frontmatter":{"public":"true","slug":"activitypub","tags":["Decentralized"],"title":"ActivityPub","prev":false,"next":false},"headers":[],"relativePath":"garden/activitypub/index.md","filePath":"garden/activitypub/index.md"}'),r={name:"garden/activitypub/index.md"},c=i('<h1 id="activitypub" tabindex="-1">ActivityPub <a class="header-anchor" href="#activitypub" aria-label="Permalink to &quot;ActivityPub&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/fediverse/">Fediverse</a></p></blockquote><blockquote><p>Tags: <a href="/garden/decentralized/">Decentralized</a></p></blockquote><p><a href="https://activitypub.rocks" target="_blank" rel="noreferrer">ActivityPub</a> is a protocol for <a href="/garden/fediverse/">Federated Social Media</a></p>',4),o=[c];function n(d,s,l,p,_,u){return a(),t("div",null,o)}const v=e(r,[["render",n]]);export{f as __pageData,v as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a5 as i}from"./chunks/framework.CK8QU5WH.js";const f=JSON.parse('{"title":"ActivityPub","description":"","frontmatter":{"public":"true","slug":"activitypub","tags":["Decentralized"],"title":"ActivityPub","prev":false,"next":false},"headers":[],"relativePath":"garden/activitypub/index.md","filePath":"garden/activitypub/index.md"}'),r={name:"garden/activitypub/index.md"},c=i("",4),o=[c];function n(d,s,l,p,_,u){return a(),t("div",null,o)}const v=e(r,[["render",n]]);export{f as __pageData,v as default}; import{_ as e,c as t,o as a,a4 as i}from"./chunks/framework.CsM8T_AH.js";const f=JSON.parse('{"title":"ActivityPub","description":"","frontmatter":{"public":"true","slug":"activitypub","tags":["Decentralized"],"title":"ActivityPub","prev":false,"next":false},"headers":[],"relativePath":"garden/activitypub/index.md","filePath":"garden/activitypub/index.md"}'),r={name:"garden/activitypub/index.md"},c=i("",4),o=[c];function n(d,s,l,p,_,u){return a(),t("div",null,o)}const v=e(r,[["render",n]]);export{f as __pageData,v as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a5 as n}from"./chunks/framework.CK8QU5WH.js";const u=JSON.parse('{"title":"Advent Incremental","description":"","frontmatter":{"public":"true","slug":"advent-incremental","tags":["My Projects","Profectus"],"title":"Advent Incremental","prev":false,"next":false},"headers":[],"relativePath":"garden/advent-incremental/index.md","filePath":"garden/advent-incremental/index.md"}'),r={name:"garden/advent-incremental/index.md"},o=n('<h1 id="advent-incremental" tabindex="-1">Advent Incremental <a class="header-anchor" href="#advent-incremental" aria-label="Permalink to &quot;Advent Incremental&quot;"></a></h1><blockquote><p>Tags: <a href="/garden/my-projects/">My Projects</a>, <a href="/garden/profectus/">Profectus</a></p></blockquote><p>Play it <a href="https://thepaperpilot.org/advent" target="_blank" rel="noreferrer">here</a>!</p><p>An <a href="/garden/open-source/">Open Source</a> game made in <a href="/garden/profectus/">Profectus</a> over the course of 1 month by myself and other devs I know in the Incremental Games community!</p><p>I had the idea of an advent-style game that unlocked new pieces of content every real-life day a couple days before December started.</p><p>This was one of the most hectic months of my life!</p><p>I&#39;m super happy with how it turned out. It ended up being way more ambitious than I anticipated but the end result is super large and awesome!</p><p>The <a href="https://tvtropes.org/pmwiki/pmwiki.php/VideoGame/AdventIncremental" target="_blank" rel="noreferrer">TV Tropes</a> page on this game mentions some of the cool things about this game</p>',8),s=[o];function c(i,d,p,l,m,h){return a(),t("div",null,s)}const _=e(r,[["render",c]]);export{u as __pageData,_ as default}; import{_ as e,c as t,o as a,a4 as n}from"./chunks/framework.CsM8T_AH.js";const u=JSON.parse('{"title":"Advent Incremental","description":"","frontmatter":{"public":"true","slug":"advent-incremental","tags":["My Projects","Profectus"],"title":"Advent Incremental","prev":false,"next":false},"headers":[],"relativePath":"garden/advent-incremental/index.md","filePath":"garden/advent-incremental/index.md"}'),r={name:"garden/advent-incremental/index.md"},o=n('<h1 id="advent-incremental" tabindex="-1">Advent Incremental <a class="header-anchor" href="#advent-incremental" aria-label="Permalink to &quot;Advent Incremental&quot;"></a></h1><blockquote><p>Tags: <a href="/garden/my-projects/">My Projects</a>, <a href="/garden/profectus/">Profectus</a></p></blockquote><p>Play it <a href="https://thepaperpilot.org/advent" target="_blank" rel="noreferrer">here</a>!</p><p>An <a href="/garden/open-source/">Open Source</a> game made in <a href="/garden/profectus/">Profectus</a> over the course of 1 month by myself and other devs I know in the Incremental Games community!</p><p>I had the idea of an advent-style game that unlocked new pieces of content every real-life day a couple days before December started.</p><p>This was one of the most hectic months of my life!</p><p>I&#39;m super happy with how it turned out. It ended up being way more ambitious than I anticipated but the end result is super large and awesome!</p><p>The <a href="https://tvtropes.org/pmwiki/pmwiki.php/VideoGame/AdventIncremental" target="_blank" rel="noreferrer">TV Tropes</a> page on this game mentions some of the cool things about this game</p>',8),s=[o];function c(i,d,p,l,m,h){return a(),t("div",null,s)}const _=e(r,[["render",c]]);export{u as __pageData,_ as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a5 as n}from"./chunks/framework.CK8QU5WH.js";const u=JSON.parse('{"title":"Advent Incremental","description":"","frontmatter":{"public":"true","slug":"advent-incremental","tags":["My Projects","Profectus"],"title":"Advent Incremental","prev":false,"next":false},"headers":[],"relativePath":"garden/advent-incremental/index.md","filePath":"garden/advent-incremental/index.md"}'),r={name:"garden/advent-incremental/index.md"},o=n("",8),s=[o];function c(i,d,p,l,m,h){return a(),t("div",null,s)}const _=e(r,[["render",c]]);export{u as __pageData,_ as default}; import{_ as e,c as t,o as a,a4 as n}from"./chunks/framework.CsM8T_AH.js";const u=JSON.parse('{"title":"Advent Incremental","description":"","frontmatter":{"public":"true","slug":"advent-incremental","tags":["My Projects","Profectus"],"title":"Advent Incremental","prev":false,"next":false},"headers":[],"relativePath":"garden/advent-incremental/index.md","filePath":"garden/advent-incremental/index.md"}'),r={name:"garden/advent-incremental/index.md"},o=n("",8),s=[o];function c(i,d,p,l,m,h){return a(),t("div",null,s)}const _=e(r,[["render",c]]);export{u as __pageData,_ as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as t,a5 as l}from"./chunks/framework.CK8QU5WH.js";const m=JSON.parse('{"title":"Artificial Intelligence","description":"","frontmatter":{"public":"true","slug":"artificial-intelligence","title":"Artificial Intelligence","prev":false,"next":false},"headers":[],"relativePath":"garden/artificial-intelligence/index.md","filePath":"garden/artificial-intelligence/index.md"}'),i={name:"garden/artificial-intelligence/index.md"},r=l('<h1 id="artificial-intelligence" tabindex="-1">Artificial Intelligence <a class="header-anchor" href="#artificial-intelligence" aria-label="Permalink to &quot;Artificial Intelligence&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/command-palettes/">Command Palettes</a></p></blockquote><p>Catch all term that refers to many different things</p><p>Generative AI</p><ul><li>Models trained on large amounts of existing human made content in order to produce more of that content</li><li>Copyright concerns over how training data is obtained <ul><li><a href="https://nebula.tv/videos/philosophytube-what-ethical-ai-really-means/" target="_blank" rel="noreferrer">What Ethical AI Really Means</a> by Philosophy Tube <ul><li><blockquote><p>Ethical AI cannot exist under Capitalism</p></blockquote></li></ul></li></ul></li><li>Common Examples <ul><li>LLMs like ChatGPT <ul><li>Some also take voice and video input, like <a href="https://gemini.google.com" target="_blank" rel="noreferrer">Gemini</a> or <a href="https://openai.com/index/hello-gpt-4o/" target="_blank" rel="noreferrer">ChatGPT-4o</a></li></ul></li><li>Art generators like <a href="https://openai.com/index/dall-e-3/" target="_blank" rel="noreferrer">Dall-E</a> or <a href="https://www.midjourney.com/home" target="_blank" rel="noreferrer">Midjourney</a></li></ul></li></ul><p>Human + AI cooperation</p><ul><li><a href="https://www.patreon.com/posts/cyborgs-85486143" target="_blank" rel="noreferrer">&quot;Cyborgs&quot;</a> by Nicky Case</li><li>Personal AI assistants <ul><li><a href="https://doc.searls.com/2024/05/10/personal-vs-personalized/" target="_blank" rel="noreferrer">Personal vs Personalized AI</a></li></ul></li><li><a href="https://maggieappleton.com/home-cooked-software" target="_blank" rel="noreferrer">Home-Cooked Software and Barefoot Developers</a> discusses how language models can help individuals build personal specialized software</li></ul>',7),o=[r];function n(s,c,d,p,h,f){return t(),a("div",null,o)}const g=e(i,[["render",n]]);export{m as __pageData,g as default}; import{_ as e,c as a,o as t,a4 as l}from"./chunks/framework.CsM8T_AH.js";const m=JSON.parse('{"title":"Artificial Intelligence","description":"","frontmatter":{"public":"true","slug":"artificial-intelligence","title":"Artificial Intelligence","prev":false,"next":false},"headers":[],"relativePath":"garden/artificial-intelligence/index.md","filePath":"garden/artificial-intelligence/index.md"}'),i={name:"garden/artificial-intelligence/index.md"},r=l('<h1 id="artificial-intelligence" tabindex="-1">Artificial Intelligence <a class="header-anchor" href="#artificial-intelligence" aria-label="Permalink to &quot;Artificial Intelligence&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/command-palettes/">Command Palettes</a></p></blockquote><p>Catch all term that refers to many different things</p><p>Generative AI</p><ul><li>Models trained on large amounts of existing human made content in order to produce more of that content</li><li>Copyright concerns over how training data is obtained <ul><li><a href="https://nebula.tv/videos/philosophytube-what-ethical-ai-really-means/" target="_blank" rel="noreferrer">What Ethical AI Really Means</a> by Philosophy Tube <ul><li><blockquote><p>Ethical AI cannot exist under Capitalism</p></blockquote></li></ul></li></ul></li><li>Common Examples <ul><li>LLMs like ChatGPT <ul><li>Some also take voice and video input, like <a href="https://gemini.google.com" target="_blank" rel="noreferrer">Gemini</a> or <a href="https://openai.com/index/hello-gpt-4o/" target="_blank" rel="noreferrer">ChatGPT-4o</a></li></ul></li><li>Art generators like <a href="https://openai.com/index/dall-e-3/" target="_blank" rel="noreferrer">Dall-E</a> or <a href="https://www.midjourney.com/home" target="_blank" rel="noreferrer">Midjourney</a></li></ul></li></ul><p>Human + AI cooperation</p><ul><li><a href="https://www.patreon.com/posts/cyborgs-85486143" target="_blank" rel="noreferrer">&quot;Cyborgs&quot;</a> by Nicky Case</li><li>Personal AI assistants <ul><li><a href="https://doc.searls.com/2024/05/10/personal-vs-personalized/" target="_blank" rel="noreferrer">Personal vs Personalized AI</a></li></ul></li><li><a href="https://maggieappleton.com/home-cooked-software" target="_blank" rel="noreferrer">Home-Cooked Software and Barefoot Developers</a> discusses how language models can help individuals build personal specialized software</li></ul>',7),o=[r];function n(s,c,d,p,h,f){return t(),a("div",null,o)}const g=e(i,[["render",n]]);export{m as __pageData,g as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as t,a5 as l}from"./chunks/framework.CK8QU5WH.js";const m=JSON.parse('{"title":"Artificial Intelligence","description":"","frontmatter":{"public":"true","slug":"artificial-intelligence","title":"Artificial Intelligence","prev":false,"next":false},"headers":[],"relativePath":"garden/artificial-intelligence/index.md","filePath":"garden/artificial-intelligence/index.md"}'),i={name:"garden/artificial-intelligence/index.md"},r=l("",7),o=[r];function n(s,c,d,p,h,f){return t(),a("div",null,o)}const g=e(i,[["render",n]]);export{m as __pageData,g as default}; import{_ as e,c as a,o as t,a4 as l}from"./chunks/framework.CsM8T_AH.js";const m=JSON.parse('{"title":"Artificial Intelligence","description":"","frontmatter":{"public":"true","slug":"artificial-intelligence","title":"Artificial Intelligence","prev":false,"next":false},"headers":[],"relativePath":"garden/artificial-intelligence/index.md","filePath":"garden/artificial-intelligence/index.md"}'),i={name:"garden/artificial-intelligence/index.md"},r=l("",7),o=[r];function n(s,c,d,p,h,f){return t(),a("div",null,o)}const g=e(i,[["render",n]]);export{m as __pageData,g as default};

View file

@ -1 +1 @@
import{_ as e,c as r,o as t,a5 as a}from"./chunks/framework.CK8QU5WH.js";const u=JSON.parse('{"title":"ATProto","description":"","frontmatter":{"alias":"The AT Protocol","public":"true","slug":"atproto","tags":["Decentralized"],"title":"ATProto","prev":false,"next":false},"headers":[],"relativePath":"garden/atproto/index.md","filePath":"garden/atproto/index.md"}'),o={name:"garden/atproto/index.md"},n=a('<h1 id="atproto" tabindex="-1">ATProto <a class="header-anchor" href="#atproto" aria-label="Permalink to &quot;ATProto&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/fediverse/">Fediverse</a></p></blockquote><blockquote><p>Tags: <a href="/garden/decentralized/">Decentralized</a></p></blockquote><p>The <a href="https://atproto.com" target="_blank" rel="noreferrer">AT Protocol</a> is a protocol for <a href="/garden/fediverse/">Federated Social Media</a></p><p>Currently only used by <a href="https://bsky.app" target="_blank" rel="noreferrer">Bluesky</a></p><p>In comparison to other <a href="/garden/fediverse/">Fediverse</a> protocols, ATProto is designed for a small number of large instances</p>',6),s=[n];function d(l,i,c,p,_,f){return t(),r("div",null,s)}const T=e(o,[["render",d]]);export{u as __pageData,T as default}; import{_ as e,c as r,o as t,a4 as a}from"./chunks/framework.CsM8T_AH.js";const u=JSON.parse('{"title":"ATProto","description":"","frontmatter":{"alias":"The AT Protocol","public":"true","slug":"atproto","tags":["Decentralized"],"title":"ATProto","prev":false,"next":false},"headers":[],"relativePath":"garden/atproto/index.md","filePath":"garden/atproto/index.md"}'),o={name:"garden/atproto/index.md"},n=a('<h1 id="atproto" tabindex="-1">ATProto <a class="header-anchor" href="#atproto" aria-label="Permalink to &quot;ATProto&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/fediverse/">Fediverse</a></p></blockquote><blockquote><p>Tags: <a href="/garden/decentralized/">Decentralized</a></p></blockquote><p>The <a href="https://atproto.com" target="_blank" rel="noreferrer">AT Protocol</a> is a protocol for <a href="/garden/fediverse/">Federated Social Media</a></p><p>Currently only used by <a href="https://bsky.app" target="_blank" rel="noreferrer">Bluesky</a></p><p>In comparison to other <a href="/garden/fediverse/">Fediverse</a> protocols, ATProto is designed for a small number of large instances</p>',6),s=[n];function d(l,i,c,p,_,f){return t(),r("div",null,s)}const T=e(o,[["render",d]]);export{u as __pageData,T as default};

View file

@ -1 +1 @@
import{_ as e,c as r,o as t,a5 as a}from"./chunks/framework.CK8QU5WH.js";const u=JSON.parse('{"title":"ATProto","description":"","frontmatter":{"alias":"The AT Protocol","public":"true","slug":"atproto","tags":["Decentralized"],"title":"ATProto","prev":false,"next":false},"headers":[],"relativePath":"garden/atproto/index.md","filePath":"garden/atproto/index.md"}'),o={name:"garden/atproto/index.md"},n=a("",6),s=[n];function d(l,i,c,p,_,f){return t(),r("div",null,s)}const T=e(o,[["render",d]]);export{u as __pageData,T as default}; import{_ as e,c as r,o as t,a4 as a}from"./chunks/framework.CsM8T_AH.js";const u=JSON.parse('{"title":"ATProto","description":"","frontmatter":{"alias":"The AT Protocol","public":"true","slug":"atproto","tags":["Decentralized"],"title":"ATProto","prev":false,"next":false},"headers":[],"relativePath":"garden/atproto/index.md","filePath":"garden/atproto/index.md"}'),o={name:"garden/atproto/index.md"},n=a("",6),s=[n];function d(l,i,c,p,_,f){return t(),r("div",null,s)}const T=e(o,[["render",d]]);export{u as __pageData,T as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a5 as r}from"./chunks/framework.CK8QU5WH.js";const f=JSON.parse('{"title":"Babble Buds","description":"","frontmatter":{"public":"true","slug":"babble-buds","tags":["My Projects"],"title":"Babble Buds","prev":false,"next":false},"headers":[],"relativePath":"garden/babble-buds/index.md","filePath":"garden/babble-buds/index.md"}'),o={name:"garden/babble-buds/index.md"},s=r('<h1 id="babble-buds" tabindex="-1">Babble Buds <a class="header-anchor" href="#babble-buds" aria-label="Permalink to &quot;Babble Buds&quot;"></a></h1><blockquote><p>Tags: <a href="/garden/my-projects/">My Projects</a></p></blockquote><p><a href="http://babblebuds.xyz" target="_blank" rel="noreferrer">Babble Buds</a> is a tool for creating puppets and interacting with puppets controlled by others on a shared stage</p><blockquote><p>Note: I need to move the website off replit because of their monetization strategy changing. In the meantime, you can check it out from its <a href="https://github.com/thepaperpilot/babble-buds" target="_blank" rel="noreferrer">github repository</a></p></blockquote><p>Inspired by Puppet Pals by Robert Moran</p><p>Intended for use in RPG Campaigns</p><p>The renderer was separated into its own project, <a href="https://github.com/thepaperpilot/babble.js" target="_blank" rel="noreferrer">babble.js</a>, so it could be used for stuff like cutscenes</p><p>I ported the engine to C# and used it for the cutscenes in <a href="/garden/dice-armor/">Dice Armor</a></p><ul><li>I don&#39;t believe I ever separated it out into its own project, but you can find the code <a href="https://github.com/sreynoldsdesign/dice_armor/tree/master/Assets/Scripts/babble.cs" target="_blank" rel="noreferrer">here</a></li></ul>',9),b=[s];function n(i,l,d,p,c,u){return a(),t("div",null,b)}const _=e(o,[["render",n]]);export{f as __pageData,_ as default}; import{_ as e,c as t,o as a,a4 as r}from"./chunks/framework.CsM8T_AH.js";const f=JSON.parse('{"title":"Babble Buds","description":"","frontmatter":{"public":"true","slug":"babble-buds","tags":["My Projects"],"title":"Babble Buds","prev":false,"next":false},"headers":[],"relativePath":"garden/babble-buds/index.md","filePath":"garden/babble-buds/index.md"}'),o={name:"garden/babble-buds/index.md"},s=r('<h1 id="babble-buds" tabindex="-1">Babble Buds <a class="header-anchor" href="#babble-buds" aria-label="Permalink to &quot;Babble Buds&quot;"></a></h1><blockquote><p>Tags: <a href="/garden/my-projects/">My Projects</a></p></blockquote><p><a href="http://babblebuds.xyz" target="_blank" rel="noreferrer">Babble Buds</a> is a tool for creating puppets and interacting with puppets controlled by others on a shared stage</p><blockquote><p>Note: I need to move the website off replit because of their monetization strategy changing. In the meantime, you can check it out from its <a href="https://github.com/thepaperpilot/babble-buds" target="_blank" rel="noreferrer">github repository</a></p></blockquote><p>Inspired by Puppet Pals by Robert Moran</p><p>Intended for use in RPG Campaigns</p><p>The renderer was separated into its own project, <a href="https://github.com/thepaperpilot/babble.js" target="_blank" rel="noreferrer">babble.js</a>, so it could be used for stuff like cutscenes</p><p>I ported the engine to C# and used it for the cutscenes in <a href="/garden/dice-armor/">Dice Armor</a></p><ul><li>I don&#39;t believe I ever separated it out into its own project, but you can find the code <a href="https://github.com/sreynoldsdesign/dice_armor/tree/master/Assets/Scripts/babble.cs" target="_blank" rel="noreferrer">here</a></li></ul>',9),b=[s];function n(i,l,d,p,c,u){return a(),t("div",null,b)}const _=e(o,[["render",n]]);export{f as __pageData,_ as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a5 as r}from"./chunks/framework.CK8QU5WH.js";const f=JSON.parse('{"title":"Babble Buds","description":"","frontmatter":{"public":"true","slug":"babble-buds","tags":["My Projects"],"title":"Babble Buds","prev":false,"next":false},"headers":[],"relativePath":"garden/babble-buds/index.md","filePath":"garden/babble-buds/index.md"}'),o={name:"garden/babble-buds/index.md"},s=r("",9),b=[s];function n(i,l,d,p,c,u){return a(),t("div",null,b)}const _=e(o,[["render",n]]);export{f as __pageData,_ as default}; import{_ as e,c as t,o as a,a4 as r}from"./chunks/framework.CsM8T_AH.js";const f=JSON.parse('{"title":"Babble Buds","description":"","frontmatter":{"public":"true","slug":"babble-buds","tags":["My Projects"],"title":"Babble Buds","prev":false,"next":false},"headers":[],"relativePath":"garden/babble-buds/index.md","filePath":"garden/babble-buds/index.md"}'),o={name:"garden/babble-buds/index.md"},s=r("",9),b=[s];function n(i,l,d,p,c,u){return a(),t("div",null,b)}const _=e(o,[["render",n]]);export{f as __pageData,_ as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a5 as r,a6 as i}from"./chunks/framework.CK8QU5WH.js";const f=JSON.parse('{"title":"Capture the Citadel","description":"","frontmatter":{"public":"true","slug":"capture-the-citadel","tags":["My Projects"],"title":"Capture the Citadel","prev":false,"next":false},"headers":[],"relativePath":"garden/capture-the-citadel/index.md","filePath":"garden/capture-the-citadel/index.md"}'),n={name:"garden/capture-the-citadel/index.md"},c=r('<h1 id="capture-the-citadel" tabindex="-1">Capture the Citadel <a class="header-anchor" href="#capture-the-citadel" aria-label="Permalink to &quot;Capture the Citadel&quot;"></a></h1><blockquote><p>Tags: <a href="/garden/my-projects/">My Projects</a></p></blockquote><p>A 3D VR re-envisioning of a Slay the Spire-style game by Anthony Lawn and Grant Barbee for their VR class in college&#39;s final project.</p><p>For more details, visit <a href="https://grantcbarbee.github.io/conquer-the-citadel.html" target="_blank" rel="noreferrer">Grant&#39;s page on the game</a>.</p><p><img src="'+i+'" alt="screenshot.png"></p>',5),o=[c];function s(l,p,d,h,_,u){return a(),t("div",null,o)}const m=e(n,[["render",s]]);export{f as __pageData,m as default}; import{_ as e,c as t,o as a,a4 as r,a5 as i}from"./chunks/framework.CsM8T_AH.js";const f=JSON.parse('{"title":"Capture the Citadel","description":"","frontmatter":{"public":"true","slug":"capture-the-citadel","tags":["My Projects"],"title":"Capture the Citadel","prev":false,"next":false},"headers":[],"relativePath":"garden/capture-the-citadel/index.md","filePath":"garden/capture-the-citadel/index.md"}'),n={name:"garden/capture-the-citadel/index.md"},c=r('<h1 id="capture-the-citadel" tabindex="-1">Capture the Citadel <a class="header-anchor" href="#capture-the-citadel" aria-label="Permalink to &quot;Capture the Citadel&quot;"></a></h1><blockquote><p>Tags: <a href="/garden/my-projects/">My Projects</a></p></blockquote><p>A 3D VR re-envisioning of a Slay the Spire-style game by Anthony Lawn and Grant Barbee for their VR class in college&#39;s final project.</p><p>For more details, visit <a href="https://grantcbarbee.github.io/conquer-the-citadel.html" target="_blank" rel="noreferrer">Grant&#39;s page on the game</a>.</p><p><img src="'+i+'" alt="screenshot.png"></p>',5),o=[c];function s(l,p,d,h,_,u){return a(),t("div",null,o)}const m=e(n,[["render",s]]);export{f as __pageData,m as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a5 as r,a6 as i}from"./chunks/framework.CK8QU5WH.js";const f=JSON.parse('{"title":"Capture the Citadel","description":"","frontmatter":{"public":"true","slug":"capture-the-citadel","tags":["My Projects"],"title":"Capture the Citadel","prev":false,"next":false},"headers":[],"relativePath":"garden/capture-the-citadel/index.md","filePath":"garden/capture-the-citadel/index.md"}'),n={name:"garden/capture-the-citadel/index.md"},c=r("",5),o=[c];function s(l,p,d,h,_,u){return a(),t("div",null,o)}const m=e(n,[["render",s]]);export{f as __pageData,m as default}; import{_ as e,c as t,o as a,a4 as r,a5 as i}from"./chunks/framework.CsM8T_AH.js";const f=JSON.parse('{"title":"Capture the Citadel","description":"","frontmatter":{"public":"true","slug":"capture-the-citadel","tags":["My Projects"],"title":"Capture the Citadel","prev":false,"next":false},"headers":[],"relativePath":"garden/capture-the-citadel/index.md","filePath":"garden/capture-the-citadel/index.md"}'),n={name:"garden/capture-the-citadel/index.md"},c=r("",5),o=[c];function s(l,p,d,h,_,u){return a(),t("div",null,o)}const m=e(n,[["render",s]]);export{f as __pageData,m as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a5 as n}from"./chunks/framework.CK8QU5WH.js";const p=JSON.parse('{"title":"Chat Glue","description":"","frontmatter":{"public":"true","slug":"chat-glue","title":"Chat Glue","prev":false,"next":false},"headers":[],"relativePath":"garden/chat-glue/index.md","filePath":"garden/chat-glue/index.md"}'),r={name:"garden/chat-glue/index.md"},o=n('<h1 id="chat-glue" tabindex="-1">Chat Glue <a class="header-anchor" href="#chat-glue" aria-label="Permalink to &quot;Chat Glue&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/commune/">Commune</a>, <a href="/garden/the-small-web/">The Small Web</a></p></blockquote><p>A theoretical chat system designed to solve the problems of transcribing branching conversations into linear timelines.</p><p>Defined by the <a href="https://a9.io/glue-comic/" target="_blank" rel="noreferrer">Chatting with Glue</a> comic.</p>',4),l=[o];function c(i,s,h,d,_,u){return a(),t("div",null,l)}const g=e(r,[["render",c]]);export{p as __pageData,g as default}; import{_ as e,c as t,o as a,a4 as n}from"./chunks/framework.CsM8T_AH.js";const p=JSON.parse('{"title":"Chat Glue","description":"","frontmatter":{"public":"true","slug":"chat-glue","title":"Chat Glue","prev":false,"next":false},"headers":[],"relativePath":"garden/chat-glue/index.md","filePath":"garden/chat-glue/index.md"}'),r={name:"garden/chat-glue/index.md"},o=n('<h1 id="chat-glue" tabindex="-1">Chat Glue <a class="header-anchor" href="#chat-glue" aria-label="Permalink to &quot;Chat Glue&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/commune/">Commune</a>, <a href="/garden/the-small-web/">The Small Web</a></p></blockquote><p>A theoretical chat system designed to solve the problems of transcribing branching conversations into linear timelines.</p><p>Defined by the <a href="https://a9.io/glue-comic/" target="_blank" rel="noreferrer">Chatting with Glue</a> comic.</p>',4),l=[o];function c(i,s,h,d,_,u){return a(),t("div",null,l)}const g=e(r,[["render",c]]);export{p as __pageData,g as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a5 as n}from"./chunks/framework.CK8QU5WH.js";const p=JSON.parse('{"title":"Chat Glue","description":"","frontmatter":{"public":"true","slug":"chat-glue","title":"Chat Glue","prev":false,"next":false},"headers":[],"relativePath":"garden/chat-glue/index.md","filePath":"garden/chat-glue/index.md"}'),r={name:"garden/chat-glue/index.md"},o=n("",4),l=[o];function c(i,s,h,d,_,u){return a(),t("div",null,l)}const g=e(r,[["render",c]]);export{p as __pageData,g as default}; import{_ as e,c as t,o as a,a4 as n}from"./chunks/framework.CsM8T_AH.js";const p=JSON.parse('{"title":"Chat Glue","description":"","frontmatter":{"public":"true","slug":"chat-glue","title":"Chat Glue","prev":false,"next":false},"headers":[],"relativePath":"garden/chat-glue/index.md","filePath":"garden/chat-glue/index.md"}'),r={name:"garden/chat-glue/index.md"},o=n("",4),l=[o];function c(i,s,h,d,_,u){return a(),t("div",null,l)}const g=e(r,[["render",c]]);export{p as __pageData,g as default};

View file

@ -1 +1 @@
import{_ as o,c as e,o as a,a5 as t}from"./chunks/framework.CK8QU5WH.js";const _=JSON.parse('{"title":"Chronological","description":"","frontmatter":{"public":"true","slug":"chronological","title":"Chronological","prev":false,"next":false},"headers":[],"relativePath":"garden/chronological/index.md","filePath":"garden/chronological/index.md"}'),r={name:"garden/chronological/index.md"},i=t('<h1 id="chronological" tabindex="-1">Chronological <a class="header-anchor" href="#chronological" aria-label="Permalink to &quot;Chronological&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/digital-gardens/">Digital Gardens</a>, <a href="/garden/freeform-vs-chronological-dichotomy/">Freeform vs Chronological Dichotomy</a>, <a href="/garden/the-small-web/">The Small Web</a></p></blockquote><p>A collection of information that is tied to its creation or edit date</p><p>Part of the <a href="/garden/freeform-vs-chronological-dichotomy/">Freeform vs Chronological Dichotomy</a></p><p>Anything with a &quot;timeline&quot; or &quot;feed&quot; is considered chronological</p><ul><li>Even if there&#39;s algorithmic sortings that take things other than creation or edit date into account!</li></ul><p>Chronological displays are less suitable as stores of knowledge (<a href="/garden/digital-gardens/">Digital Gardens</a>)</p><p>Social media overuses timelines and feeds</p><p>RSS feeds work really well with this form of content</p>',9),l=[i];function n(c,s,d,h,g,f){return a(),e("div",null,l)}const m=o(r,[["render",n]]);export{_ as __pageData,m as default}; import{_ as o,c as e,o as a,a4 as t}from"./chunks/framework.CsM8T_AH.js";const _=JSON.parse('{"title":"Chronological","description":"","frontmatter":{"public":"true","slug":"chronological","title":"Chronological","prev":false,"next":false},"headers":[],"relativePath":"garden/chronological/index.md","filePath":"garden/chronological/index.md"}'),r={name:"garden/chronological/index.md"},i=t('<h1 id="chronological" tabindex="-1">Chronological <a class="header-anchor" href="#chronological" aria-label="Permalink to &quot;Chronological&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/digital-gardens/">Digital Gardens</a>, <a href="/garden/freeform-vs-chronological-dichotomy/">Freeform vs Chronological Dichotomy</a>, <a href="/garden/the-small-web/">The Small Web</a></p></blockquote><p>A collection of information that is tied to its creation or edit date</p><p>Part of the <a href="/garden/freeform-vs-chronological-dichotomy/">Freeform vs Chronological Dichotomy</a></p><p>Anything with a &quot;timeline&quot; or &quot;feed&quot; is considered chronological</p><ul><li>Even if there&#39;s algorithmic sortings that take things other than creation or edit date into account!</li></ul><p>Chronological displays are less suitable as stores of knowledge (<a href="/garden/digital-gardens/">Digital Gardens</a>)</p><p>Social media overuses timelines and feeds</p><p>RSS feeds work really well with this form of content</p>',9),l=[i];function n(c,s,d,h,g,f){return a(),e("div",null,l)}const m=o(r,[["render",n]]);export{_ as __pageData,m as default};

View file

@ -1 +1 @@
import{_ as o,c as e,o as a,a5 as t}from"./chunks/framework.CK8QU5WH.js";const _=JSON.parse('{"title":"Chronological","description":"","frontmatter":{"public":"true","slug":"chronological","title":"Chronological","prev":false,"next":false},"headers":[],"relativePath":"garden/chronological/index.md","filePath":"garden/chronological/index.md"}'),r={name:"garden/chronological/index.md"},i=t("",9),l=[i];function n(c,s,d,h,g,f){return a(),e("div",null,l)}const m=o(r,[["render",n]]);export{_ as __pageData,m as default}; import{_ as o,c as e,o as a,a4 as t}from"./chunks/framework.CsM8T_AH.js";const _=JSON.parse('{"title":"Chronological","description":"","frontmatter":{"public":"true","slug":"chronological","title":"Chronological","prev":false,"next":false},"headers":[],"relativePath":"garden/chronological/index.md","filePath":"garden/chronological/index.md"}'),r={name:"garden/chronological/index.md"},i=t("",9),l=[i];function n(c,s,d,h,g,f){return a(),e("div",null,l)}const m=o(r,[["render",n]]);export{_ as __pageData,m as default};

View file

@ -1 +1 @@
import{_ as e,c as n,o as a,a5 as t}from"./chunks/framework.CK8QU5WH.js";const m=JSON.parse('{"title":"Cinny","description":"","frontmatter":{"public":"true","slug":"cinny","title":"Cinny","prev":false,"next":false},"headers":[],"relativePath":"garden/cinny/index.md","filePath":"garden/cinny/index.md"}'),r={name:"garden/cinny/index.md"},i=t('<h1 id="cinny" tabindex="-1">Cinny <a class="header-anchor" href="#cinny" aria-label="Permalink to &quot;Cinny&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/incremental-social/">Incremental Social</a></p></blockquote><p><a href="https://cinny.in" target="_blank" rel="noreferrer">Cinny</a> is an <a href="/garden/open-source/">Open Source</a> web client for the <a href="/garden/matrix/">Matrix</a> messaging protocol</p>',3),c=[i];function o(s,l,_,d,p,f){return a(),n("div",null,c)}const u=e(r,[["render",o]]);export{m as __pageData,u as default}; import{_ as e,c as n,o as a,a4 as t}from"./chunks/framework.CsM8T_AH.js";const m=JSON.parse('{"title":"Cinny","description":"","frontmatter":{"public":"true","slug":"cinny","title":"Cinny","prev":false,"next":false},"headers":[],"relativePath":"garden/cinny/index.md","filePath":"garden/cinny/index.md"}'),r={name:"garden/cinny/index.md"},i=t('<h1 id="cinny" tabindex="-1">Cinny <a class="header-anchor" href="#cinny" aria-label="Permalink to &quot;Cinny&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/incremental-social/">Incremental Social</a></p></blockquote><p><a href="https://cinny.in" target="_blank" rel="noreferrer">Cinny</a> is an <a href="/garden/open-source/">Open Source</a> web client for the <a href="/garden/matrix/">Matrix</a> messaging protocol</p>',3),c=[i];function o(s,l,_,d,p,f){return a(),n("div",null,c)}const u=e(r,[["render",o]]);export{m as __pageData,u as default};

View file

@ -1 +1 @@
import{_ as e,c as n,o as a,a5 as t}from"./chunks/framework.CK8QU5WH.js";const m=JSON.parse('{"title":"Cinny","description":"","frontmatter":{"public":"true","slug":"cinny","title":"Cinny","prev":false,"next":false},"headers":[],"relativePath":"garden/cinny/index.md","filePath":"garden/cinny/index.md"}'),r={name:"garden/cinny/index.md"},i=t("",3),c=[i];function o(s,l,_,d,p,f){return a(),n("div",null,c)}const u=e(r,[["render",o]]);export{m as __pageData,u as default}; import{_ as e,c as n,o as a,a4 as t}from"./chunks/framework.CsM8T_AH.js";const m=JSON.parse('{"title":"Cinny","description":"","frontmatter":{"public":"true","slug":"cinny","title":"Cinny","prev":false,"next":false},"headers":[],"relativePath":"garden/cinny/index.md","filePath":"garden/cinny/index.md"}'),r={name:"garden/cinny/index.md"},i=t("",3),c=[i];function o(s,l,_,d,p,f){return a(),n("div",null,c)}const u=e(r,[["render",o]]);export{m as __pageData,u as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as t,a5 as n}from"./chunks/framework.CK8QU5WH.js";const f=JSON.parse('{"title":"Command Palettes","description":"","frontmatter":{"public":"true","slug":"command-palettes","title":"Command Palettes","prev":false,"next":false},"headers":[],"relativePath":"garden/command-palettes/index.md","filePath":"garden/command-palettes/index.md"}'),l={name:"garden/command-palettes/index.md"},o=n('<h1 id="command-palettes" tabindex="-1">Command Palettes <a class="header-anchor" href="#command-palettes" aria-label="Permalink to &quot;Command Palettes&quot;"></a></h1><p>Command palettes are a design pattern where apps expose functionality through a search bar</p><p>Typing what you want is almost certainly easier and faster than finding the action in some submenu or remembering an arcane hotkey</p><ul><li>Especially with fuzzy search that also looks through descriptions of actions</li><li>Command palettes scale very well with large amounts of actions</li></ul><p><a href="/garden/artificial-intelligence/">Artificial Intelligence</a> will make command palettes increasingly powerful</p><ul><li>Eventually these may become conversational interfaces</li></ul><p>Maggie Appleton discusses this pattern in her article on <a href="https://maggieappleton.com/command-bar" target="_blank" rel="noreferrer">Command K Bars</a></p><ul><li>The name comes from the fact many apps use the ctrl/cmd k shortcut to open the command palette</li></ul><p>Many softwares I use have some form of command palette</p><ul><li>Linear</li><li><a href="/garden/logseq/">Logseq</a></li><li>Visual Studio Code</li></ul>',10),s=[o];function i(r,m,c,p,d,h){return t(),a("div",null,s)}const _=e(l,[["render",i]]);export{f as __pageData,_ as default}; import{_ as e,c as a,o as t,a4 as n}from"./chunks/framework.CsM8T_AH.js";const f=JSON.parse('{"title":"Command Palettes","description":"","frontmatter":{"public":"true","slug":"command-palettes","title":"Command Palettes","prev":false,"next":false},"headers":[],"relativePath":"garden/command-palettes/index.md","filePath":"garden/command-palettes/index.md"}'),l={name:"garden/command-palettes/index.md"},o=n('<h1 id="command-palettes" tabindex="-1">Command Palettes <a class="header-anchor" href="#command-palettes" aria-label="Permalink to &quot;Command Palettes&quot;"></a></h1><p>Command palettes are a design pattern where apps expose functionality through a search bar</p><p>Typing what you want is almost certainly easier and faster than finding the action in some submenu or remembering an arcane hotkey</p><ul><li>Especially with fuzzy search that also looks through descriptions of actions</li><li>Command palettes scale very well with large amounts of actions</li></ul><p><a href="/garden/artificial-intelligence/">Artificial Intelligence</a> will make command palettes increasingly powerful</p><ul><li>Eventually these may become conversational interfaces</li></ul><p>Maggie Appleton discusses this pattern in her article on <a href="https://maggieappleton.com/command-bar" target="_blank" rel="noreferrer">Command K Bars</a></p><ul><li>The name comes from the fact many apps use the ctrl/cmd k shortcut to open the command palette</li></ul><p>Many softwares I use have some form of command palette</p><ul><li>Linear</li><li><a href="/garden/logseq/">Logseq</a></li><li>Visual Studio Code</li></ul>',10),s=[o];function i(r,m,c,p,d,h){return t(),a("div",null,s)}const _=e(l,[["render",i]]);export{f as __pageData,_ as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as t,a5 as n}from"./chunks/framework.CK8QU5WH.js";const f=JSON.parse('{"title":"Command Palettes","description":"","frontmatter":{"public":"true","slug":"command-palettes","title":"Command Palettes","prev":false,"next":false},"headers":[],"relativePath":"garden/command-palettes/index.md","filePath":"garden/command-palettes/index.md"}'),l={name:"garden/command-palettes/index.md"},o=n("",10),s=[o];function i(r,m,c,p,d,h){return t(),a("div",null,s)}const _=e(l,[["render",i]]);export{f as __pageData,_ as default}; import{_ as e,c as a,o as t,a4 as n}from"./chunks/framework.CsM8T_AH.js";const f=JSON.parse('{"title":"Command Palettes","description":"","frontmatter":{"public":"true","slug":"command-palettes","title":"Command Palettes","prev":false,"next":false},"headers":[],"relativePath":"garden/command-palettes/index.md","filePath":"garden/command-palettes/index.md"}'),l={name:"garden/command-palettes/index.md"},o=n("",10),s=[o];function i(r,m,c,p,d,h){return t(),a("div",null,s)}const _=e(l,[["render",i]]);export{f as __pageData,_ as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as r,a5 as t}from"./chunks/framework.CK8QU5WH.js";const f=JSON.parse('{"title":"Commune","description":"","frontmatter":{"public":"true","slug":"commune","title":"Commune","prev":false,"next":false},"headers":[],"relativePath":"garden/commune/index.md","filePath":"garden/commune/index.md"}'),i={name:"garden/commune/index.md"},n=t('<h1 id="commune" tabindex="-1">Commune <a class="header-anchor" href="#commune" aria-label="Permalink to &quot;Commune&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/federated-identity/">Federated Identity</a>, <a href="/garden/fedi-v2/">Fedi v2</a>, <a href="/now/index">/now</a>, <a href="/garden/webrings/">Webrings</a>, <a href="/garden/weird/">Weird</a></p></blockquote><p>An <a href="/garden/open-source/">Open Source</a> <a href="/garden/matrix/">Matrix</a> web client built to be better for communities than anything else out there</p><ul><li>Currently in development</li><li>Exposes certain channels such that they are web indexable</li><li>Will include features like <a href="/garden/chat-glue/">Chat Glue</a> and communal <a href="/garden/digital-gardens/">Digital Gardens</a></li></ul><p>Created by <a href="https://writing.exchange/@erlend" target="_blank" rel="noreferrer">Erlend Sogge Heggen</a>, a ex-employee from Discourse</p><ul><li>Maintains the <a href="https://blog.commune.sh" target="_blank" rel="noreferrer">Commune Blog</a> with great write ups on the issues of the modern web, social media, etc. and how they can be improved (by Commune or related projects)</li><li>Also maintains a <a href="https://blog.erlend.sh" target="_blank" rel="noreferrer">Personal Blog</a> about similar topics</li></ul><p>The Commune community is very interested in various topics and how they can relate together:</p><ul><li><a href="/garden/federated-identity/">Federated Identity</a></li><li><a href="/garden/the-small-web/">Personal Web</a></li><li><a href="/garden/digital-gardens/">Digital Gardens</a></li><li><a href="/garden/social-media/">Social Media</a></li><li>The common themes here are they want these things <a href="/garden/decentralized/">Decentralized</a> and <a href="/garden/freeform/">Freeform</a></li><li>They&#39;re also building <a href="/garden/weird/">Weird</a> to make several of these more accessible</li></ul><p>Related projects:</p><ul><li><a href="https://tech.lgbt/@laxla" target="_blank" rel="noreferrer">@laxla@tech.lgbt</a> is creating Gimli, a federated discord alternative <ul><li>Built on ActivityPub</li><li>&quot;Guild-based&quot; in ways matrix is not?</li><li>Will integrate with F3 as well</li><li>Wants to handle blogging as well</li><li>Certainly seems similar to Commune&#39;s message gardening concept</li></ul></li></ul>',10),l=[n];function o(d,s,h,m,c,u){return r(),a("div",null,l)}const p=e(i,[["render",o]]);export{f as __pageData,p as default}; import{_ as e,c as a,o as r,a4 as t}from"./chunks/framework.CsM8T_AH.js";const f=JSON.parse('{"title":"Commune","description":"","frontmatter":{"public":"true","slug":"commune","title":"Commune","prev":false,"next":false},"headers":[],"relativePath":"garden/commune/index.md","filePath":"garden/commune/index.md"}'),i={name:"garden/commune/index.md"},n=t('<h1 id="commune" tabindex="-1">Commune <a class="header-anchor" href="#commune" aria-label="Permalink to &quot;Commune&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/federated-identity/">Federated Identity</a>, <a href="/garden/fedi-v2/">Fedi v2</a>, <a href="/now/index">/now</a>, <a href="/garden/webrings/">Webrings</a>, <a href="/garden/weird/">Weird</a></p></blockquote><p>An <a href="/garden/open-source/">Open Source</a> <a href="/garden/matrix/">Matrix</a> web client built to be better for communities than anything else out there</p><ul><li>Currently in development</li><li>Exposes certain channels such that they are web indexable</li><li>Will include features like <a href="/garden/chat-glue/">Chat Glue</a> and communal <a href="/garden/digital-gardens/">Digital Gardens</a></li></ul><p>Created by <a href="https://writing.exchange/@erlend" target="_blank" rel="noreferrer">Erlend Sogge Heggen</a>, a ex-employee from Discourse</p><ul><li>Maintains the <a href="https://blog.commune.sh" target="_blank" rel="noreferrer">Commune Blog</a> with great write ups on the issues of the modern web, social media, etc. and how they can be improved (by Commune or related projects)</li><li>Also maintains a <a href="https://blog.erlend.sh" target="_blank" rel="noreferrer">Personal Blog</a> about similar topics</li></ul><p>The Commune community is very interested in various topics and how they can relate together:</p><ul><li><a href="/garden/federated-identity/">Federated Identity</a></li><li><a href="/garden/the-small-web/">Personal Web</a></li><li><a href="/garden/digital-gardens/">Digital Gardens</a></li><li><a href="/garden/social-media/">Social Media</a></li><li>The common themes here are they want these things <a href="/garden/decentralized/">Decentralized</a> and <a href="/garden/freeform/">Freeform</a></li><li>They&#39;re also building <a href="/garden/weird/">Weird</a> to make several of these more accessible</li></ul><p>Related projects:</p><ul><li><a href="https://tech.lgbt/@laxla" target="_blank" rel="noreferrer">@laxla@tech.lgbt</a> is creating Gimli, a federated discord alternative <ul><li>Built on ActivityPub</li><li>&quot;Guild-based&quot; in ways matrix is not?</li><li>Will integrate with F3 as well</li><li>Wants to handle blogging as well</li><li>Certainly seems similar to Commune&#39;s message gardening concept</li></ul></li></ul>',10),l=[n];function o(d,s,h,m,c,u){return r(),a("div",null,l)}const p=e(i,[["render",o]]);export{f as __pageData,p as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as r,a5 as t}from"./chunks/framework.CK8QU5WH.js";const f=JSON.parse('{"title":"Commune","description":"","frontmatter":{"public":"true","slug":"commune","title":"Commune","prev":false,"next":false},"headers":[],"relativePath":"garden/commune/index.md","filePath":"garden/commune/index.md"}'),i={name:"garden/commune/index.md"},n=t("",10),l=[n];function o(d,s,h,m,c,u){return r(),a("div",null,l)}const p=e(i,[["render",o]]);export{f as __pageData,p as default}; import{_ as e,c as a,o as r,a4 as t}from"./chunks/framework.CsM8T_AH.js";const f=JSON.parse('{"title":"Commune","description":"","frontmatter":{"public":"true","slug":"commune","title":"Commune","prev":false,"next":false},"headers":[],"relativePath":"garden/commune/index.md","filePath":"garden/commune/index.md"}'),i={name:"garden/commune/index.md"},n=t("",10),l=[n];function o(d,s,h,m,c,u){return r(),a("div",null,l)}const p=e(i,[["render",o]]);export{f as __pageData,p as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as r,a5 as n}from"./chunks/framework.CK8QU5WH.js";const p=JSON.parse('{"title":"Davey Wreden","description":"","frontmatter":{"public":"true","slug":"davey-wreden","title":"Davey Wreden","prev":false,"next":false},"headers":[],"relativePath":"garden/davey-wreden/index.md","filePath":"garden/davey-wreden/index.md"}'),t={name:"garden/davey-wreden/index.md"},d=n('<h1 id="davey-wreden" tabindex="-1">Davey Wreden <a class="header-anchor" href="#davey-wreden" aria-label="Permalink to &quot;Davey Wreden&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/ivy-road/">Ivy Road</a>, <a href="/garden/the-beginner-s-guide/">The Beginner&#39;s Guide</a></p></blockquote><blockquote><p>Tagged by: <a href="/garden/ivy-road/">Ivy Road</a>, <a href="/garden/the-beginner-s-guide/">The Beginner&#39;s Guide</a>, <a href="/garden/wanderstop/">Wanderstop</a></p></blockquote><p>Projects:</p><ul><li>The Stanley Parable</li><li><a href="/garden/the-beginner-s-guide/">The Beginner&#39;s Guide</a></li><li><a href="/garden/ivy-road/">Ivy Road</a></li></ul><p>Talks and Interviews:</p><ul><li>LATER <a href="https://www.idlethumbs.net/tonecontrol/episodes/davey-wreden-1" target="_blank" rel="noreferrer">Tone Control 20: Davey Wreden</a></li><li><a href="https://www.youtube.com/watch?v=REnFIJhVA-g" target="_blank" rel="noreferrer">I played The Stanley Parable with the game&#39;s creator</a></li><li><a href="https://www.youtube.com/watch?v=bKMAJ8vOMDg" target="_blank" rel="noreferrer">Davey Wreden: Playing Stories - Aalto University Games Now!</a></li></ul>',7),o=[d];function i(l,s,h,c,g,_){return r(),a("div",null,o)}const y=e(t,[["render",i]]);export{p as __pageData,y as default}; import{_ as e,c as a,o as r,a4 as n}from"./chunks/framework.CsM8T_AH.js";const p=JSON.parse('{"title":"Davey Wreden","description":"","frontmatter":{"public":"true","slug":"davey-wreden","title":"Davey Wreden","prev":false,"next":false},"headers":[],"relativePath":"garden/davey-wreden/index.md","filePath":"garden/davey-wreden/index.md"}'),t={name:"garden/davey-wreden/index.md"},d=n('<h1 id="davey-wreden" tabindex="-1">Davey Wreden <a class="header-anchor" href="#davey-wreden" aria-label="Permalink to &quot;Davey Wreden&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/ivy-road/">Ivy Road</a>, <a href="/garden/the-beginner-s-guide/">The Beginner&#39;s Guide</a></p></blockquote><blockquote><p>Tagged by: <a href="/garden/ivy-road/">Ivy Road</a>, <a href="/garden/the-beginner-s-guide/">The Beginner&#39;s Guide</a>, <a href="/garden/wanderstop/">Wanderstop</a></p></blockquote><p>Projects:</p><ul><li>The Stanley Parable</li><li><a href="/garden/the-beginner-s-guide/">The Beginner&#39;s Guide</a></li><li><a href="/garden/ivy-road/">Ivy Road</a></li></ul><p>Talks and Interviews:</p><ul><li>LATER <a href="https://www.idlethumbs.net/tonecontrol/episodes/davey-wreden-1" target="_blank" rel="noreferrer">Tone Control 20: Davey Wreden</a></li><li><a href="https://www.youtube.com/watch?v=REnFIJhVA-g" target="_blank" rel="noreferrer">I played The Stanley Parable with the game&#39;s creator</a></li><li><a href="https://www.youtube.com/watch?v=bKMAJ8vOMDg" target="_blank" rel="noreferrer">Davey Wreden: Playing Stories - Aalto University Games Now!</a></li></ul>',7),o=[d];function i(l,s,h,c,g,_){return r(),a("div",null,o)}const y=e(t,[["render",i]]);export{p as __pageData,y as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as r,a5 as n}from"./chunks/framework.CK8QU5WH.js";const p=JSON.parse('{"title":"Davey Wreden","description":"","frontmatter":{"public":"true","slug":"davey-wreden","title":"Davey Wreden","prev":false,"next":false},"headers":[],"relativePath":"garden/davey-wreden/index.md","filePath":"garden/davey-wreden/index.md"}'),t={name:"garden/davey-wreden/index.md"},d=n("",7),o=[d];function i(l,s,h,c,g,_){return r(),a("div",null,o)}const y=e(t,[["render",i]]);export{p as __pageData,y as default}; import{_ as e,c as a,o as r,a4 as n}from"./chunks/framework.CsM8T_AH.js";const p=JSON.parse('{"title":"Davey Wreden","description":"","frontmatter":{"public":"true","slug":"davey-wreden","title":"Davey Wreden","prev":false,"next":false},"headers":[],"relativePath":"garden/davey-wreden/index.md","filePath":"garden/davey-wreden/index.md"}'),t={name:"garden/davey-wreden/index.md"},d=n("",7),o=[d];function i(l,s,h,c,g,_){return r(),a("div",null,o)}const y=e(t,[["render",i]]);export{p as __pageData,y as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as r,a5 as t}from"./chunks/framework.CK8QU5WH.js";const m=JSON.parse('{"title":"Decentralized","description":"","frontmatter":{"alias":"Federated","public":"true","slug":"decentralized","title":"Decentralized","prev":false,"next":false},"headers":[],"relativePath":"garden/decentralized/index.md","filePath":"garden/decentralized/index.md"}'),i={name:"garden/decentralized/index.md"},n=t('<h1 id="decentralized" tabindex="-1">Decentralized <a class="header-anchor" href="#decentralized" aria-label="Permalink to &quot;Decentralized&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/commune/">Commune</a>, <a href="/garden/fedi-v2/">Fedi v2</a>, <a href="/garden/matrix/">Matrix</a>, <a href="/garden/social-media/">Social Media</a></p></blockquote><blockquote><p>Tagged by: <a href="/garden/atproto/">ATProto</a>, <a href="/garden/activitypub/">ActivityPub</a>, <a href="/garden/federated-identity/">Federated Identity</a>, <a href="/garden/fediverse/">Fediverse</a>, <a href="/garden/nostr/">Nostr</a></p></blockquote><p>Something with no central source of authority</p><p>Common examples:</p><ul><li>RSS</li><li>Email</li><li>The <a href="/garden/fediverse/">Fediverse</a></li></ul><p>In practice, the &quot;pick a server&quot; problem causes email and the fediverse to trend towards a handful of large servers that still suffer from some of the issues of centralization</p><p>Advantages over centralization:</p><ul><li>Data ownership</li><li>Increased privacy</li><li>No rules to follow</li><li>Can fully customize your experience</li><li>No single entity can make the experience worse for everyone</li><li>Anyone and everyone can try their hand at improving the ecosystem</li></ul>',9),o=[n];function d(l,c,s,f,p,h){return r(),a("div",null,o)}const _=e(i,[["render",d]]);export{m as __pageData,_ as default}; import{_ as e,c as a,o as r,a4 as t}from"./chunks/framework.CsM8T_AH.js";const m=JSON.parse('{"title":"Decentralized","description":"","frontmatter":{"alias":"Federated","public":"true","slug":"decentralized","title":"Decentralized","prev":false,"next":false},"headers":[],"relativePath":"garden/decentralized/index.md","filePath":"garden/decentralized/index.md"}'),i={name:"garden/decentralized/index.md"},n=t('<h1 id="decentralized" tabindex="-1">Decentralized <a class="header-anchor" href="#decentralized" aria-label="Permalink to &quot;Decentralized&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/commune/">Commune</a>, <a href="/garden/fedi-v2/">Fedi v2</a>, <a href="/garden/matrix/">Matrix</a>, <a href="/garden/social-media/">Social Media</a></p></blockquote><blockquote><p>Tagged by: <a href="/garden/atproto/">ATProto</a>, <a href="/garden/activitypub/">ActivityPub</a>, <a href="/garden/federated-identity/">Federated Identity</a>, <a href="/garden/fediverse/">Fediverse</a>, <a href="/garden/nostr/">Nostr</a></p></blockquote><p>Something with no central source of authority</p><p>Common examples:</p><ul><li>RSS</li><li>Email</li><li>The <a href="/garden/fediverse/">Fediverse</a></li></ul><p>In practice, the &quot;pick a server&quot; problem causes email and the fediverse to trend towards a handful of large servers that still suffer from some of the issues of centralization</p><p>Advantages over centralization:</p><ul><li>Data ownership</li><li>Increased privacy</li><li>No rules to follow</li><li>Can fully customize your experience</li><li>No single entity can make the experience worse for everyone</li><li>Anyone and everyone can try their hand at improving the ecosystem</li></ul>',9),o=[n];function d(l,c,s,f,p,h){return r(),a("div",null,o)}const _=e(i,[["render",d]]);export{m as __pageData,_ as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as r,a5 as t}from"./chunks/framework.CK8QU5WH.js";const m=JSON.parse('{"title":"Decentralized","description":"","frontmatter":{"alias":"Federated","public":"true","slug":"decentralized","title":"Decentralized","prev":false,"next":false},"headers":[],"relativePath":"garden/decentralized/index.md","filePath":"garden/decentralized/index.md"}'),i={name:"garden/decentralized/index.md"},n=t("",9),o=[n];function d(l,c,s,f,p,h){return r(),a("div",null,o)}const _=e(i,[["render",d]]);export{m as __pageData,_ as default}; import{_ as e,c as a,o as r,a4 as t}from"./chunks/framework.CsM8T_AH.js";const m=JSON.parse('{"title":"Decentralized","description":"","frontmatter":{"alias":"Federated","public":"true","slug":"decentralized","title":"Decentralized","prev":false,"next":false},"headers":[],"relativePath":"garden/decentralized/index.md","filePath":"garden/decentralized/index.md"}'),i={name:"garden/decentralized/index.md"},n=t("",9),o=[n];function d(l,c,s,f,p,h){return r(),a("div",null,o)}const _=e(i,[["render",d]]);export{m as __pageData,_ as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a5 as i,a7 as o,a8 as s,a9 as r,aa as n,ab as h,ac as l,ad as c,ae as d,af as p}from"./chunks/framework.CK8QU5WH.js";const q=JSON.parse('{"title":"Dice Armor","description":"","frontmatter":{"public":"true","slug":"dice-armor","tags":["My Projects"],"title":"Dice Armor","prev":false,"next":false},"headers":[],"relativePath":"garden/dice-armor/index.md","filePath":"garden/dice-armor/index.md"}'),m={name:"garden/dice-armor/index.md"},u=i("",25),g=[u];function f(y,b,w,_,v,k){return a(),t("div",null,g)}const I=e(m,[["render",f]]);export{q as __pageData,I as default}; import{_ as e,c as t,o as a,a4 as i,a6 as o,a7 as s,a8 as r,a9 as n,aa as h,ab as l,ac as c,ad as d,ae as p}from"./chunks/framework.CsM8T_AH.js";const q=JSON.parse('{"title":"Dice Armor","description":"","frontmatter":{"public":"true","slug":"dice-armor","tags":["My Projects"],"title":"Dice Armor","prev":false,"next":false},"headers":[],"relativePath":"garden/dice-armor/index.md","filePath":"garden/dice-armor/index.md"}'),m={name:"garden/dice-armor/index.md"},u=i("",25),g=[u];function f(y,b,w,_,v,k){return a(),t("div",null,g)}const I=e(m,[["render",f]]);export{q as __pageData,I as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as r,a5 as t}from"./chunks/framework.CK8QU5WH.js";const m=JSON.parse('{"title":"Digital Gardens","description":"","frontmatter":{"alias":"Digital Garden, Second Brain, Personal Knowledge Management, The Zettelkasten Method","public":"true","slug":"digital-gardens","title":"Digital Gardens","prev":false,"next":false},"headers":[],"relativePath":"garden/digital-gardens/index.md","filePath":"garden/digital-gardens/index.md"}'),n={name:"garden/digital-gardens/index.md"},i=t('<h1 id="digital-gardens" tabindex="-1">Digital Gardens <a class="header-anchor" href="#digital-gardens" aria-label="Permalink to &quot;Digital Gardens&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/chronological/">Chronological</a>, <a href="/garden/commune/">Commune</a>, <a href="/garden/garden-rss/">Garden-RSS</a>, <a href="/garden/the-cozy-web/">The Cozy Web</a>, <a href="/garden/the-small-web/">The Small Web</a></p></blockquote><p>Digital Gardens are <a href="/garden/freeform/">Freeform</a> collections of information made by an individual or community</p><ul><li>Alternatives to <a href="/garden/chronological/">Chronological</a> personal blogs</li><li>Exist in a middleground between the dark forest and <a href="/garden/the-cozy-web/">The Cozy Web</a></li></ul><p><a href="/garden/this-knowledge-hub/">This Knowledge Hub</a></p><p>Collections of digital gardens and resources for creating them:</p><ul><li><strong><a href="https://github.com/MaggieAppleton/digital-gardeners" target="_blank" rel="noreferrer">https://github.com/MaggieAppleton/digital-gardeners</a></strong></li><li><a href="https://github.com/lyz-code/best-of-digital-gardens" target="_blank" rel="noreferrer">https://github.com/lyz-code/best-of-digital-gardens</a></li><li><a href="https://github.com/KasperZutterman/Second-Brain" target="_blank" rel="noreferrer">https://github.com/KasperZutterman/Second-Brain</a></li></ul>',7),o=[i];function l(d,s,g,h,c,f){return r(),a("div",null,o)}const u=e(n,[["render",l]]);export{m as __pageData,u as default}; import{_ as e,c as a,o as r,a4 as t}from"./chunks/framework.CsM8T_AH.js";const m=JSON.parse('{"title":"Digital Gardens","description":"","frontmatter":{"alias":"Digital Garden, Second Brain, Personal Knowledge Management, The Zettelkasten Method","public":"true","slug":"digital-gardens","title":"Digital Gardens","prev":false,"next":false},"headers":[],"relativePath":"garden/digital-gardens/index.md","filePath":"garden/digital-gardens/index.md"}'),n={name:"garden/digital-gardens/index.md"},i=t('<h1 id="digital-gardens" tabindex="-1">Digital Gardens <a class="header-anchor" href="#digital-gardens" aria-label="Permalink to &quot;Digital Gardens&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/chronological/">Chronological</a>, <a href="/garden/commune/">Commune</a>, <a href="/garden/garden-rss/">Garden-RSS</a>, <a href="/garden/the-cozy-web/">The Cozy Web</a>, <a href="/garden/the-small-web/">The Small Web</a></p></blockquote><p>Digital Gardens are <a href="/garden/freeform/">Freeform</a> collections of information made by an individual or community</p><ul><li>Alternatives to <a href="/garden/chronological/">Chronological</a> personal blogs</li><li>Exist in a middleground between the dark forest and <a href="/garden/the-cozy-web/">The Cozy Web</a></li></ul><p><a href="/garden/this-knowledge-hub/">This Knowledge Hub</a></p><p>Collections of digital gardens and resources for creating them:</p><ul><li><strong><a href="https://github.com/MaggieAppleton/digital-gardeners" target="_blank" rel="noreferrer">https://github.com/MaggieAppleton/digital-gardeners</a></strong></li><li><a href="https://github.com/lyz-code/best-of-digital-gardens" target="_blank" rel="noreferrer">https://github.com/lyz-code/best-of-digital-gardens</a></li><li><a href="https://github.com/KasperZutterman/Second-Brain" target="_blank" rel="noreferrer">https://github.com/KasperZutterman/Second-Brain</a></li></ul>',7),o=[i];function l(d,s,g,h,c,f){return r(),a("div",null,o)}const u=e(n,[["render",l]]);export{m as __pageData,u as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as r,a5 as t}from"./chunks/framework.CK8QU5WH.js";const m=JSON.parse('{"title":"Digital Gardens","description":"","frontmatter":{"alias":"Digital Garden, Second Brain, Personal Knowledge Management, The Zettelkasten Method","public":"true","slug":"digital-gardens","title":"Digital Gardens","prev":false,"next":false},"headers":[],"relativePath":"garden/digital-gardens/index.md","filePath":"garden/digital-gardens/index.md"}'),n={name:"garden/digital-gardens/index.md"},i=t("",7),o=[i];function l(d,s,g,h,c,f){return r(),a("div",null,o)}const u=e(n,[["render",l]]);export{m as __pageData,u as default}; import{_ as e,c as a,o as r,a4 as t}from"./chunks/framework.CsM8T_AH.js";const m=JSON.parse('{"title":"Digital Gardens","description":"","frontmatter":{"alias":"Digital Garden, Second Brain, Personal Knowledge Management, The Zettelkasten Method","public":"true","slug":"digital-gardens","title":"Digital Gardens","prev":false,"next":false},"headers":[],"relativePath":"garden/digital-gardens/index.md","filePath":"garden/digital-gardens/index.md"}'),n={name:"garden/digital-gardens/index.md"},i=t("",7),o=[i];function l(d,s,g,h,c,f){return r(),a("div",null,o)}const u=e(n,[["render",l]]);export{m as __pageData,u as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a5 as r}from"./chunks/framework.CK8QU5WH.js";const _=JSON.parse('{"title":"Federated Identity","description":"","frontmatter":{"public":"true","slug":"federated-identity","tags":["Decentralized"],"title":"Federated Identity","prev":false,"next":false},"headers":[],"relativePath":"garden/federated-identity/index.md","filePath":"garden/federated-identity/index.md"}'),d={name:"garden/federated-identity/index.md"},i=r('<h1 id="federated-identity" tabindex="-1">Federated Identity <a class="header-anchor" href="#federated-identity" aria-label="Permalink to &quot;Federated Identity&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/commune/">Commune</a>, <a href="/garden/fedi-v2/">Fedi v2</a>, <a href="/garden/weird/">Weird</a></p></blockquote><blockquote><p>Tags: <a href="/garden/decentralized/">Decentralized</a></p></blockquote><p>Allow for validating one&#39;s identity without relying on a specific centralized server</p><p>Implementations:</p><ul><li>Private and public keypairs</li><li><a href="https://indieweb.org/IndieAuth" target="_blank" rel="noreferrer">IndieAuth</a> by <a href="/garden/the-small-web/">The IndieWeb</a><ul><li>Supported by <a href="https://github.com/sebadob/rauthy" target="_blank" rel="noreferrer">Rauthy</a> which the <a href="/garden/commune/">Commune</a> community endorses</li></ul></li></ul><p>Self hosted identity providers are NOT enough to be considered federated identity</p><ul><li>OIDC and OAuth require the service owner to have pre-configured with explicitly allowed identity providers</li></ul><p><a href="/garden/incremental-social/">Incremental Social</a> uses Zitadel which does NOT support IndieAuth and probably won&#39;t</p>',9),n=[i];function o(l,s,c,h,p,u){return a(),t("div",null,n)}const m=e(d,[["render",o]]);export{_ as __pageData,m as default}; import{_ as e,c as t,o as a,a4 as r}from"./chunks/framework.CsM8T_AH.js";const _=JSON.parse('{"title":"Federated Identity","description":"","frontmatter":{"public":"true","slug":"federated-identity","tags":["Decentralized"],"title":"Federated Identity","prev":false,"next":false},"headers":[],"relativePath":"garden/federated-identity/index.md","filePath":"garden/federated-identity/index.md"}'),d={name:"garden/federated-identity/index.md"},i=r('<h1 id="federated-identity" tabindex="-1">Federated Identity <a class="header-anchor" href="#federated-identity" aria-label="Permalink to &quot;Federated Identity&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/commune/">Commune</a>, <a href="/garden/fedi-v2/">Fedi v2</a>, <a href="/garden/weird/">Weird</a></p></blockquote><blockquote><p>Tags: <a href="/garden/decentralized/">Decentralized</a></p></blockquote><p>Allow for validating one&#39;s identity without relying on a specific centralized server</p><p>Implementations:</p><ul><li>Private and public keypairs</li><li><a href="https://indieweb.org/IndieAuth" target="_blank" rel="noreferrer">IndieAuth</a> by <a href="/garden/the-small-web/">The IndieWeb</a><ul><li>Supported by <a href="https://github.com/sebadob/rauthy" target="_blank" rel="noreferrer">Rauthy</a> which the <a href="/garden/commune/">Commune</a> community endorses</li></ul></li></ul><p>Self hosted identity providers are NOT enough to be considered federated identity</p><ul><li>OIDC and OAuth require the service owner to have pre-configured with explicitly allowed identity providers</li></ul><p><a href="/garden/incremental-social/">Incremental Social</a> uses Zitadel which does NOT support IndieAuth and probably won&#39;t</p>',9),n=[i];function o(l,s,c,h,p,u){return a(),t("div",null,n)}const m=e(d,[["render",o]]);export{_ as __pageData,m as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a5 as r}from"./chunks/framework.CK8QU5WH.js";const _=JSON.parse('{"title":"Federated Identity","description":"","frontmatter":{"public":"true","slug":"federated-identity","tags":["Decentralized"],"title":"Federated Identity","prev":false,"next":false},"headers":[],"relativePath":"garden/federated-identity/index.md","filePath":"garden/federated-identity/index.md"}'),d={name:"garden/federated-identity/index.md"},i=r("",9),n=[i];function o(l,s,c,h,p,u){return a(),t("div",null,n)}const m=e(d,[["render",o]]);export{_ as __pageData,m as default}; import{_ as e,c as t,o as a,a4 as r}from"./chunks/framework.CsM8T_AH.js";const _=JSON.parse('{"title":"Federated Identity","description":"","frontmatter":{"public":"true","slug":"federated-identity","tags":["Decentralized"],"title":"Federated Identity","prev":false,"next":false},"headers":[],"relativePath":"garden/federated-identity/index.md","filePath":"garden/federated-identity/index.md"}'),d={name:"garden/federated-identity/index.md"},i=r("",9),n=[i];function o(l,s,c,h,p,u){return a(),t("div",null,n)}const m=e(d,[["render",o]]);export{_ as __pageData,m as default};

View file

@ -1 +1 @@
import{_ as e,c as i,o as t,a5 as a}from"./chunks/framework.CK8QU5WH.js";const p=JSON.parse('{"title":"Fedi v2","description":"","frontmatter":{"public":"true","slug":"fedi-v2","title":"Fedi v2","prev":false,"next":false},"headers":[],"relativePath":"garden/fedi-v2/index.md","filePath":"garden/fedi-v2/index.md"}'),l={name:"garden/fedi-v2/index.md"},s=a("",16),o=[s];function r(n,u,d,h,c,y){return t(),i("div",null,o)}const g=e(l,[["render",r]]);export{p as __pageData,g as default}; import{_ as e,c as i,o as t,a4 as a}from"./chunks/framework.CsM8T_AH.js";const p=JSON.parse('{"title":"Fedi v2","description":"","frontmatter":{"public":"true","slug":"fedi-v2","title":"Fedi v2","prev":false,"next":false},"headers":[],"relativePath":"garden/fedi-v2/index.md","filePath":"garden/fedi-v2/index.md"}'),l={name:"garden/fedi-v2/index.md"},s=a("",16),o=[s];function r(n,u,d,h,c,y){return t(),i("div",null,o)}const g=e(l,[["render",r]]);export{p as __pageData,g as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as r,a5 as t}from"./chunks/framework.CK8QU5WH.js";const u=JSON.parse('{"title":"Fediverse","description":"","frontmatter":{"alias":"Federated Social Media","public":"true","slug":"fediverse","tags":["Decentralized"],"title":"Fediverse","prev":false,"next":false},"headers":[],"relativePath":"garden/fediverse/index.md","filePath":"garden/fediverse/index.md"}'),i={name:"garden/fediverse/index.md"},d=t('<h1 id="fediverse" tabindex="-1">Fediverse <a class="header-anchor" href="#fediverse" aria-label="Permalink to &quot;Fediverse&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/atproto/">ATProto</a>, <a href="/garden/decentralized/">Decentralized</a>, <a href="/garden/fedi-v2/">Fedi v2</a>, <a href="/garden/incremental-social/">Incremental Social</a>, <a href="/garden/mbin/">Mbin</a>, <a href="/garden/weird/">Weird</a></p></blockquote><blockquote><p>Tags: <a href="/garden/decentralized/">Decentralized</a></p></blockquote><p>A collection of <a href="/garden/social-media/">Social Media</a> websites that can all talk to each other by virtue of a shared protocol</p><p>Typically refers to sites implementing <a href="/garden/activitypub/">ActivityPub</a></p><p>Implementations:</p><ul><li><a href="/garden/activitypub/">ActivityPub</a></li><li><a href="/garden/atproto/">ATProto</a></li><li><a href="/garden/nostr/">Nostr</a></li></ul>',7),n=[d];function o(l,s,c,f,p,h){return r(),a("div",null,n)}const g=e(i,[["render",o]]);export{u as __pageData,g as default}; import{_ as e,c as a,o as r,a4 as t}from"./chunks/framework.CsM8T_AH.js";const u=JSON.parse('{"title":"Fediverse","description":"","frontmatter":{"alias":"Federated Social Media","public":"true","slug":"fediverse","tags":["Decentralized"],"title":"Fediverse","prev":false,"next":false},"headers":[],"relativePath":"garden/fediverse/index.md","filePath":"garden/fediverse/index.md"}'),i={name:"garden/fediverse/index.md"},d=t('<h1 id="fediverse" tabindex="-1">Fediverse <a class="header-anchor" href="#fediverse" aria-label="Permalink to &quot;Fediverse&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/atproto/">ATProto</a>, <a href="/garden/decentralized/">Decentralized</a>, <a href="/garden/fedi-v2/">Fedi v2</a>, <a href="/garden/incremental-social/">Incremental Social</a>, <a href="/garden/mbin/">Mbin</a>, <a href="/garden/weird/">Weird</a></p></blockquote><blockquote><p>Tags: <a href="/garden/decentralized/">Decentralized</a></p></blockquote><p>A collection of <a href="/garden/social-media/">Social Media</a> websites that can all talk to each other by virtue of a shared protocol</p><p>Typically refers to sites implementing <a href="/garden/activitypub/">ActivityPub</a></p><p>Implementations:</p><ul><li><a href="/garden/activitypub/">ActivityPub</a></li><li><a href="/garden/atproto/">ATProto</a></li><li><a href="/garden/nostr/">Nostr</a></li></ul>',7),n=[d];function o(l,s,c,f,p,h){return r(),a("div",null,n)}const g=e(i,[["render",o]]);export{u as __pageData,g as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as r,a5 as t}from"./chunks/framework.CK8QU5WH.js";const u=JSON.parse('{"title":"Fediverse","description":"","frontmatter":{"alias":"Federated Social Media","public":"true","slug":"fediverse","tags":["Decentralized"],"title":"Fediverse","prev":false,"next":false},"headers":[],"relativePath":"garden/fediverse/index.md","filePath":"garden/fediverse/index.md"}'),i={name:"garden/fediverse/index.md"},d=t("",7),n=[d];function o(l,s,c,f,p,h){return r(),a("div",null,n)}const g=e(i,[["render",o]]);export{u as __pageData,g as default}; import{_ as e,c as a,o as r,a4 as t}from"./chunks/framework.CsM8T_AH.js";const u=JSON.parse('{"title":"Fediverse","description":"","frontmatter":{"alias":"Federated Social Media","public":"true","slug":"fediverse","tags":["Decentralized"],"title":"Fediverse","prev":false,"next":false},"headers":[],"relativePath":"garden/fediverse/index.md","filePath":"garden/fediverse/index.md"}'),i={name:"garden/fediverse/index.md"},d=t("",7),n=[d];function o(l,s,c,f,p,h){return r(),a("div",null,n)}const g=e(i,[["render",o]]);export{u as __pageData,g as default};

View file

@ -1 +1 @@
import{_ as e,c as o,o as r,a5 as a}from"./chunks/framework.CK8QU5WH.js";const h=JSON.parse('{"title":"Forgejo","description":"","frontmatter":{"public":"true","slug":"forgejo","title":"Forgejo","prev":false,"next":false},"headers":[],"relativePath":"garden/forgejo/index.md","filePath":"garden/forgejo/index.md"}'),t={name:"garden/forgejo/index.md"},n=a('<h1 id="forgejo" tabindex="-1">Forgejo <a class="header-anchor" href="#forgejo" aria-label="Permalink to &quot;Forgejo&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/incremental-social/">Incremental Social</a></p></blockquote><p><a href="https://forgejo.org" target="_blank" rel="noreferrer">Forgejo</a> is an <a href="/garden/open-source/">Open Source</a> code repository hosting software</p>',3),s=[n];function c(i,_,d,l,f,g){return r(),o("div",null,s)}const u=e(t,[["render",c]]);export{h as __pageData,u as default}; import{_ as e,c as o,o as r,a4 as a}from"./chunks/framework.CsM8T_AH.js";const h=JSON.parse('{"title":"Forgejo","description":"","frontmatter":{"public":"true","slug":"forgejo","title":"Forgejo","prev":false,"next":false},"headers":[],"relativePath":"garden/forgejo/index.md","filePath":"garden/forgejo/index.md"}'),t={name:"garden/forgejo/index.md"},n=a('<h1 id="forgejo" tabindex="-1">Forgejo <a class="header-anchor" href="#forgejo" aria-label="Permalink to &quot;Forgejo&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/incremental-social/">Incremental Social</a></p></blockquote><p><a href="https://forgejo.org" target="_blank" rel="noreferrer">Forgejo</a> is an <a href="/garden/open-source/">Open Source</a> code repository hosting software</p>',3),s=[n];function c(i,_,d,l,f,g){return r(),o("div",null,s)}const u=e(t,[["render",c]]);export{h as __pageData,u as default};

View file

@ -1 +1 @@
import{_ as e,c as o,o as r,a5 as a}from"./chunks/framework.CK8QU5WH.js";const h=JSON.parse('{"title":"Forgejo","description":"","frontmatter":{"public":"true","slug":"forgejo","title":"Forgejo","prev":false,"next":false},"headers":[],"relativePath":"garden/forgejo/index.md","filePath":"garden/forgejo/index.md"}'),t={name:"garden/forgejo/index.md"},n=a("",3),s=[n];function c(i,_,d,l,f,g){return r(),o("div",null,s)}const u=e(t,[["render",c]]);export{h as __pageData,u as default}; import{_ as e,c as o,o as r,a4 as a}from"./chunks/framework.CsM8T_AH.js";const h=JSON.parse('{"title":"Forgejo","description":"","frontmatter":{"public":"true","slug":"forgejo","title":"Forgejo","prev":false,"next":false},"headers":[],"relativePath":"garden/forgejo/index.md","filePath":"garden/forgejo/index.md"}'),t={name:"garden/forgejo/index.md"},n=a("",3),s=[n];function c(i,_,d,l,f,g){return r(),o("div",null,s)}const u=e(t,[["render",c]]);export{h as __pageData,u as default};

View file

@ -1 +1 @@
import{_ as o,c as e,o as r,a5 as a}from"./chunks/framework.CK8QU5WH.js";const g=JSON.parse('{"title":"Freeform vs Chronological Dichotomy","description":"","frontmatter":{"public":"true","slug":"freeform-vs-chronological-dichotomy","title":"Freeform vs Chronological Dichotomy","prev":false,"next":false},"headers":[],"relativePath":"garden/freeform-vs-chronological-dichotomy/index.md","filePath":"garden/freeform-vs-chronological-dichotomy/index.md"}'),c={name:"garden/freeform-vs-chronological-dichotomy/index.md"},n=a('<h1 id="freeform-vs-chronological-dichotomy" tabindex="-1">Freeform vs Chronological Dichotomy <a class="header-anchor" href="#freeform-vs-chronological-dichotomy" aria-label="Permalink to &quot;Freeform vs Chronological Dichotomy&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/chronological/">Chronological</a>, <a href="/garden/freeform/">Freeform</a></p></blockquote><p>Describes a dichotomy between displaying information in a <a href="/garden/freeform/">Freeform</a> vs <a href="/garden/chronological/">Chronological</a> manner</p>',3),t=[n];function i(l,h,s,f,m,d){return r(),e("div",null,t)}const p=o(c,[["render",i]]);export{g as __pageData,p as default}; import{_ as o,c as e,o as r,a4 as a}from"./chunks/framework.CsM8T_AH.js";const g=JSON.parse('{"title":"Freeform vs Chronological Dichotomy","description":"","frontmatter":{"public":"true","slug":"freeform-vs-chronological-dichotomy","title":"Freeform vs Chronological Dichotomy","prev":false,"next":false},"headers":[],"relativePath":"garden/freeform-vs-chronological-dichotomy/index.md","filePath":"garden/freeform-vs-chronological-dichotomy/index.md"}'),c={name:"garden/freeform-vs-chronological-dichotomy/index.md"},n=a('<h1 id="freeform-vs-chronological-dichotomy" tabindex="-1">Freeform vs Chronological Dichotomy <a class="header-anchor" href="#freeform-vs-chronological-dichotomy" aria-label="Permalink to &quot;Freeform vs Chronological Dichotomy&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/chronological/">Chronological</a>, <a href="/garden/freeform/">Freeform</a></p></blockquote><p>Describes a dichotomy between displaying information in a <a href="/garden/freeform/">Freeform</a> vs <a href="/garden/chronological/">Chronological</a> manner</p>',3),t=[n];function i(l,h,s,f,m,d){return r(),e("div",null,t)}const p=o(c,[["render",i]]);export{g as __pageData,p as default};

View file

@ -1 +1 @@
import{_ as o,c as e,o as r,a5 as a}from"./chunks/framework.CK8QU5WH.js";const g=JSON.parse('{"title":"Freeform vs Chronological Dichotomy","description":"","frontmatter":{"public":"true","slug":"freeform-vs-chronological-dichotomy","title":"Freeform vs Chronological Dichotomy","prev":false,"next":false},"headers":[],"relativePath":"garden/freeform-vs-chronological-dichotomy/index.md","filePath":"garden/freeform-vs-chronological-dichotomy/index.md"}'),c={name:"garden/freeform-vs-chronological-dichotomy/index.md"},n=a("",3),t=[n];function i(l,h,s,f,m,d){return r(),e("div",null,t)}const p=o(c,[["render",i]]);export{g as __pageData,p as default}; import{_ as o,c as e,o as r,a4 as a}from"./chunks/framework.CsM8T_AH.js";const g=JSON.parse('{"title":"Freeform vs Chronological Dichotomy","description":"","frontmatter":{"public":"true","slug":"freeform-vs-chronological-dichotomy","title":"Freeform vs Chronological Dichotomy","prev":false,"next":false},"headers":[],"relativePath":"garden/freeform-vs-chronological-dichotomy/index.md","filePath":"garden/freeform-vs-chronological-dichotomy/index.md"}'),c={name:"garden/freeform-vs-chronological-dichotomy/index.md"},n=a("",3),t=[n];function i(l,h,s,f,m,d){return r(),e("div",null,t)}const p=o(c,[["render",i]]);export{g as __pageData,p as default};

View file

@ -1 +1 @@
import{_ as e,c as r,o,a5 as a}from"./chunks/framework.CK8QU5WH.js";const g=JSON.parse('{"title":"Freeform","description":"","frontmatter":{"public":"true","slug":"freeform","title":"Freeform","prev":false,"next":false},"headers":[],"relativePath":"garden/freeform/index.md","filePath":"garden/freeform/index.md"}'),t={name:"garden/freeform/index.md"},n=a('<h1 id="freeform" tabindex="-1">Freeform <a class="header-anchor" href="#freeform" aria-label="Permalink to &quot;Freeform&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/commune/">Commune</a>, <a href="/garden/digital-gardens/">Digital Gardens</a>, <a href="/garden/freeform-vs-chronological-dichotomy/">Freeform vs Chronological Dichotomy</a>, <a href="/garden/garden-rss/">Garden-RSS</a>, <a href="/garden/the-small-web/">The Small Web</a></p></blockquote><p>A collection of information that is not tied to when it was created or edited</p><p>Part of the <a href="/garden/freeform-vs-chronological-dichotomy/">Freeform vs Chronological Dichotomy</a></p><p>Anything wiki-style is considered freeform</p><ul><li>A collection of living documents</li></ul><p><a href="/garden/garden-rss/">Garden-RSS</a>, a theoretical alternative to RSS that&#39;s better for freeform content</p>',7),i=[n];function f(d,l,c,s,m,h){return o(),r("div",null,i)}const p=e(t,[["render",f]]);export{g as __pageData,p as default}; import{_ as e,c as r,o,a4 as a}from"./chunks/framework.CsM8T_AH.js";const g=JSON.parse('{"title":"Freeform","description":"","frontmatter":{"public":"true","slug":"freeform","title":"Freeform","prev":false,"next":false},"headers":[],"relativePath":"garden/freeform/index.md","filePath":"garden/freeform/index.md"}'),t={name:"garden/freeform/index.md"},n=a('<h1 id="freeform" tabindex="-1">Freeform <a class="header-anchor" href="#freeform" aria-label="Permalink to &quot;Freeform&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/commune/">Commune</a>, <a href="/garden/digital-gardens/">Digital Gardens</a>, <a href="/garden/freeform-vs-chronological-dichotomy/">Freeform vs Chronological Dichotomy</a>, <a href="/garden/garden-rss/">Garden-RSS</a>, <a href="/garden/the-small-web/">The Small Web</a></p></blockquote><p>A collection of information that is not tied to when it was created or edited</p><p>Part of the <a href="/garden/freeform-vs-chronological-dichotomy/">Freeform vs Chronological Dichotomy</a></p><p>Anything wiki-style is considered freeform</p><ul><li>A collection of living documents</li></ul><p><a href="/garden/garden-rss/">Garden-RSS</a>, a theoretical alternative to RSS that&#39;s better for freeform content</p>',7),i=[n];function f(d,l,c,s,m,h){return o(),r("div",null,i)}const p=e(t,[["render",f]]);export{g as __pageData,p as default};

View file

@ -1 +1 @@
import{_ as e,c as r,o,a5 as a}from"./chunks/framework.CK8QU5WH.js";const g=JSON.parse('{"title":"Freeform","description":"","frontmatter":{"public":"true","slug":"freeform","title":"Freeform","prev":false,"next":false},"headers":[],"relativePath":"garden/freeform/index.md","filePath":"garden/freeform/index.md"}'),t={name:"garden/freeform/index.md"},n=a("",7),i=[n];function f(d,l,c,s,m,h){return o(),r("div",null,i)}const p=e(t,[["render",f]]);export{g as __pageData,p as default}; import{_ as e,c as r,o,a4 as a}from"./chunks/framework.CsM8T_AH.js";const g=JSON.parse('{"title":"Freeform","description":"","frontmatter":{"public":"true","slug":"freeform","title":"Freeform","prev":false,"next":false},"headers":[],"relativePath":"garden/freeform/index.md","filePath":"garden/freeform/index.md"}'),t={name:"garden/freeform/index.md"},n=a("",7),i=[n];function f(d,l,c,s,m,h){return o(),r("div",null,i)}const p=e(t,[["render",f]]);export{g as __pageData,p as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a5 as r}from"./chunks/framework.CK8QU5WH.js";const g=JSON.parse('{"title":"Game Dev Tree","description":"","frontmatter":{"public":"true","slug":"game-dev-tree","tags":["My Projects"],"title":"Game Dev Tree","prev":false,"next":false},"headers":[],"relativePath":"garden/game-dev-tree/index.md","filePath":"garden/game-dev-tree/index.md"}'),o={name:"garden/game-dev-tree/index.md"},n=r('<h1 id="game-dev-tree" tabindex="-1">Game Dev Tree <a class="header-anchor" href="#game-dev-tree" aria-label="Permalink to &quot;Game Dev Tree&quot;"></a></h1><blockquote><p>Tags: <a href="/garden/my-projects/">My Projects</a></p></blockquote><p>Play it <a href="https://thepaperpilot.org/gamedevtree" target="_blank" rel="noreferrer">here</a>!</p><p>My first (good) incremental game! (My actual first was <a href="https://thepaperpilot.itch.io/shape-tycoon" target="_blank" rel="noreferrer">Shape Tycoon</a> - I don&#39;t recommend it!)</p><p>It&#39;s <a href="/garden/open-source/">Open Source</a>!</p><p>The <a href="https://tvtropes.org/pmwiki/pmwiki.php/VideoGame/TheGameDevTree" target="_blank" rel="noreferrer">TV Tropes</a> page on this game mentions some of the cool things about this game</p>',6),s=[n];function p(i,c,d,m,h,l){return a(),t("div",null,s)}const f=e(o,[["render",p]]);export{g as __pageData,f as default}; import{_ as e,c as t,o as a,a4 as r}from"./chunks/framework.CsM8T_AH.js";const g=JSON.parse('{"title":"Game Dev Tree","description":"","frontmatter":{"public":"true","slug":"game-dev-tree","tags":["My Projects"],"title":"Game Dev Tree","prev":false,"next":false},"headers":[],"relativePath":"garden/game-dev-tree/index.md","filePath":"garden/game-dev-tree/index.md"}'),o={name:"garden/game-dev-tree/index.md"},n=r('<h1 id="game-dev-tree" tabindex="-1">Game Dev Tree <a class="header-anchor" href="#game-dev-tree" aria-label="Permalink to &quot;Game Dev Tree&quot;"></a></h1><blockquote><p>Tags: <a href="/garden/my-projects/">My Projects</a></p></blockquote><p>Play it <a href="https://thepaperpilot.org/gamedevtree" target="_blank" rel="noreferrer">here</a>!</p><p>My first (good) incremental game! (My actual first was <a href="https://thepaperpilot.itch.io/shape-tycoon" target="_blank" rel="noreferrer">Shape Tycoon</a> - I don&#39;t recommend it!)</p><p>It&#39;s <a href="/garden/open-source/">Open Source</a>!</p><p>The <a href="https://tvtropes.org/pmwiki/pmwiki.php/VideoGame/TheGameDevTree" target="_blank" rel="noreferrer">TV Tropes</a> page on this game mentions some of the cool things about this game</p>',6),s=[n];function p(i,c,d,m,h,l){return a(),t("div",null,s)}const f=e(o,[["render",p]]);export{g as __pageData,f as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a5 as r}from"./chunks/framework.CK8QU5WH.js";const g=JSON.parse('{"title":"Game Dev Tree","description":"","frontmatter":{"public":"true","slug":"game-dev-tree","tags":["My Projects"],"title":"Game Dev Tree","prev":false,"next":false},"headers":[],"relativePath":"garden/game-dev-tree/index.md","filePath":"garden/game-dev-tree/index.md"}'),o={name:"garden/game-dev-tree/index.md"},n=r("",6),s=[n];function p(i,c,d,m,h,l){return a(),t("div",null,s)}const f=e(o,[["render",p]]);export{g as __pageData,f as default}; import{_ as e,c as t,o as a,a4 as r}from"./chunks/framework.CsM8T_AH.js";const g=JSON.parse('{"title":"Game Dev Tree","description":"","frontmatter":{"public":"true","slug":"game-dev-tree","tags":["My Projects"],"title":"Game Dev Tree","prev":false,"next":false},"headers":[],"relativePath":"garden/game-dev-tree/index.md","filePath":"garden/game-dev-tree/index.md"}'),o={name:"garden/game-dev-tree/index.md"},n=r("",6),s=[n];function p(i,c,d,m,h,l){return a(),t("div",null,s)}const f=e(o,[["render",p]]);export{g as __pageData,f as default};

View file

@ -1 +1 @@
import{_ as e,c as r,o as a,a5 as t}from"./chunks/framework.CK8QU5WH.js";const u=JSON.parse('{"title":"Garden-RSS","description":"","frontmatter":{"public":"true","slug":"garden-rss","title":"Garden-RSS","prev":false,"next":false},"headers":[],"relativePath":"garden/garden-rss/index.md","filePath":"garden/garden-rss/index.md"}'),s={name:"garden/garden-rss/index.md"},i=t('<h1 id="garden-rss" tabindex="-1">Garden-RSS <a class="header-anchor" href="#garden-rss" aria-label="Permalink to &quot;Garden-RSS&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/freeform/">Freeform</a>, <a href="/garden/the-small-web/">The Small Web</a>, <a href="/garden/this-knowledge-hub/">This Knowledge Hub</a></p></blockquote><p>A theoretical alternative to RSS that&#39;s better for <a href="/garden/freeform/">Freeform</a> websites (and <a href="/garden/digital-gardens/">Digital Gardens</a> specifically )</p><p>Why is it useful?</p><ul><li><a href="https://v5.chriskrycho.com/essays/feeds-are-not-fit-for-gardening/" target="_blank" rel="noreferrer">Feeds are not fit for gardening</a><ul><li>Describes the issues with RSS for <a href="/garden/digital-gardens/">Digital Gardens</a></li><li>Proposes creating an alternative, which they call <code>grdn</code></li></ul></li></ul><p>How should it work?</p><ul><li>Could display changes similar to git diffs</li></ul><p>Existing Work</p><ul><li><a href="https://github.com/chriskrycho/grdn/blob/main/SPEC.md" target="_blank" rel="noreferrer"><code>grdn</code> Specification</a></li><li><a href="https://forum.summerofprotocols.com/t/pig-rss-all-the-things/383" target="_blank" rel="noreferrer">Proposal to build set of extensions to RSS</a></li></ul>',9),n=[i];function o(l,d,c,f,h,g){return a(),r("div",null,n)}const _=e(s,[["render",o]]);export{u as __pageData,_ as default}; import{_ as e,c as r,o as a,a4 as t}from"./chunks/framework.CsM8T_AH.js";const u=JSON.parse('{"title":"Garden-RSS","description":"","frontmatter":{"public":"true","slug":"garden-rss","title":"Garden-RSS","prev":false,"next":false},"headers":[],"relativePath":"garden/garden-rss/index.md","filePath":"garden/garden-rss/index.md"}'),s={name:"garden/garden-rss/index.md"},i=t('<h1 id="garden-rss" tabindex="-1">Garden-RSS <a class="header-anchor" href="#garden-rss" aria-label="Permalink to &quot;Garden-RSS&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/freeform/">Freeform</a>, <a href="/garden/the-small-web/">The Small Web</a>, <a href="/garden/this-knowledge-hub/">This Knowledge Hub</a></p></blockquote><p>A theoretical alternative to RSS that&#39;s better for <a href="/garden/freeform/">Freeform</a> websites (and <a href="/garden/digital-gardens/">Digital Gardens</a> specifically )</p><p>Why is it useful?</p><ul><li><a href="https://v5.chriskrycho.com/essays/feeds-are-not-fit-for-gardening/" target="_blank" rel="noreferrer">Feeds are not fit for gardening</a><ul><li>Describes the issues with RSS for <a href="/garden/digital-gardens/">Digital Gardens</a></li><li>Proposes creating an alternative, which they call <code>grdn</code></li></ul></li></ul><p>How should it work?</p><ul><li>Could display changes similar to git diffs</li></ul><p>Existing Work</p><ul><li><a href="https://github.com/chriskrycho/grdn/blob/main/SPEC.md" target="_blank" rel="noreferrer"><code>grdn</code> Specification</a></li><li><a href="https://forum.summerofprotocols.com/t/pig-rss-all-the-things/383" target="_blank" rel="noreferrer">Proposal to build set of extensions to RSS</a></li></ul>',9),n=[i];function o(l,d,c,f,h,g){return a(),r("div",null,n)}const _=e(s,[["render",o]]);export{u as __pageData,_ as default};

View file

@ -1 +1 @@
import{_ as e,c as r,o as a,a5 as t}from"./chunks/framework.CK8QU5WH.js";const u=JSON.parse('{"title":"Garden-RSS","description":"","frontmatter":{"public":"true","slug":"garden-rss","title":"Garden-RSS","prev":false,"next":false},"headers":[],"relativePath":"garden/garden-rss/index.md","filePath":"garden/garden-rss/index.md"}'),s={name:"garden/garden-rss/index.md"},i=t("",9),n=[i];function o(l,d,c,f,h,g){return a(),r("div",null,n)}const _=e(s,[["render",o]]);export{u as __pageData,_ as default}; import{_ as e,c as r,o as a,a4 as t}from"./chunks/framework.CsM8T_AH.js";const u=JSON.parse('{"title":"Garden-RSS","description":"","frontmatter":{"public":"true","slug":"garden-rss","title":"Garden-RSS","prev":false,"next":false},"headers":[],"relativePath":"garden/garden-rss/index.md","filePath":"garden/garden-rss/index.md"}'),s={name:"garden/garden-rss/index.md"},i=t("",9),n=[i];function o(l,d,c,f,h,g){return a(),r("div",null,n)}const _=e(s,[["render",o]]);export{u as __pageData,_ as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as t,a5 as o}from"./chunks/framework.CK8QU5WH.js";const g=JSON.parse('{"title":"Guide to Incrementals/Appeal to Developers","description":"","frontmatter":{"public":"true","slug":"guide-to-incrementals/appeal-to-developers","title":"Guide to Incrementals/Appeal to Developers","prev":false,"next":false},"headers":[],"relativePath":"garden/guide-to-incrementals/appeal-to-developers/index.md","filePath":"garden/guide-to-incrementals/appeal-to-developers/index.md"}'),n={name:"garden/guide-to-incrementals/appeal-to-developers/index.md"},i=o("",13),r=[i];function l(s,d,m,c,p,h){return t(),a("div",null,r)}const y=e(n,[["render",l]]);export{g as __pageData,y as default}; import{_ as e,c as a,o as t,a4 as o}from"./chunks/framework.CsM8T_AH.js";const g=JSON.parse('{"title":"Guide to Incrementals/Appeal to Developers","description":"","frontmatter":{"public":"true","slug":"guide-to-incrementals/appeal-to-developers","title":"Guide to Incrementals/Appeal to Developers","prev":false,"next":false},"headers":[],"relativePath":"garden/guide-to-incrementals/appeal-to-developers/index.md","filePath":"garden/guide-to-incrementals/appeal-to-developers/index.md"}'),n={name:"garden/guide-to-incrementals/appeal-to-developers/index.md"},i=o("",13),r=[i];function l(s,d,m,c,p,h){return t(),a("div",null,r)}const y=e(n,[["render",l]]);export{g as __pageData,y as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a5 as i}from"./chunks/framework.CK8QU5WH.js";const u=JSON.parse('{"title":"Guide to Incrementals/Appeal to Players","description":"","frontmatter":{"public":"true","slug":"guide-to-incrementals/appeal-to-players","title":"Guide to Incrementals/Appeal to Players","prev":false,"next":false},"headers":[],"relativePath":"garden/guide-to-incrementals/appeal-to-players/index.md","filePath":"garden/guide-to-incrementals/appeal-to-players/index.md"}'),n={name:"garden/guide-to-incrementals/appeal-to-players/index.md"},o=i("",28),s=[o];function r(l,h,m,g,d,c){return a(),t("div",null,s)}const y=e(n,[["render",r]]);export{u as __pageData,y as default}; import{_ as e,c as t,o as a,a4 as i}from"./chunks/framework.CsM8T_AH.js";const u=JSON.parse('{"title":"Guide to Incrementals/Appeal to Players","description":"","frontmatter":{"public":"true","slug":"guide-to-incrementals/appeal-to-players","title":"Guide to Incrementals/Appeal to Players","prev":false,"next":false},"headers":[],"relativePath":"garden/guide-to-incrementals/appeal-to-players/index.md","filePath":"garden/guide-to-incrementals/appeal-to-players/index.md"}'),n={name:"garden/guide-to-incrementals/appeal-to-players/index.md"},o=i("",28),s=[o];function r(l,h,m,g,d,c){return a(),t("div",null,s)}const y=e(n,[["render",r]]);export{u as __pageData,y as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a5 as r}from"./chunks/framework.CK8QU5WH.js";const p=JSON.parse('{"title":"Guide to Incrementals/Defining the Genre","description":"","frontmatter":{"public":"true","slug":"guide-to-incrementals/defining-the-genre","title":"Guide to Incrementals/Defining the Genre","prev":false,"next":false},"headers":[],"relativePath":"garden/guide-to-incrementals/defining-the-genre/index.md","filePath":"garden/guide-to-incrementals/defining-the-genre/index.md"}'),n={name:"garden/guide-to-incrementals/defining-the-genre/index.md"},o=r("",64),i=[o];function s(l,h,m,g,c,u){return a(),t("div",null,i)}const f=e(n,[["render",s]]);export{p as __pageData,f as default}; import{_ as e,c as t,o as a,a4 as r}from"./chunks/framework.CsM8T_AH.js";const p=JSON.parse('{"title":"Guide to Incrementals/Defining the Genre","description":"","frontmatter":{"public":"true","slug":"guide-to-incrementals/defining-the-genre","title":"Guide to Incrementals/Defining the Genre","prev":false,"next":false},"headers":[],"relativePath":"garden/guide-to-incrementals/defining-the-genre/index.md","filePath":"garden/guide-to-incrementals/defining-the-genre/index.md"}'),n={name:"garden/guide-to-incrementals/defining-the-genre/index.md"},o=r("",64),i=[o];function s(l,h,m,g,c,u){return a(),t("div",null,i)}const f=e(n,[["render",s]]);export{p as __pageData,f as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as t,a5 as n}from"./chunks/framework.CK8QU5WH.js";const p=JSON.parse('{"title":"Guide to Incrementals","description":"","frontmatter":{"public":"true","slug":"guide-to-incrementals","title":"Guide to Incrementals","prev":false,"next":false},"headers":[],"relativePath":"garden/guide-to-incrementals/index.md","filePath":"garden/guide-to-incrementals/index.md"}'),i={name:"garden/guide-to-incrementals/index.md"},o=n('<h1 id="guide-to-incrementals" tabindex="-1">Guide to Incrementals <a class="header-anchor" href="#guide-to-incrementals" aria-label="Permalink to &quot;Guide to Incrementals&quot;"></a></h1><p>This is a comprehensive guide to Incremental Games, a genre of video games. It will explore defining the genre, why it&#39;s appealing, and how to design and build your own incremental game. Along the way will be <s>interactive examples</s>, snippets from other creators, and relevant material to contextualize everything.</p><blockquote><p>Note: This is an incomplete document. I want to keep adding opinions and opposing views from other incremental games developers, and add interactive examples to illustrate various points regarding game design and balancing. Consider this a living document - and see the changelog at the end.</p></blockquote><blockquote><p>Note: This was made before my switch to a digital garden, and is written as prose. Hope you don&#39;t mind!</p></blockquote><h2 id="why-am-i-making-this" tabindex="-1">Why am I making this? <a class="header-anchor" href="#why-am-i-making-this" aria-label="Permalink to &quot;Why am I making this?&quot;"></a></h2><p>That&#39;s a good question! What authority do I have to be making this guide? I haven&#39;t made the best incremental games, nor the most incremental games, certainly not the most popular ones either. But I do have some formal education in game development, know a lot of incremental game devs (as well as other game devs), and have a passionate interest in ludology, classifying genres, etc. I&#39;ve also made <a href="/garden/my-projects/">a couple of incremental games</a>) myself.</p><p>If you have any additional questions about my credentials or anything on this site, feel free to reach out!</p><h2 id="ludology" tabindex="-1">Ludology <a class="header-anchor" href="#ludology" aria-label="Permalink to &quot;Ludology&quot;"></a></h2><ul><li><a href="/garden/guide-to-incrementals/defining-the-genre/">Guide to Incrementals/Defining the Genre</a></li><li><a href="/garden/guide-to-incrementals/appeal-to-players/">Guide to Incrementals/Appeal to Players</a></li><li><a href="/garden/guide-to-incrementals/appeal-to-developers/">Guide to Incrementals/Appeal to Developers</a></li><li><a href="/garden/guide-to-incrementals/what-is-content/">Guide to Incrementals/What is Content?</a></li></ul><h2 id="making-an-incremental" tabindex="-1">Making an Incremental <a class="header-anchor" href="#making-an-incremental" aria-label="Permalink to &quot;Making an Incremental&quot;"></a></h2><ul><li><a href="/garden/guide-to-incrementals/navigating-criticism/">Guide to Incrementals/Navigating Criticism</a></li></ul>',11),r=[o];function l(s,d,m,c,g,h){return t(),a("div",null,r)}const f=e(i,[["render",l]]);export{p as __pageData,f as default}; import{_ as e,c as a,o as t,a4 as n}from"./chunks/framework.CsM8T_AH.js";const p=JSON.parse('{"title":"Guide to Incrementals","description":"","frontmatter":{"public":"true","slug":"guide-to-incrementals","title":"Guide to Incrementals","prev":false,"next":false},"headers":[],"relativePath":"garden/guide-to-incrementals/index.md","filePath":"garden/guide-to-incrementals/index.md"}'),i={name:"garden/guide-to-incrementals/index.md"},o=n('<h1 id="guide-to-incrementals" tabindex="-1">Guide to Incrementals <a class="header-anchor" href="#guide-to-incrementals" aria-label="Permalink to &quot;Guide to Incrementals&quot;"></a></h1><p>This is a comprehensive guide to Incremental Games, a genre of video games. It will explore defining the genre, why it&#39;s appealing, and how to design and build your own incremental game. Along the way will be <s>interactive examples</s>, snippets from other creators, and relevant material to contextualize everything.</p><blockquote><p>Note: This is an incomplete document. I want to keep adding opinions and opposing views from other incremental games developers, and add interactive examples to illustrate various points regarding game design and balancing. Consider this a living document - and see the changelog at the end.</p></blockquote><blockquote><p>Note: This was made before my switch to a digital garden, and is written as prose. Hope you don&#39;t mind!</p></blockquote><h2 id="why-am-i-making-this" tabindex="-1">Why am I making this? <a class="header-anchor" href="#why-am-i-making-this" aria-label="Permalink to &quot;Why am I making this?&quot;"></a></h2><p>That&#39;s a good question! What authority do I have to be making this guide? I haven&#39;t made the best incremental games, nor the most incremental games, certainly not the most popular ones either. But I do have some formal education in game development, know a lot of incremental game devs (as well as other game devs), and have a passionate interest in ludology, classifying genres, etc. I&#39;ve also made <a href="/garden/my-projects/">a couple of incremental games</a>) myself.</p><p>If you have any additional questions about my credentials or anything on this site, feel free to reach out!</p><h2 id="ludology" tabindex="-1">Ludology <a class="header-anchor" href="#ludology" aria-label="Permalink to &quot;Ludology&quot;"></a></h2><ul><li><a href="/garden/guide-to-incrementals/defining-the-genre/">Guide to Incrementals/Defining the Genre</a></li><li><a href="/garden/guide-to-incrementals/appeal-to-players/">Guide to Incrementals/Appeal to Players</a></li><li><a href="/garden/guide-to-incrementals/appeal-to-developers/">Guide to Incrementals/Appeal to Developers</a></li><li><a href="/garden/guide-to-incrementals/what-is-content/">Guide to Incrementals/What is Content?</a></li></ul><h2 id="making-an-incremental" tabindex="-1">Making an Incremental <a class="header-anchor" href="#making-an-incremental" aria-label="Permalink to &quot;Making an Incremental&quot;"></a></h2><ul><li><a href="/garden/guide-to-incrementals/navigating-criticism/">Guide to Incrementals/Navigating Criticism</a></li></ul>',11),r=[o];function l(s,d,m,c,g,h){return t(),a("div",null,r)}const f=e(i,[["render",l]]);export{p as __pageData,f as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as t,a5 as n}from"./chunks/framework.CK8QU5WH.js";const p=JSON.parse('{"title":"Guide to Incrementals","description":"","frontmatter":{"public":"true","slug":"guide-to-incrementals","title":"Guide to Incrementals","prev":false,"next":false},"headers":[],"relativePath":"garden/guide-to-incrementals/index.md","filePath":"garden/guide-to-incrementals/index.md"}'),i={name:"garden/guide-to-incrementals/index.md"},o=n("",11),r=[o];function l(s,d,m,c,g,h){return t(),a("div",null,r)}const f=e(i,[["render",l]]);export{p as __pageData,f as default}; import{_ as e,c as a,o as t,a4 as n}from"./chunks/framework.CsM8T_AH.js";const p=JSON.parse('{"title":"Guide to Incrementals","description":"","frontmatter":{"public":"true","slug":"guide-to-incrementals","title":"Guide to Incrementals","prev":false,"next":false},"headers":[],"relativePath":"garden/guide-to-incrementals/index.md","filePath":"garden/guide-to-incrementals/index.md"}'),i={name:"garden/guide-to-incrementals/index.md"},o=n("",11),r=[o];function l(s,d,m,c,g,h){return t(),a("div",null,r)}const f=e(i,[["render",l]]);export{p as __pageData,f as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a5 as i}from"./chunks/framework.CK8QU5WH.js";const p=JSON.parse('{"title":"Guide to Incrementals/Navigating Criticism","description":"","frontmatter":{"public":"true","slug":"guide-to-incrementals/navigating-criticism","title":"Guide to Incrementals/Navigating Criticism","prev":false,"next":false},"headers":[],"relativePath":"garden/guide-to-incrementals/navigating-criticism/index.md","filePath":"garden/guide-to-incrementals/navigating-criticism/index.md"}'),n={name:"garden/guide-to-incrementals/navigating-criticism/index.md"},o=i("",11),r=[o];function s(c,l,d,u,m,h){return a(),t("div",null,r)}const f=e(n,[["render",s]]);export{p as __pageData,f as default}; import{_ as e,c as t,o as a,a4 as i}from"./chunks/framework.CsM8T_AH.js";const p=JSON.parse('{"title":"Guide to Incrementals/Navigating Criticism","description":"","frontmatter":{"public":"true","slug":"guide-to-incrementals/navigating-criticism","title":"Guide to Incrementals/Navigating Criticism","prev":false,"next":false},"headers":[],"relativePath":"garden/guide-to-incrementals/navigating-criticism/index.md","filePath":"garden/guide-to-incrementals/navigating-criticism/index.md"}'),n={name:"garden/guide-to-incrementals/navigating-criticism/index.md"},o=i("",11),r=[o];function s(c,l,d,u,m,h){return a(),t("div",null,r)}const f=e(n,[["render",s]]);export{p as __pageData,f as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a5 as n}from"./chunks/framework.CK8QU5WH.js";const p=JSON.parse('{"title":"Guide to Incrementals/What is Content?","description":"","frontmatter":{"public":"true","slug":"guide-to-incrementals/what-is-content-","title":"Guide to Incrementals/What is Content?","prev":false,"next":false},"headers":[],"relativePath":"garden/guide-to-incrementals/what-is-content/index.md","filePath":"garden/guide-to-incrementals/what-is-content/index.md"}'),o={name:"garden/guide-to-incrementals/what-is-content/index.md"},i=n("",24),s=[i];function r(h,l,c,u,m,d){return a(),t("div",null,s)}const f=e(o,[["render",r]]);export{p as __pageData,f as default}; import{_ as e,c as t,o as a,a4 as n}from"./chunks/framework.CsM8T_AH.js";const p=JSON.parse('{"title":"Guide to Incrementals/What is Content?","description":"","frontmatter":{"public":"true","slug":"guide-to-incrementals/what-is-content-","title":"Guide to Incrementals/What is Content?","prev":false,"next":false},"headers":[],"relativePath":"garden/guide-to-incrementals/what-is-content/index.md","filePath":"garden/guide-to-incrementals/what-is-content/index.md"}'),o={name:"garden/guide-to-incrementals/what-is-content/index.md"},i=n("",24),s=[i];function r(h,l,c,u,m,d){return a(),t("div",null,s)}const f=e(o,[["render",r]]);export{p as __pageData,f as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as n,a5 as t}from"./chunks/framework.CK8QU5WH.js";const h=JSON.parse('{"title":"Incremental Social","description":"","frontmatter":{"public":"tags:: My Projects","slug":"incremental-social","title":"Incremental Social","prev":false,"next":false},"headers":[],"relativePath":"garden/incremental-social/index.md","filePath":"garden/incremental-social/index.md"}'),r={name:"garden/incremental-social/index.md"},o=t('<h1 id="incremental-social" tabindex="-1">Incremental Social <a class="header-anchor" href="#incremental-social" aria-label="Permalink to &quot;Incremental Social&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/federated-identity/">Federated Identity</a>, <a href="/now/index">/now</a>, <a href="/garden/webrings/">Webrings</a></p></blockquote><blockquote><p>Tags: <a href="/garden/my-projects/">My Projects</a></p></blockquote><p><a href="https://incremental.social/" target="_blank" rel="noreferrer">Incremental Social</a> is a <a href="/garden/fediverse/">Fediverse</a> website hosted by me!</p><p>Made explicitly for the incremental games community</p><p>Most notably hosts an instance of <a href="/garden/mbin/">Mbin</a>, <a href="/garden/forgejo/">Forgejo</a>, and <a href="/garden/synapse/">Synapse</a> (and <a href="/garden/cinny/">Cinny</a>)</p>',6),i=[o];function c(s,l,d,m,f,p){return n(),a("div",null,i)}const g=e(r,[["render",c]]);export{h as __pageData,g as default}; import{_ as e,c as a,o as n,a4 as t}from"./chunks/framework.CsM8T_AH.js";const h=JSON.parse('{"title":"Incremental Social","description":"","frontmatter":{"public":"tags:: My Projects","slug":"incremental-social","title":"Incremental Social","prev":false,"next":false},"headers":[],"relativePath":"garden/incremental-social/index.md","filePath":"garden/incremental-social/index.md"}'),r={name:"garden/incremental-social/index.md"},o=t('<h1 id="incremental-social" tabindex="-1">Incremental Social <a class="header-anchor" href="#incremental-social" aria-label="Permalink to &quot;Incremental Social&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/federated-identity/">Federated Identity</a>, <a href="/now/index">/now</a>, <a href="/garden/webrings/">Webrings</a></p></blockquote><blockquote><p>Tags: <a href="/garden/my-projects/">My Projects</a></p></blockquote><p><a href="https://incremental.social/" target="_blank" rel="noreferrer">Incremental Social</a> is a <a href="/garden/fediverse/">Fediverse</a> website hosted by me!</p><p>Made explicitly for the incremental games community</p><p>Most notably hosts an instance of <a href="/garden/mbin/">Mbin</a>, <a href="/garden/forgejo/">Forgejo</a>, and <a href="/garden/synapse/">Synapse</a> (and <a href="/garden/cinny/">Cinny</a>)</p>',6),i=[o];function c(s,l,d,m,f,p){return n(),a("div",null,i)}const g=e(r,[["render",c]]);export{h as __pageData,g as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as n,a5 as t}from"./chunks/framework.CK8QU5WH.js";const h=JSON.parse('{"title":"Incremental Social","description":"","frontmatter":{"public":"tags:: My Projects","slug":"incremental-social","title":"Incremental Social","prev":false,"next":false},"headers":[],"relativePath":"garden/incremental-social/index.md","filePath":"garden/incremental-social/index.md"}'),r={name:"garden/incremental-social/index.md"},o=t("",6),i=[o];function c(s,l,d,m,f,p){return n(),a("div",null,i)}const g=e(r,[["render",c]]);export{h as __pageData,g as default}; import{_ as e,c as a,o as n,a4 as t}from"./chunks/framework.CsM8T_AH.js";const h=JSON.parse('{"title":"Incremental Social","description":"","frontmatter":{"public":"tags:: My Projects","slug":"incremental-social","title":"Incremental Social","prev":false,"next":false},"headers":[],"relativePath":"garden/incremental-social/index.md","filePath":"garden/incremental-social/index.md"}'),r={name:"garden/incremental-social/index.md"},o=t("",6),i=[o];function c(s,l,d,m,f,p){return n(),a("div",null,i)}const g=e(r,[["render",c]]);export{h as __pageData,g as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as r,a5 as d}from"./chunks/framework.CK8QU5WH.js";const f=JSON.parse('{"title":"Ivy Road","description":"","frontmatter":{"public":"true","slug":"ivy-road","tags":["Davey Wreden"],"title":"Ivy Road","prev":false,"next":false},"headers":[],"relativePath":"garden/ivy-road/index.md","filePath":"garden/ivy-road/index.md"}'),t={name:"garden/ivy-road/index.md"},o=d('<h1 id="ivy-road" tabindex="-1">Ivy Road <a class="header-anchor" href="#ivy-road" aria-label="Permalink to &quot;Ivy Road&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/davey-wreden/">Davey Wreden</a>, <a href="/garden/wanderstop/">Wanderstop</a></p></blockquote><blockquote><p>Tags: <a href="/garden/davey-wreden/">Davey Wreden</a></p></blockquote><p><a href="https://www.ivyroad.fun/" target="_blank" rel="noreferrer">Ivy Road</a> is a indie game studio created by <a href="/garden/davey-wreden/">Davey Wreden</a>, Karla Kimonja, and C418</p>',4),n=[o];function i(s,c,_,l,p,v){return r(),a("div",null,n)}const h=e(t,[["render",i]]);export{f as __pageData,h as default}; import{_ as e,c as a,o as r,a4 as d}from"./chunks/framework.CsM8T_AH.js";const f=JSON.parse('{"title":"Ivy Road","description":"","frontmatter":{"public":"true","slug":"ivy-road","tags":["Davey Wreden"],"title":"Ivy Road","prev":false,"next":false},"headers":[],"relativePath":"garden/ivy-road/index.md","filePath":"garden/ivy-road/index.md"}'),t={name:"garden/ivy-road/index.md"},o=d('<h1 id="ivy-road" tabindex="-1">Ivy Road <a class="header-anchor" href="#ivy-road" aria-label="Permalink to &quot;Ivy Road&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/davey-wreden/">Davey Wreden</a>, <a href="/garden/wanderstop/">Wanderstop</a></p></blockquote><blockquote><p>Tags: <a href="/garden/davey-wreden/">Davey Wreden</a></p></blockquote><p><a href="https://www.ivyroad.fun/" target="_blank" rel="noreferrer">Ivy Road</a> is a indie game studio created by <a href="/garden/davey-wreden/">Davey Wreden</a>, Karla Kimonja, and C418</p>',4),n=[o];function i(s,c,_,l,p,v){return r(),a("div",null,n)}const h=e(t,[["render",i]]);export{f as __pageData,h as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as r,a5 as d}from"./chunks/framework.CK8QU5WH.js";const f=JSON.parse('{"title":"Ivy Road","description":"","frontmatter":{"public":"true","slug":"ivy-road","tags":["Davey Wreden"],"title":"Ivy Road","prev":false,"next":false},"headers":[],"relativePath":"garden/ivy-road/index.md","filePath":"garden/ivy-road/index.md"}'),t={name:"garden/ivy-road/index.md"},o=d("",4),n=[o];function i(s,c,_,l,p,v){return r(),a("div",null,n)}const h=e(t,[["render",i]]);export{f as __pageData,h as default}; import{_ as e,c as a,o as r,a4 as d}from"./chunks/framework.CsM8T_AH.js";const f=JSON.parse('{"title":"Ivy Road","description":"","frontmatter":{"public":"true","slug":"ivy-road","tags":["Davey Wreden"],"title":"Ivy Road","prev":false,"next":false},"headers":[],"relativePath":"garden/ivy-road/index.md","filePath":"garden/ivy-road/index.md"}'),t={name:"garden/ivy-road/index.md"},o=d("",4),n=[o];function i(s,c,_,l,p,v){return r(),a("div",null,n)}const h=e(t,[["render",i]]);export{f as __pageData,h as default};

View file

@ -1 +1 @@
import{_ as e,c as o,o as t,a5 as a}from"./chunks/framework.CK8QU5WH.js";const f=JSON.parse('{"title":"Kronos","description":"","frontmatter":{"public":"true","slug":"kronos","tags":["My Projects","Profectus"],"title":"Kronos","prev":false,"next":false},"headers":[],"relativePath":"garden/kronos/index.md","filePath":"garden/kronos/index.md"}'),r={name:"garden/kronos/index.md"},n=a('<h1 id="kronos" tabindex="-1">Kronos <a class="header-anchor" href="#kronos" aria-label="Permalink to &quot;Kronos&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/v-ecs/">V-ecs</a></p></blockquote><blockquote><p>Tags: <a href="/garden/my-projects/">My Projects</a>, <a href="/garden/profectus/">Profectus</a></p></blockquote><p>My largest and most ambitious incremental game I&#39;ve ever made</p><ul><li>A magnum opus, of sorts ;P</li></ul><p>Still in development, and will be for a long time. I have full intention of completing it, however</p><p>An older version, that is built in The Modding Tree, only has the gameplay, and only goes up to Chapter 2, can be played <a href="https://thepaperpilot.org/kronos/" target="_blank" rel="noreferrer">here</a></p>',7),s=[n];function l(i,c,d,p,_,h){return t(),o("div",null,s)}const m=e(r,[["render",l]]);export{f as __pageData,m as default}; import{_ as e,c as o,o as t,a4 as a}from"./chunks/framework.CsM8T_AH.js";const f=JSON.parse('{"title":"Kronos","description":"","frontmatter":{"public":"true","slug":"kronos","tags":["My Projects","Profectus"],"title":"Kronos","prev":false,"next":false},"headers":[],"relativePath":"garden/kronos/index.md","filePath":"garden/kronos/index.md"}'),r={name:"garden/kronos/index.md"},n=a('<h1 id="kronos" tabindex="-1">Kronos <a class="header-anchor" href="#kronos" aria-label="Permalink to &quot;Kronos&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/v-ecs/">V-ecs</a></p></blockquote><blockquote><p>Tags: <a href="/garden/my-projects/">My Projects</a>, <a href="/garden/profectus/">Profectus</a></p></blockquote><p>My largest and most ambitious incremental game I&#39;ve ever made</p><ul><li>A magnum opus, of sorts ;P</li></ul><p>Still in development, and will be for a long time. I have full intention of completing it, however</p><p>An older version, that is built in The Modding Tree, only has the gameplay, and only goes up to Chapter 2, can be played <a href="https://thepaperpilot.org/kronos/" target="_blank" rel="noreferrer">here</a></p>',7),s=[n];function l(i,c,d,p,_,h){return t(),o("div",null,s)}const m=e(r,[["render",l]]);export{f as __pageData,m as default};

View file

@ -1 +1 @@
import{_ as e,c as o,o as t,a5 as a}from"./chunks/framework.CK8QU5WH.js";const f=JSON.parse('{"title":"Kronos","description":"","frontmatter":{"public":"true","slug":"kronos","tags":["My Projects","Profectus"],"title":"Kronos","prev":false,"next":false},"headers":[],"relativePath":"garden/kronos/index.md","filePath":"garden/kronos/index.md"}'),r={name:"garden/kronos/index.md"},n=a("",7),s=[n];function l(i,c,d,p,_,h){return t(),o("div",null,s)}const m=e(r,[["render",l]]);export{f as __pageData,m as default}; import{_ as e,c as o,o as t,a4 as a}from"./chunks/framework.CsM8T_AH.js";const f=JSON.parse('{"title":"Kronos","description":"","frontmatter":{"public":"true","slug":"kronos","tags":["My Projects","Profectus"],"title":"Kronos","prev":false,"next":false},"headers":[],"relativePath":"garden/kronos/index.md","filePath":"garden/kronos/index.md"}'),r={name:"garden/kronos/index.md"},n=a("",7),s=[n];function l(i,c,d,p,_,h){return t(),o("div",null,s)}const m=e(r,[["render",l]]);export{f as __pageData,m as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a5 as i,ag as r,ah as o}from"./chunks/framework.CK8QU5WH.js";const w=JSON.parse('{"title":"Life is Strange","description":"","frontmatter":{"public":"true","slug":"life-is-strange","title":"Life is Strange","prev":false,"next":false},"headers":[],"relativePath":"garden/life-is-strange/index.md","filePath":"garden/life-is-strange/index.md"}'),s={name:"garden/life-is-strange/index.md"},n=i("",25),l=[n];function h(d,g,c,m,f,u){return a(),t("div",null,l)}const _=e(s,[["render",h]]);export{w as __pageData,_ as default}; import{_ as e,c as t,o as a,a4 as i,af as r,ag as o}from"./chunks/framework.CsM8T_AH.js";const w=JSON.parse('{"title":"Life is Strange","description":"","frontmatter":{"public":"true","slug":"life-is-strange","title":"Life is Strange","prev":false,"next":false},"headers":[],"relativePath":"garden/life-is-strange/index.md","filePath":"garden/life-is-strange/index.md"}'),s={name:"garden/life-is-strange/index.md"},n=i("",25),l=[n];function h(d,g,c,m,f,u){return a(),t("div",null,l)}const _=e(s,[["render",h]]);export{w as __pageData,_ as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o,a5 as t}from"./chunks/framework.CK8QU5WH.js";const f=JSON.parse('{"title":"Logseq","description":"","frontmatter":{"public":"true","slug":"logseq","title":"Logseq","prev":false,"next":false},"headers":[],"relativePath":"garden/logseq/index.md","filePath":"garden/logseq/index.md"}'),r={name:"garden/logseq/index.md"},s=t('<h1 id="logseq" tabindex="-1">Logseq <a class="header-anchor" href="#logseq" aria-label="Permalink to &quot;Logseq&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/command-palettes/">Command Palettes</a>, <a href="/garden/this-knowledge-hub/">This Knowledge Hub</a></p></blockquote><p><a href="https://logseq.com" target="_blank" rel="noreferrer">Logseq</a> is an <a href="/garden/open-source/">Open Source</a> outlining software</p>',3),n=[s];function l(d,c,i,_,g,p){return o(),a("div",null,n)}const u=e(r,[["render",l]]);export{f as __pageData,u as default}; import{_ as e,c as a,o,a4 as t}from"./chunks/framework.CsM8T_AH.js";const f=JSON.parse('{"title":"Logseq","description":"","frontmatter":{"public":"true","slug":"logseq","title":"Logseq","prev":false,"next":false},"headers":[],"relativePath":"garden/logseq/index.md","filePath":"garden/logseq/index.md"}'),r={name:"garden/logseq/index.md"},s=t('<h1 id="logseq" tabindex="-1">Logseq <a class="header-anchor" href="#logseq" aria-label="Permalink to &quot;Logseq&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/command-palettes/">Command Palettes</a>, <a href="/garden/this-knowledge-hub/">This Knowledge Hub</a></p></blockquote><p><a href="https://logseq.com" target="_blank" rel="noreferrer">Logseq</a> is an <a href="/garden/open-source/">Open Source</a> outlining software</p>',3),n=[s];function l(d,c,i,_,g,p){return o(),a("div",null,n)}const u=e(r,[["render",l]]);export{f as __pageData,u as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o,a5 as t}from"./chunks/framework.CK8QU5WH.js";const f=JSON.parse('{"title":"Logseq","description":"","frontmatter":{"public":"true","slug":"logseq","title":"Logseq","prev":false,"next":false},"headers":[],"relativePath":"garden/logseq/index.md","filePath":"garden/logseq/index.md"}'),r={name:"garden/logseq/index.md"},s=t("",3),n=[s];function l(d,c,i,_,g,p){return o(),a("div",null,n)}const u=e(r,[["render",l]]);export{f as __pageData,u as default}; import{_ as e,c as a,o,a4 as t}from"./chunks/framework.CsM8T_AH.js";const f=JSON.parse('{"title":"Logseq","description":"","frontmatter":{"public":"true","slug":"logseq","title":"Logseq","prev":false,"next":false},"headers":[],"relativePath":"garden/logseq/index.md","filePath":"garden/logseq/index.md"}'),r={name:"garden/logseq/index.md"},s=t("",3),n=[s];function l(d,c,i,_,g,p){return o(),a("div",null,n)}const u=e(r,[["render",l]]);export{f as __pageData,u as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as r,a5 as t}from"./chunks/framework.CK8QU5WH.js";const f=JSON.parse('{"title":"Matrix","description":"","frontmatter":{"public":"true","slug":"matrix","title":"Matrix","prev":false,"next":false},"headers":[],"relativePath":"garden/matrix/index.md","filePath":"garden/matrix/index.md"}'),n={name:"garden/matrix/index.md"},i=t('<h1 id="matrix" tabindex="-1">Matrix <a class="header-anchor" href="#matrix" aria-label="Permalink to &quot;Matrix&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/cinny/">Cinny</a>, <a href="/garden/commune/">Commune</a>, <a href="/garden/synapse/">Synapse</a></p></blockquote><p><a href="https://matrix.org" target="_blank" rel="noreferrer">Matrix</a> is a protocol for <a href="/garden/decentralized/">Decentralized</a> messaging</p>',3),o=[i];function s(d,c,_,l,m,p){return r(),a("div",null,o)}const h=e(n,[["render",s]]);export{f as __pageData,h as default}; import{_ as e,c as a,o as r,a4 as t}from"./chunks/framework.CsM8T_AH.js";const f=JSON.parse('{"title":"Matrix","description":"","frontmatter":{"public":"true","slug":"matrix","title":"Matrix","prev":false,"next":false},"headers":[],"relativePath":"garden/matrix/index.md","filePath":"garden/matrix/index.md"}'),n={name:"garden/matrix/index.md"},i=t('<h1 id="matrix" tabindex="-1">Matrix <a class="header-anchor" href="#matrix" aria-label="Permalink to &quot;Matrix&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/cinny/">Cinny</a>, <a href="/garden/commune/">Commune</a>, <a href="/garden/synapse/">Synapse</a></p></blockquote><p><a href="https://matrix.org" target="_blank" rel="noreferrer">Matrix</a> is a protocol for <a href="/garden/decentralized/">Decentralized</a> messaging</p>',3),o=[i];function s(d,c,_,l,m,p){return r(),a("div",null,o)}const h=e(n,[["render",s]]);export{f as __pageData,h as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as r,a5 as t}from"./chunks/framework.CK8QU5WH.js";const f=JSON.parse('{"title":"Matrix","description":"","frontmatter":{"public":"true","slug":"matrix","title":"Matrix","prev":false,"next":false},"headers":[],"relativePath":"garden/matrix/index.md","filePath":"garden/matrix/index.md"}'),n={name:"garden/matrix/index.md"},i=t("",3),o=[i];function s(d,c,_,l,m,p){return r(),a("div",null,o)}const h=e(n,[["render",s]]);export{f as __pageData,h as default}; import{_ as e,c as a,o as r,a4 as t}from"./chunks/framework.CsM8T_AH.js";const f=JSON.parse('{"title":"Matrix","description":"","frontmatter":{"public":"true","slug":"matrix","title":"Matrix","prev":false,"next":false},"headers":[],"relativePath":"garden/matrix/index.md","filePath":"garden/matrix/index.md"}'),n={name:"garden/matrix/index.md"},i=t("",3),o=[i];function s(d,c,_,l,m,p){return r(),a("div",null,o)}const h=e(n,[["render",s]]);export{f as __pageData,h as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as t,a5 as n}from"./chunks/framework.CK8QU5WH.js";const m=JSON.parse('{"title":"Mbin","description":"","frontmatter":{"public":"true","slug":"mbin","title":"Mbin","prev":false,"next":false},"headers":[],"relativePath":"garden/mbin/index.md","filePath":"garden/mbin/index.md"}'),r={name:"garden/mbin/index.md"},i=n('<h1 id="mbin" tabindex="-1">Mbin <a class="header-anchor" href="#mbin" aria-label="Permalink to &quot;Mbin&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/incremental-social/">Incremental Social</a></p></blockquote><p><a href="https://github.com/MbinOrg/mbin" target="_blank" rel="noreferrer">Mbin</a> is an <a href="/garden/open-source/">Open Source</a> <a href="/garden/fediverse/">Fediverse</a> software</p><p>Can show both twitter-style posts and reddit-style threads</p>',4),o=[i];function s(d,c,l,_,p,b){return t(),a("div",null,o)}const f=e(r,[["render",s]]);export{m as __pageData,f as default}; import{_ as e,c as a,o as t,a4 as n}from"./chunks/framework.CsM8T_AH.js";const m=JSON.parse('{"title":"Mbin","description":"","frontmatter":{"public":"true","slug":"mbin","title":"Mbin","prev":false,"next":false},"headers":[],"relativePath":"garden/mbin/index.md","filePath":"garden/mbin/index.md"}'),r={name:"garden/mbin/index.md"},i=n('<h1 id="mbin" tabindex="-1">Mbin <a class="header-anchor" href="#mbin" aria-label="Permalink to &quot;Mbin&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/incremental-social/">Incremental Social</a></p></blockquote><p><a href="https://github.com/MbinOrg/mbin" target="_blank" rel="noreferrer">Mbin</a> is an <a href="/garden/open-source/">Open Source</a> <a href="/garden/fediverse/">Fediverse</a> software</p><p>Can show both twitter-style posts and reddit-style threads</p>',4),o=[i];function s(d,c,l,_,p,b){return t(),a("div",null,o)}const f=e(r,[["render",s]]);export{m as __pageData,f as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as t,a5 as n}from"./chunks/framework.CK8QU5WH.js";const m=JSON.parse('{"title":"Mbin","description":"","frontmatter":{"public":"true","slug":"mbin","title":"Mbin","prev":false,"next":false},"headers":[],"relativePath":"garden/mbin/index.md","filePath":"garden/mbin/index.md"}'),r={name:"garden/mbin/index.md"},i=n("",4),o=[i];function s(d,c,l,_,p,b){return t(),a("div",null,o)}const f=e(r,[["render",s]]);export{m as __pageData,f as default}; import{_ as e,c as a,o as t,a4 as n}from"./chunks/framework.CsM8T_AH.js";const m=JSON.parse('{"title":"Mbin","description":"","frontmatter":{"public":"true","slug":"mbin","title":"Mbin","prev":false,"next":false},"headers":[],"relativePath":"garden/mbin/index.md","filePath":"garden/mbin/index.md"}'),r={name:"garden/mbin/index.md"},i=n("",4),o=[i];function s(d,c,l,_,p,b){return t(),a("div",null,o)}const f=e(r,[["render",s]]);export{m as __pageData,f as default};

View file

@ -1 +1 @@
import{_ as a,c as n,o as r,j as e,a as t}from"./chunks/framework.CK8QU5WH.js";const g=JSON.parse('{"title":"MTX","description":"","frontmatter":{"alias":"Microtransactions, IAP, In-App Purchases","public":"true","slug":"mtx","title":"MTX","prev":false,"next":false},"headers":[],"relativePath":"garden/mtx/index.md","filePath":"garden/mtx/index.md"}'),s={name:"garden/mtx/index.md"},o=e("h1",{id:"mtx",tabindex:"-1"},[t("MTX "),e("a",{class:"header-anchor",href:"#mtx","aria-label":'Permalink to "MTX"'},"")],-1),i=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/premium-currency/"},"Premium Currency"),t(", "),e("a",{href:"/garden/video-game-monetization/"},"Video Game Monetization")])],-1),c=e("p",null,"Purchaseable items in video games that cost real life currencies",-1),d=[o,i,c];function l(m,u,_,p,h,x){return r(),n("div",null,d)}const P=a(s,[["render",l]]);export{g as __pageData,P as default}; import{_ as a,c as n,o as r,j as e,a as t}from"./chunks/framework.CsM8T_AH.js";const g=JSON.parse('{"title":"MTX","description":"","frontmatter":{"alias":"Microtransactions, IAP, In-App Purchases","public":"true","slug":"mtx","title":"MTX","prev":false,"next":false},"headers":[],"relativePath":"garden/mtx/index.md","filePath":"garden/mtx/index.md"}'),s={name:"garden/mtx/index.md"},o=e("h1",{id:"mtx",tabindex:"-1"},[t("MTX "),e("a",{class:"header-anchor",href:"#mtx","aria-label":'Permalink to "MTX"'},"")],-1),i=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/premium-currency/"},"Premium Currency"),t(", "),e("a",{href:"/garden/video-game-monetization/"},"Video Game Monetization")])],-1),c=e("p",null,"Purchaseable items in video games that cost real life currencies",-1),d=[o,i,c];function l(m,u,_,p,h,x){return r(),n("div",null,d)}const P=a(s,[["render",l]]);export{g as __pageData,P as default};

View file

@ -1 +1 @@
import{_ as a,c as n,o as r,j as e,a as t}from"./chunks/framework.CK8QU5WH.js";const g=JSON.parse('{"title":"MTX","description":"","frontmatter":{"alias":"Microtransactions, IAP, In-App Purchases","public":"true","slug":"mtx","title":"MTX","prev":false,"next":false},"headers":[],"relativePath":"garden/mtx/index.md","filePath":"garden/mtx/index.md"}'),s={name:"garden/mtx/index.md"},o=e("h1",{id:"mtx",tabindex:"-1"},[t("MTX "),e("a",{class:"header-anchor",href:"#mtx","aria-label":'Permalink to "MTX"'},"")],-1),i=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/premium-currency/"},"Premium Currency"),t(", "),e("a",{href:"/garden/video-game-monetization/"},"Video Game Monetization")])],-1),c=e("p",null,"Purchaseable items in video games that cost real life currencies",-1),d=[o,i,c];function l(m,u,_,p,h,x){return r(),n("div",null,d)}const P=a(s,[["render",l]]);export{g as __pageData,P as default}; import{_ as a,c as n,o as r,j as e,a as t}from"./chunks/framework.CsM8T_AH.js";const g=JSON.parse('{"title":"MTX","description":"","frontmatter":{"alias":"Microtransactions, IAP, In-App Purchases","public":"true","slug":"mtx","title":"MTX","prev":false,"next":false},"headers":[],"relativePath":"garden/mtx/index.md","filePath":"garden/mtx/index.md"}'),s={name:"garden/mtx/index.md"},o=e("h1",{id:"mtx",tabindex:"-1"},[t("MTX "),e("a",{class:"header-anchor",href:"#mtx","aria-label":'Permalink to "MTX"'},"")],-1),i=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/premium-currency/"},"Premium Currency"),t(", "),e("a",{href:"/garden/video-game-monetization/"},"Video Game Monetization")])],-1),c=e("p",null,"Purchaseable items in video games that cost real life currencies",-1),d=[o,i,c];function l(m,u,_,p,h,x){return r(),n("div",null,d)}const P=a(s,[["render",l]]);export{g as __pageData,P as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as t,a5 as r}from"./chunks/framework.CK8QU5WH.js";const m=JSON.parse('{"title":"My Personal Website","description":"","frontmatter":{"public":"true","slug":"my-personal-website","title":"My Personal Website","prev":false,"next":false},"headers":[],"relativePath":"garden/my-personal-website/index.md","filePath":"garden/my-personal-website/index.md"}'),s={name:"garden/my-personal-website/index.md"},o=r('<h1 id="my-personal-website" tabindex="-1">My Personal Website <a class="header-anchor" href="#my-personal-website" aria-label="Permalink to &quot;My Personal Website&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/the-small-web/">The Small Web</a></p></blockquote><p>A <a href="/garden/the-small-web/">Personal Websites</a> for myself, available at <a href="https://thepaperpilot.org" target="_blank" rel="noreferrer">https://thepaperpilot.org</a></p>',3),n=[o];function l(i,p,_,d,c,b){return t(),a("div",null,n)}const f=e(s,[["render",l]]);export{m as __pageData,f as default}; import{_ as e,c as a,o as t,a4 as r}from"./chunks/framework.CsM8T_AH.js";const m=JSON.parse('{"title":"My Personal Website","description":"","frontmatter":{"public":"true","slug":"my-personal-website","title":"My Personal Website","prev":false,"next":false},"headers":[],"relativePath":"garden/my-personal-website/index.md","filePath":"garden/my-personal-website/index.md"}'),s={name:"garden/my-personal-website/index.md"},o=r('<h1 id="my-personal-website" tabindex="-1">My Personal Website <a class="header-anchor" href="#my-personal-website" aria-label="Permalink to &quot;My Personal Website&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/the-small-web/">The Small Web</a></p></blockquote><p>A <a href="/garden/the-small-web/">Personal Websites</a> for myself, available at <a href="https://thepaperpilot.org" target="_blank" rel="noreferrer">https://thepaperpilot.org</a></p>',3),n=[o];function l(i,p,_,d,c,b){return t(),a("div",null,n)}const f=e(s,[["render",l]]);export{m as __pageData,f as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as t,a5 as r}from"./chunks/framework.CK8QU5WH.js";const m=JSON.parse('{"title":"My Personal Website","description":"","frontmatter":{"public":"true","slug":"my-personal-website","title":"My Personal Website","prev":false,"next":false},"headers":[],"relativePath":"garden/my-personal-website/index.md","filePath":"garden/my-personal-website/index.md"}'),s={name:"garden/my-personal-website/index.md"},o=r("",3),n=[o];function l(i,p,_,d,c,b){return t(),a("div",null,n)}const f=e(s,[["render",l]]);export{m as __pageData,f as default}; import{_ as e,c as a,o as t,a4 as r}from"./chunks/framework.CsM8T_AH.js";const m=JSON.parse('{"title":"My Personal Website","description":"","frontmatter":{"public":"true","slug":"my-personal-website","title":"My Personal Website","prev":false,"next":false},"headers":[],"relativePath":"garden/my-personal-website/index.md","filePath":"garden/my-personal-website/index.md"}'),s={name:"garden/my-personal-website/index.md"},o=r("",3),n=[o];function l(i,p,_,d,c,b){return t(),a("div",null,n)}const f=e(s,[["render",l]]);export{m as __pageData,f as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as r,a5 as t}from"./chunks/framework.CK8QU5WH.js";const f=JSON.parse('{"title":"My Projects","description":"","frontmatter":{"index":"true","public":"true","slug":"my-projects","title":"My Projects","prev":false,"next":false},"headers":[],"relativePath":"garden/my-projects/index.md","filePath":"garden/my-projects/index.md"}'),n={name:"garden/my-projects/index.md"},o=t('<h1 id="my-projects" tabindex="-1">My Projects <a class="header-anchor" href="#my-projects" aria-label="Permalink to &quot;My Projects&quot;"></a></h1><blockquote><p>Tagged by: <a href="/garden/advent-incremental/">Advent Incremental</a>, <a href="/garden/babble-buds/">Babble Buds</a>, <a href="/garden/capture-the-citadel/">Capture the Citadel</a>, <a href="/garden/dice-armor/">Dice Armor</a>, <a href="/garden/game-dev-tree/">Game Dev Tree</a>, <a href="/garden/incremental-social/">Incremental Social</a>, <a href="/garden/kronos/">Kronos</a>, <a href="/garden/opti-speech/">Opti-Speech</a>, <a href="/garden/planar-pioneers/">Planar Pioneers</a>, <a href="/garden/profectus/">Profectus</a>, <a href="/garden/v-ecs/">V-ecs</a></p></blockquote><p>I like making games and tools!</p><h2 id="games" tabindex="-1">Games <a class="header-anchor" href="#games" aria-label="Permalink to &quot;Games&quot;"></a></h2><ul><li><a href="/garden/planar-pioneers/">Planar Pioneers</a> (<a href="https://thepaperpilot.org/planar" target="_blank" rel="noreferrer">play</a>)</li><li><a href="/garden/advent-incremental/">Advent Incremental</a> (<a href="https://thepaperpilot.org/advent" target="_blank" rel="noreferrer">play</a>)</li><li><a href="/garden/game-dev-tree/">Game Dev Tree</a> (<a href="https://thepaperpilot.org/gamedevtree" target="_blank" rel="noreferrer">play</a>)</li><li><a href="/garden/dice-armor/">Dice Armor</a></li><li><a href="/garden/capture-the-citadel/">Capture the Citadel</a></li><li>I have more you can find on <a href="https://thepaperpilot.itch.io/" target="_blank" rel="noreferrer">my Itch.io page</a></li><li>... And several more in development! Most aren&#39;t going to have their own pages on here, but a long-term project of mine called <a href="/garden/kronos/">Kronos</a> is the exception!</li></ul><h2 id="tools-and-other-non-games" tabindex="-1">Tools (and other non-games) <a class="header-anchor" href="#tools-and-other-non-games" aria-label="Permalink to &quot;Tools (and other non-games)&quot;"></a></h2><ul><li><a href="/garden/profectus/">Profectus</a></li><li><a href="/garden/incremental-social/">Incremental Social</a></li><li><a href="/garden/babble-buds/">Babble Buds</a></li><li><a href="/garden/v-ecs/">V-ecs</a></li><li><a href="/garden/opti-speech/">Opti-Speech</a></li></ul>',7),l=[o];function i(s,d,c,h,p,g){return r(),a("div",null,l)}const u=e(n,[["render",i]]);export{f as __pageData,u as default}; import{_ as e,c as a,o as r,a4 as t}from"./chunks/framework.CsM8T_AH.js";const f=JSON.parse('{"title":"My Projects","description":"","frontmatter":{"index":"true","public":"true","slug":"my-projects","title":"My Projects","prev":false,"next":false},"headers":[],"relativePath":"garden/my-projects/index.md","filePath":"garden/my-projects/index.md"}'),n={name:"garden/my-projects/index.md"},o=t('<h1 id="my-projects" tabindex="-1">My Projects <a class="header-anchor" href="#my-projects" aria-label="Permalink to &quot;My Projects&quot;"></a></h1><blockquote><p>Tagged by: <a href="/garden/advent-incremental/">Advent Incremental</a>, <a href="/garden/babble-buds/">Babble Buds</a>, <a href="/garden/capture-the-citadel/">Capture the Citadel</a>, <a href="/garden/dice-armor/">Dice Armor</a>, <a href="/garden/game-dev-tree/">Game Dev Tree</a>, <a href="/garden/incremental-social/">Incremental Social</a>, <a href="/garden/kronos/">Kronos</a>, <a href="/garden/opti-speech/">Opti-Speech</a>, <a href="/garden/planar-pioneers/">Planar Pioneers</a>, <a href="/garden/profectus/">Profectus</a>, <a href="/garden/v-ecs/">V-ecs</a></p></blockquote><p>I like making games and tools!</p><h2 id="games" tabindex="-1">Games <a class="header-anchor" href="#games" aria-label="Permalink to &quot;Games&quot;"></a></h2><ul><li><a href="/garden/planar-pioneers/">Planar Pioneers</a> (<a href="https://thepaperpilot.org/planar" target="_blank" rel="noreferrer">play</a>)</li><li><a href="/garden/advent-incremental/">Advent Incremental</a> (<a href="https://thepaperpilot.org/advent" target="_blank" rel="noreferrer">play</a>)</li><li><a href="/garden/game-dev-tree/">Game Dev Tree</a> (<a href="https://thepaperpilot.org/gamedevtree" target="_blank" rel="noreferrer">play</a>)</li><li><a href="/garden/dice-armor/">Dice Armor</a></li><li><a href="/garden/capture-the-citadel/">Capture the Citadel</a></li><li>I have more you can find on <a href="https://thepaperpilot.itch.io/" target="_blank" rel="noreferrer">my Itch.io page</a></li><li>... And several more in development! Most aren&#39;t going to have their own pages on here, but a long-term project of mine called <a href="/garden/kronos/">Kronos</a> is the exception!</li></ul><h2 id="tools-and-other-non-games" tabindex="-1">Tools (and other non-games) <a class="header-anchor" href="#tools-and-other-non-games" aria-label="Permalink to &quot;Tools (and other non-games)&quot;"></a></h2><ul><li><a href="/garden/profectus/">Profectus</a></li><li><a href="/garden/incremental-social/">Incremental Social</a></li><li><a href="/garden/babble-buds/">Babble Buds</a></li><li><a href="/garden/v-ecs/">V-ecs</a></li><li><a href="/garden/opti-speech/">Opti-Speech</a></li></ul>',7),l=[o];function i(s,d,c,h,p,g){return r(),a("div",null,l)}const u=e(n,[["render",i]]);export{f as __pageData,u as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as r,a5 as t}from"./chunks/framework.CK8QU5WH.js";const f=JSON.parse('{"title":"My Projects","description":"","frontmatter":{"index":"true","public":"true","slug":"my-projects","title":"My Projects","prev":false,"next":false},"headers":[],"relativePath":"garden/my-projects/index.md","filePath":"garden/my-projects/index.md"}'),n={name:"garden/my-projects/index.md"},o=t("",7),l=[o];function i(s,d,c,h,p,g){return r(),a("div",null,l)}const u=e(n,[["render",i]]);export{f as __pageData,u as default}; import{_ as e,c as a,o as r,a4 as t}from"./chunks/framework.CsM8T_AH.js";const f=JSON.parse('{"title":"My Projects","description":"","frontmatter":{"index":"true","public":"true","slug":"my-projects","title":"My Projects","prev":false,"next":false},"headers":[],"relativePath":"garden/my-projects/index.md","filePath":"garden/my-projects/index.md"}'),n={name:"garden/my-projects/index.md"},o=t("",7),l=[o];function i(s,d,c,h,p,g){return r(),a("div",null,l)}const u=e(n,[["render",i]]);export{f as __pageData,u as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as r,a5 as a}from"./chunks/framework.CK8QU5WH.js";const u=JSON.parse('{"title":"Nostr","description":"","frontmatter":{"public":"true","slug":"nostr","tags":["Decentralized"],"title":"Nostr","prev":false,"next":false},"headers":[],"relativePath":"garden/nostr/index.md","filePath":"garden/nostr/index.md"}'),o={name:"garden/nostr/index.md"},n=a('<h1 id="nostr" tabindex="-1">Nostr <a class="header-anchor" href="#nostr" aria-label="Permalink to &quot;Nostr&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/fediverse/">Fediverse</a></p></blockquote><blockquote><p>Tags: <a href="/garden/decentralized/">Decentralized</a></p></blockquote><p><a href="https://nostr.com" target="_blank" rel="noreferrer">Nostr</a> is a protocol for <a href="/garden/fediverse/">Federated Social Media</a></p>',4),s=[n];function d(c,i,l,_,p,f){return r(),t("div",null,s)}const g=e(o,[["render",d]]);export{u as __pageData,g as default}; import{_ as e,c as t,o as r,a4 as a}from"./chunks/framework.CsM8T_AH.js";const u=JSON.parse('{"title":"Nostr","description":"","frontmatter":{"public":"true","slug":"nostr","tags":["Decentralized"],"title":"Nostr","prev":false,"next":false},"headers":[],"relativePath":"garden/nostr/index.md","filePath":"garden/nostr/index.md"}'),o={name:"garden/nostr/index.md"},n=a('<h1 id="nostr" tabindex="-1">Nostr <a class="header-anchor" href="#nostr" aria-label="Permalink to &quot;Nostr&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/fediverse/">Fediverse</a></p></blockquote><blockquote><p>Tags: <a href="/garden/decentralized/">Decentralized</a></p></blockquote><p><a href="https://nostr.com" target="_blank" rel="noreferrer">Nostr</a> is a protocol for <a href="/garden/fediverse/">Federated Social Media</a></p>',4),s=[n];function d(c,i,l,_,p,f){return r(),t("div",null,s)}const g=e(o,[["render",d]]);export{u as __pageData,g as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as r,a5 as a}from"./chunks/framework.CK8QU5WH.js";const u=JSON.parse('{"title":"Nostr","description":"","frontmatter":{"public":"true","slug":"nostr","tags":["Decentralized"],"title":"Nostr","prev":false,"next":false},"headers":[],"relativePath":"garden/nostr/index.md","filePath":"garden/nostr/index.md"}'),o={name:"garden/nostr/index.md"},n=a("",4),s=[n];function d(c,i,l,_,p,f){return r(),t("div",null,s)}const g=e(o,[["render",d]]);export{u as __pageData,g as default}; import{_ as e,c as t,o as r,a4 as a}from"./chunks/framework.CsM8T_AH.js";const u=JSON.parse('{"title":"Nostr","description":"","frontmatter":{"public":"true","slug":"nostr","tags":["Decentralized"],"title":"Nostr","prev":false,"next":false},"headers":[],"relativePath":"garden/nostr/index.md","filePath":"garden/nostr/index.md"}'),o={name:"garden/nostr/index.md"},n=a("",4),s=[n];function d(c,i,l,_,p,f){return r(),t("div",null,s)}const g=e(o,[["render",d]]);export{u as __pageData,g as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as r,a5 as n}from"./chunks/framework.CK8QU5WH.js";const g=JSON.parse('{"title":"Open Source","description":"","frontmatter":{"public":"true","slug":"open-source","title":"Open Source","prev":false,"next":false},"headers":[],"relativePath":"garden/open-source/index.md","filePath":"garden/open-source/index.md"}'),o={name:"garden/open-source/index.md"},t=n('<h1 id="open-source" tabindex="-1">Open Source <a class="header-anchor" href="#open-source" aria-label="Permalink to &quot;Open Source&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/advent-incremental/">Advent Incremental</a>, <a href="/garden/cinny/">Cinny</a>, <a href="/garden/commune/">Commune</a>, <a href="/garden/dice-armor/">Dice Armor</a>, <a href="/garden/forgejo/">Forgejo</a>, <a href="/garden/game-dev-tree/">Game Dev Tree</a>, <a href="/garden/logseq/">Logseq</a>, <a href="/garden/mbin/">Mbin</a>, <a href="/garden/planar-pioneers/">Planar Pioneers</a>, <a href="/garden/profectus/">Profectus</a>, <a href="/garden/synapse/">Synapse</a>, <a href="/garden/vitepress/">Vitepress</a>, <a href="/garden/weird/">Weird</a></p></blockquote><p>Projects with the source code publicly accessible</p><p>Typically also grants users the right to modify the code and redistribute those changes, depending on the license</p>',4),s=[t];function c(d,i,p,h,l,u){return r(),a("div",null,s)}const _=e(o,[["render",c]]);export{g as __pageData,_ as default}; import{_ as e,c as a,o as r,a4 as n}from"./chunks/framework.CsM8T_AH.js";const g=JSON.parse('{"title":"Open Source","description":"","frontmatter":{"public":"true","slug":"open-source","title":"Open Source","prev":false,"next":false},"headers":[],"relativePath":"garden/open-source/index.md","filePath":"garden/open-source/index.md"}'),o={name:"garden/open-source/index.md"},t=n('<h1 id="open-source" tabindex="-1">Open Source <a class="header-anchor" href="#open-source" aria-label="Permalink to &quot;Open Source&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/advent-incremental/">Advent Incremental</a>, <a href="/garden/cinny/">Cinny</a>, <a href="/garden/commune/">Commune</a>, <a href="/garden/dice-armor/">Dice Armor</a>, <a href="/garden/forgejo/">Forgejo</a>, <a href="/garden/game-dev-tree/">Game Dev Tree</a>, <a href="/garden/logseq/">Logseq</a>, <a href="/garden/mbin/">Mbin</a>, <a href="/garden/planar-pioneers/">Planar Pioneers</a>, <a href="/garden/profectus/">Profectus</a>, <a href="/garden/synapse/">Synapse</a>, <a href="/garden/vitepress/">Vitepress</a>, <a href="/garden/weird/">Weird</a></p></blockquote><p>Projects with the source code publicly accessible</p><p>Typically also grants users the right to modify the code and redistribute those changes, depending on the license</p>',4),s=[t];function c(d,i,p,h,l,u){return r(),a("div",null,s)}const _=e(o,[["render",c]]);export{g as __pageData,_ as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as r,a5 as n}from"./chunks/framework.CK8QU5WH.js";const g=JSON.parse('{"title":"Open Source","description":"","frontmatter":{"public":"true","slug":"open-source","title":"Open Source","prev":false,"next":false},"headers":[],"relativePath":"garden/open-source/index.md","filePath":"garden/open-source/index.md"}'),o={name:"garden/open-source/index.md"},t=n("",4),s=[t];function c(d,i,p,h,l,u){return r(),a("div",null,s)}const _=e(o,[["render",c]]);export{g as __pageData,_ as default}; import{_ as e,c as a,o as r,a4 as n}from"./chunks/framework.CsM8T_AH.js";const g=JSON.parse('{"title":"Open Source","description":"","frontmatter":{"public":"true","slug":"open-source","title":"Open Source","prev":false,"next":false},"headers":[],"relativePath":"garden/open-source/index.md","filePath":"garden/open-source/index.md"}'),o={name:"garden/open-source/index.md"},t=n("",4),s=[t];function c(d,i,p,h,l,u){return r(),a("div",null,s)}const _=e(o,[["render",c]]);export{g as __pageData,_ as default};

View file

@ -1 +1 @@
import{_ as a,c as r,o as i,a5 as t,j as e,ai as o,aj as s,ak as n,al as p}from"./chunks/framework.CK8QU5WH.js";const j=JSON.parse('{"title":"Opti-Speech","description":"","frontmatter":{"public":"true","slug":"opti-speech","tags":["My Projects"],"title":"Opti-Speech","prev":false,"next":false},"headers":[],"relativePath":"garden/opti-speech/index.md","filePath":"garden/opti-speech/index.md"}'),l={name:"garden/opti-speech/index.md"},c=t('<h1 id="opti-speech" tabindex="-1">Opti-Speech <a class="header-anchor" href="#opti-speech" aria-label="Permalink to &quot;Opti-Speech&quot;"></a></h1><blockquote><p>Tags: <a href="/garden/my-projects/">My Projects</a></p></blockquote><p>In college I continued development on the Opti-Speech project, originally built alongside the scientific paper <a href="https://www.researchgate.net/profile/Thomas-Campbell-11/publication/354182612_Opti-speech_a_real-time_3d_visual_feedback_system_for_speech_training/links/6424679ca1b72772e4360fa2/Opti-speech-a-real-time-3d-visual-feedback-system-for-speech-training.pdf" target="_blank" rel="noreferrer">Opti-speech: a real-time, 3d visual feedback system for speech training</a></p><h2 id="the-original-project" tabindex="-1">The Original Project <a class="header-anchor" href="#the-original-project" aria-label="Permalink to &quot;The Original Project&quot;"></a></h2><p>The Optispeech project involves designing and testing a real-time tongue model that can be viewed in a transparent head while a subject talks — for the purposes of treating speech errors and teaching foreign language sounds. This work has been conducted in partnership with Vulintus and with support from the National Institutes of Health (NIH).</p><p><img src="'+o+'" alt="system-architecture-600.jpg"></p>',6),h=e("iframe",{width:"560",height:"315",src:"https://www.youtube.com/embed/9uHqIRs7ZjM",frameborder:"0",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowfullscreen:"",style:{display:"block",margin:"auto"}},null,-1),d=e("p",null,"This video shows a talker with WAVE sensors placed on the tongue hitting a virtual target sphere located at the alveolar ridge. When an alveolar consonant is hit (e.g., /s/, /n/, /d/) the sphere changes color from red to green.",-1),m=e("iframe",{width:"560",height:"315",src:"https://www.youtube.com/embed/Oz42mKvlzqI",frameborder:"0",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowfullscreen:"",style:{display:"block",margin:"auto"}},null,-1),u=t('<p>This video shows an American talker learning a novel sound not found in English. When the post-alveolar consonant is hit, the target sphere changes color from red to green. Here, the NDI WAVE system serves as input.</p><h2 id="my-work" tabindex="-1">My Work <a class="header-anchor" href="#my-work" aria-label="Permalink to &quot;My Work&quot;"></a></h2><p>As the sole programmer at UT Dallas Speech Production Lab at the time, my changes involved updating to a more modern version of Unity, improving the interface, in general cleaning up tech debt so it can more easily support new features, and added support for additional EMA systems, namely the Carstens AG501.</p><p><img src="'+s+'" alt="new-interface.png"></p><p>In addition, the program now includes documentation and unit tests to improve program stability and maintainability going forward.</p><p><img src="'+n+'" alt="documentation.png"></p><p><img src="'+p+'" alt="unittests.png"></p>',7),_=[c,h,d,m,u];function g(f,b,y,w,v,k){return i(),r("div",null,_)}const P=a(l,[["render",g]]);export{j as __pageData,P as default}; import{_ as a,c as r,o as i,a4 as t,j as e,ah as o,ai as s,aj as n,ak as p}from"./chunks/framework.CsM8T_AH.js";const j=JSON.parse('{"title":"Opti-Speech","description":"","frontmatter":{"public":"true","slug":"opti-speech","tags":["My Projects"],"title":"Opti-Speech","prev":false,"next":false},"headers":[],"relativePath":"garden/opti-speech/index.md","filePath":"garden/opti-speech/index.md"}'),c={name:"garden/opti-speech/index.md"},l=t('<h1 id="opti-speech" tabindex="-1">Opti-Speech <a class="header-anchor" href="#opti-speech" aria-label="Permalink to &quot;Opti-Speech&quot;"></a></h1><blockquote><p>Tags: <a href="/garden/my-projects/">My Projects</a></p></blockquote><p>In college I continued development on the Opti-Speech project, originally built alongside the scientific paper <a href="https://www.researchgate.net/profile/Thomas-Campbell-11/publication/354182612_Opti-speech_a_real-time_3d_visual_feedback_system_for_speech_training/links/6424679ca1b72772e4360fa2/Opti-speech-a-real-time-3d-visual-feedback-system-for-speech-training.pdf" target="_blank" rel="noreferrer">Opti-speech: a real-time, 3d visual feedback system for speech training</a></p><h2 id="the-original-project" tabindex="-1">The Original Project <a class="header-anchor" href="#the-original-project" aria-label="Permalink to &quot;The Original Project&quot;"></a></h2><p>The Optispeech project involves designing and testing a real-time tongue model that can be viewed in a transparent head while a subject talks — for the purposes of treating speech errors and teaching foreign language sounds. This work has been conducted in partnership with Vulintus and with support from the National Institutes of Health (NIH).</p><p><img src="'+o+'" alt="system-architecture-600.jpg"></p>',6),h=e("iframe",{width:"560",height:"315",src:"https://www.youtube.com/embed/9uHqIRs7ZjM",frameborder:"0",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowfullscreen:"",style:{display:"block",margin:"auto"}},null,-1),d=e("p",null,"This video shows a talker with WAVE sensors placed on the tongue hitting a virtual target sphere located at the alveolar ridge. When an alveolar consonant is hit (e.g., /s/, /n/, /d/) the sphere changes color from red to green.",-1),m=e("iframe",{width:"560",height:"315",src:"https://www.youtube.com/embed/Oz42mKvlzqI",frameborder:"0",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowfullscreen:"",style:{display:"block",margin:"auto"}},null,-1),u=t('<p>This video shows an American talker learning a novel sound not found in English. When the post-alveolar consonant is hit, the target sphere changes color from red to green. Here, the NDI WAVE system serves as input.</p><h2 id="my-work" tabindex="-1">My Work <a class="header-anchor" href="#my-work" aria-label="Permalink to &quot;My Work&quot;"></a></h2><p>As the sole programmer at UT Dallas Speech Production Lab at the time, my changes involved updating to a more modern version of Unity, improving the interface, in general cleaning up tech debt so it can more easily support new features, and added support for additional EMA systems, namely the Carstens AG501.</p><p><img src="'+s+'" alt="new-interface.png"></p><p>In addition, the program now includes documentation and unit tests to improve program stability and maintainability going forward.</p><p><img src="'+n+'" alt="documentation.png"></p><p><img src="'+p+'" alt="unittests.png"></p>',7),_=[l,h,d,m,u];function g(f,b,y,w,v,k){return i(),r("div",null,_)}const P=a(c,[["render",g]]);export{j as __pageData,P as default};

View file

@ -1 +1 @@
import{_ as a,c as r,o as i,a5 as t,j as e,ai as o,aj as s,ak as n,al as p}from"./chunks/framework.CK8QU5WH.js";const j=JSON.parse('{"title":"Opti-Speech","description":"","frontmatter":{"public":"true","slug":"opti-speech","tags":["My Projects"],"title":"Opti-Speech","prev":false,"next":false},"headers":[],"relativePath":"garden/opti-speech/index.md","filePath":"garden/opti-speech/index.md"}'),l={name:"garden/opti-speech/index.md"},c=t("",6),h=e("iframe",{width:"560",height:"315",src:"https://www.youtube.com/embed/9uHqIRs7ZjM",frameborder:"0",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowfullscreen:"",style:{display:"block",margin:"auto"}},null,-1),d=e("p",null,"This video shows a talker with WAVE sensors placed on the tongue hitting a virtual target sphere located at the alveolar ridge. When an alveolar consonant is hit (e.g., /s/, /n/, /d/) the sphere changes color from red to green.",-1),m=e("iframe",{width:"560",height:"315",src:"https://www.youtube.com/embed/Oz42mKvlzqI",frameborder:"0",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowfullscreen:"",style:{display:"block",margin:"auto"}},null,-1),u=t("",7),_=[c,h,d,m,u];function g(f,b,y,w,v,k){return i(),r("div",null,_)}const P=a(l,[["render",g]]);export{j as __pageData,P as default}; import{_ as a,c as r,o as i,a4 as t,j as e,ah as o,ai as s,aj as n,ak as p}from"./chunks/framework.CsM8T_AH.js";const j=JSON.parse('{"title":"Opti-Speech","description":"","frontmatter":{"public":"true","slug":"opti-speech","tags":["My Projects"],"title":"Opti-Speech","prev":false,"next":false},"headers":[],"relativePath":"garden/opti-speech/index.md","filePath":"garden/opti-speech/index.md"}'),c={name:"garden/opti-speech/index.md"},l=t("",6),h=e("iframe",{width:"560",height:"315",src:"https://www.youtube.com/embed/9uHqIRs7ZjM",frameborder:"0",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowfullscreen:"",style:{display:"block",margin:"auto"}},null,-1),d=e("p",null,"This video shows a talker with WAVE sensors placed on the tongue hitting a virtual target sphere located at the alveolar ridge. When an alveolar consonant is hit (e.g., /s/, /n/, /d/) the sphere changes color from red to green.",-1),m=e("iframe",{width:"560",height:"315",src:"https://www.youtube.com/embed/Oz42mKvlzqI",frameborder:"0",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowfullscreen:"",style:{display:"block",margin:"auto"}},null,-1),u=t("",7),_=[l,h,d,m,u];function g(f,b,y,w,v,k){return i(),r("div",null,_)}const P=a(c,[["render",g]]);export{j as __pageData,P as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as r,a5 as t}from"./chunks/framework.CK8QU5WH.js";const g=JSON.parse('{"title":"Planar Pioneers","description":"","frontmatter":{"public":"true","slug":"planar-pioneers","tags":["My Projects","Profectus"],"title":"Planar Pioneers","prev":false,"next":false},"headers":[],"relativePath":"garden/planar-pioneers/index.md","filePath":"garden/planar-pioneers/index.md"}'),o={name:"garden/planar-pioneers/index.md"},n=t('<h1 id="planar-pioneers" tabindex="-1">Planar Pioneers <a class="header-anchor" href="#planar-pioneers" aria-label="Permalink to &quot;Planar Pioneers&quot;"></a></h1><blockquote><p>Tags: <a href="/garden/my-projects/">My Projects</a>, <a href="/garden/profectus/">Profectus</a></p></blockquote><p>Play it <a href="https://thepaperpilot.org/planar" target="_blank" rel="noreferrer">here</a>!</p><p>An <a href="/garden/open-source/">Open Source</a> game designed to show off <a href="/garden/profectus/">Profectus</a>&#39; dynamic layer system!</p><p>The <a href="https://tvtropes.org/pmwiki/pmwiki.php/VideoGame/PlanarPioneers" target="_blank" rel="noreferrer">TV Tropes</a> page on this game mentions some of the cool things about this game</p>',5),s=[n];function p(i,l,c,d,_,h){return r(),a("div",null,s)}const m=e(o,[["render",p]]);export{g as __pageData,m as default}; import{_ as e,c as a,o as r,a4 as t}from"./chunks/framework.CsM8T_AH.js";const g=JSON.parse('{"title":"Planar Pioneers","description":"","frontmatter":{"public":"true","slug":"planar-pioneers","tags":["My Projects","Profectus"],"title":"Planar Pioneers","prev":false,"next":false},"headers":[],"relativePath":"garden/planar-pioneers/index.md","filePath":"garden/planar-pioneers/index.md"}'),o={name:"garden/planar-pioneers/index.md"},n=t('<h1 id="planar-pioneers" tabindex="-1">Planar Pioneers <a class="header-anchor" href="#planar-pioneers" aria-label="Permalink to &quot;Planar Pioneers&quot;"></a></h1><blockquote><p>Tags: <a href="/garden/my-projects/">My Projects</a>, <a href="/garden/profectus/">Profectus</a></p></blockquote><p>Play it <a href="https://thepaperpilot.org/planar" target="_blank" rel="noreferrer">here</a>!</p><p>An <a href="/garden/open-source/">Open Source</a> game designed to show off <a href="/garden/profectus/">Profectus</a>&#39; dynamic layer system!</p><p>The <a href="https://tvtropes.org/pmwiki/pmwiki.php/VideoGame/PlanarPioneers" target="_blank" rel="noreferrer">TV Tropes</a> page on this game mentions some of the cool things about this game</p>',5),s=[n];function p(i,l,c,d,_,h){return r(),a("div",null,s)}const m=e(o,[["render",p]]);export{g as __pageData,m as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as r,a5 as t}from"./chunks/framework.CK8QU5WH.js";const g=JSON.parse('{"title":"Planar Pioneers","description":"","frontmatter":{"public":"true","slug":"planar-pioneers","tags":["My Projects","Profectus"],"title":"Planar Pioneers","prev":false,"next":false},"headers":[],"relativePath":"garden/planar-pioneers/index.md","filePath":"garden/planar-pioneers/index.md"}'),o={name:"garden/planar-pioneers/index.md"},n=t("",5),s=[n];function p(i,l,c,d,_,h){return r(),a("div",null,s)}const m=e(o,[["render",p]]);export{g as __pageData,m as default}; import{_ as e,c as a,o as r,a4 as t}from"./chunks/framework.CsM8T_AH.js";const g=JSON.parse('{"title":"Planar Pioneers","description":"","frontmatter":{"public":"true","slug":"planar-pioneers","tags":["My Projects","Profectus"],"title":"Planar Pioneers","prev":false,"next":false},"headers":[],"relativePath":"garden/planar-pioneers/index.md","filePath":"garden/planar-pioneers/index.md"}'),o={name:"garden/planar-pioneers/index.md"},n=t("",5),s=[n];function p(i,l,c,d,_,h){return r(),a("div",null,s)}const m=e(o,[["render",p]]);export{g as __pageData,m as default};

View file

@ -1 +1 @@
import{_ as e,c as o,o as i,a5 as r}from"./chunks/framework.CK8QU5WH.js";const _=JSON.parse('{"title":"Pre-Order Bonuses","description":"","frontmatter":{"public":"true","slug":"pre-order-bonuses","title":"Pre-Order Bonuses","prev":false,"next":false},"headers":[],"relativePath":"garden/pre-order-bonuses/index.md","filePath":"garden/pre-order-bonuses/index.md"}'),s={name:"garden/pre-order-bonuses/index.md"},l=r('<h1 id="pre-order-bonuses" tabindex="-1">Pre-Order Bonuses <a class="header-anchor" href="#pre-order-bonuses" aria-label="Permalink to &quot;Pre-Order Bonuses&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/video-game-monetization/">Video Game Monetization</a></p></blockquote><p>Pre-order bonuses are benefits given to players who buy a game before it comes out</p><p>They primarily serve to benefit the company</p><ul><li>People commit to buying before the embargo date passes</li><li>Heuristic of how well it&#39;ll sell after launch</li><li>Slight lead on return on investment <ul><li>More significantly impacts indie studios, who will likely have less cash on hand</li></ul></li><li>Companies make deals with storefronts to have exclusive bonuses, to drive customers to said storefronts</li></ul><p>Common bonuses:</p><ul><li>Digital goods: <ul><li>Soundtrack</li><li>Cosmetics</li><li><a href="/garden/premium-currency/">Premium Currency</a></li></ul></li><li>Physical goods: <ul><li>Typically pins, keychains, etc.</li><li>Typically only included in physical editions of the game</li></ul></li></ul>',7),t=[l];function a(n,d,u,c,p,m){return i(),o("div",null,t)}const f=e(s,[["render",a]]);export{_ as __pageData,f as default}; import{_ as e,c as o,o as i,a4 as r}from"./chunks/framework.CsM8T_AH.js";const _=JSON.parse('{"title":"Pre-Order Bonuses","description":"","frontmatter":{"public":"true","slug":"pre-order-bonuses","title":"Pre-Order Bonuses","prev":false,"next":false},"headers":[],"relativePath":"garden/pre-order-bonuses/index.md","filePath":"garden/pre-order-bonuses/index.md"}'),s={name:"garden/pre-order-bonuses/index.md"},l=r('<h1 id="pre-order-bonuses" tabindex="-1">Pre-Order Bonuses <a class="header-anchor" href="#pre-order-bonuses" aria-label="Permalink to &quot;Pre-Order Bonuses&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/video-game-monetization/">Video Game Monetization</a></p></blockquote><p>Pre-order bonuses are benefits given to players who buy a game before it comes out</p><p>They primarily serve to benefit the company</p><ul><li>People commit to buying before the embargo date passes</li><li>Heuristic of how well it&#39;ll sell after launch</li><li>Slight lead on return on investment <ul><li>More significantly impacts indie studios, who will likely have less cash on hand</li></ul></li><li>Companies make deals with storefronts to have exclusive bonuses, to drive customers to said storefronts</li></ul><p>Common bonuses:</p><ul><li>Digital goods: <ul><li>Soundtrack</li><li>Cosmetics</li><li><a href="/garden/premium-currency/">Premium Currency</a></li></ul></li><li>Physical goods: <ul><li>Typically pins, keychains, etc.</li><li>Typically only included in physical editions of the game</li></ul></li></ul>',7),t=[l];function a(n,d,u,c,p,m){return i(),o("div",null,t)}const f=e(s,[["render",a]]);export{_ as __pageData,f as default};

View file

@ -1 +1 @@
import{_ as e,c as o,o as i,a5 as r}from"./chunks/framework.CK8QU5WH.js";const _=JSON.parse('{"title":"Pre-Order Bonuses","description":"","frontmatter":{"public":"true","slug":"pre-order-bonuses","title":"Pre-Order Bonuses","prev":false,"next":false},"headers":[],"relativePath":"garden/pre-order-bonuses/index.md","filePath":"garden/pre-order-bonuses/index.md"}'),s={name:"garden/pre-order-bonuses/index.md"},l=r("",7),t=[l];function a(n,d,u,c,p,m){return i(),o("div",null,t)}const f=e(s,[["render",a]]);export{_ as __pageData,f as default}; import{_ as e,c as o,o as i,a4 as r}from"./chunks/framework.CsM8T_AH.js";const _=JSON.parse('{"title":"Pre-Order Bonuses","description":"","frontmatter":{"public":"true","slug":"pre-order-bonuses","title":"Pre-Order Bonuses","prev":false,"next":false},"headers":[],"relativePath":"garden/pre-order-bonuses/index.md","filePath":"garden/pre-order-bonuses/index.md"}'),s={name:"garden/pre-order-bonuses/index.md"},l=r("",7),t=[l];function a(n,d,u,c,p,m){return i(),o("div",null,t)}const f=e(s,[["render",a]]);export{_ as __pageData,f as default};

View file

@ -1 +1 @@
import{_ as e,c as r,o as a,a5 as i}from"./chunks/framework.CK8QU5WH.js";const f=JSON.parse('{"title":"Premium Currency","description":"","frontmatter":{"public":"true","slug":"premium-currency","title":"Premium Currency","prev":false,"next":false},"headers":[],"relativePath":"garden/premium-currency/index.md","filePath":"garden/premium-currency/index.md"}'),n={name:"garden/premium-currency/index.md"},t=i('<h1 id="premium-currency" tabindex="-1">Premium Currency <a class="header-anchor" href="#premium-currency" aria-label="Permalink to &quot;Premium Currency&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/pre-order-bonuses/">Pre-Order Bonuses</a></p></blockquote><p>A popular form of <a href="/garden/mtx/">MTX</a> where instead of receiving a useful item or effect directly, you receive a currency that is then spent on an in game store</p><p>Reasons companies use them</p><ul><li>Abstracts the real world price of items <ul><li>No strict conversion ratio</li><li>Discounts for bulk purchasing</li><li>Small amounts given for free based on story progression or watching ads</li></ul></li><li>Consolidates smaller purchases into a larger one (decreasing friction of individual purchases)</li></ul>',5),o=[t];function s(c,u,l,m,d,p){return a(),r("div",null,o)}const h=e(n,[["render",s]]);export{f as __pageData,h as default}; import{_ as e,c as r,o as a,a4 as i}from"./chunks/framework.CsM8T_AH.js";const f=JSON.parse('{"title":"Premium Currency","description":"","frontmatter":{"public":"true","slug":"premium-currency","title":"Premium Currency","prev":false,"next":false},"headers":[],"relativePath":"garden/premium-currency/index.md","filePath":"garden/premium-currency/index.md"}'),n={name:"garden/premium-currency/index.md"},t=i('<h1 id="premium-currency" tabindex="-1">Premium Currency <a class="header-anchor" href="#premium-currency" aria-label="Permalink to &quot;Premium Currency&quot;"></a></h1><blockquote><p>Referenced by: <a href="/garden/pre-order-bonuses/">Pre-Order Bonuses</a></p></blockquote><p>A popular form of <a href="/garden/mtx/">MTX</a> where instead of receiving a useful item or effect directly, you receive a currency that is then spent on an in game store</p><p>Reasons companies use them</p><ul><li>Abstracts the real world price of items <ul><li>No strict conversion ratio</li><li>Discounts for bulk purchasing</li><li>Small amounts given for free based on story progression or watching ads</li></ul></li><li>Consolidates smaller purchases into a larger one (decreasing friction of individual purchases)</li></ul>',5),o=[t];function s(c,u,l,m,d,p){return a(),r("div",null,o)}const h=e(n,[["render",s]]);export{f as __pageData,h as default};

View file

@ -1 +1 @@
import{_ as e,c as r,o as a,a5 as i}from"./chunks/framework.CK8QU5WH.js";const f=JSON.parse('{"title":"Premium Currency","description":"","frontmatter":{"public":"true","slug":"premium-currency","title":"Premium Currency","prev":false,"next":false},"headers":[],"relativePath":"garden/premium-currency/index.md","filePath":"garden/premium-currency/index.md"}'),n={name:"garden/premium-currency/index.md"},t=i("",5),o=[t];function s(c,u,l,m,d,p){return a(),r("div",null,o)}const h=e(n,[["render",s]]);export{f as __pageData,h as default}; import{_ as e,c as r,o as a,a4 as i}from"./chunks/framework.CsM8T_AH.js";const f=JSON.parse('{"title":"Premium Currency","description":"","frontmatter":{"public":"true","slug":"premium-currency","title":"Premium Currency","prev":false,"next":false},"headers":[],"relativePath":"garden/premium-currency/index.md","filePath":"garden/premium-currency/index.md"}'),n={name:"garden/premium-currency/index.md"},t=i("",5),o=[t];function s(c,u,l,m,d,p){return a(),r("div",null,o)}const h=e(n,[["render",s]]);export{f as __pageData,h as default};

Some files were not shown because too many files have changed in this diff Show more