Deploying to pages from @ thepaperpilot/pages@b365e24021 🚀

This commit is contained in:
thepaperpilot 2024-06-02 04:13:39 +00:00
parent 5a3aeacfc1
commit 4c6fba8e2e
325 changed files with 1310 additions and 958 deletions

File diff suppressed because one or more lines are too long

View file

@ -1 +1 @@
import{U as o,a2 as p,a3 as u,a4 as l,a5 as c,a6 as f,a7 as d,a8 as m,a9 as h,aa as g,ab as A,d as P,u as v,y,x as C,ac as b,ad as w,ae as E,af as R}from"./chunks/framework.CW2X4ZVO.js";import{t as S}from"./chunks/theme.LU1JJ70W.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),_=P({name:"VitePressApp",setup(){const{site:e,lang:a,dir:t}=v();return y(()=>{C(()=>{document.documentElement.lang=a.value,document.documentElement.dir=t.value})}),e.value.router.prefetchLinks&&b(),w(),E(),s.setup&&s.setup(),()=>R(s.Layout)}});async function T(){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(_)}function D(){let e=o,a;return g(t=>{let n=A(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&&T().then(({app:e,router:a,data:t})=>{a.go().then(()=>{p(a.route,t.site),e.mount("#app")})});export{T as createApp}; import{U as o,a8 as p,a9 as u,aa as l,ab as c,ac as f,ad as d,ae as m,af as h,ag as g,ah as A,d as P,u as v,y,x as C,ai as b,aj as w,ak as E,al as R}from"./chunks/framework.Cq0zXouN.js";import{t as S}from"./chunks/theme.BI7Ww41l.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),_=P({name:"VitePressApp",setup(){const{site:e,lang:a,dir:t}=v();return y(()=>{C(()=>{document.documentElement.lang=a.value,document.documentElement.dir=t.value})}),e.value.router.prefetchLinks&&b(),w(),E(),s.setup&&s.setup(),()=>R(s.Layout)}});async function T(){globalThis.__VITEPRESS__=!0;const e=x(),a=j();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 j(){return h(_)}function x(){let e=o,a;return g(t=>{let n=A(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&&T().then(({app:e,router:a,data:t})=>{a.go().then(()=>{p(a.route,t.site),e.mount("#app")})});export{T as createApp};

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

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="717px" height="276px" viewBox="0 0 717 276" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>FlexSearch</title>
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="Artboard" transform="translate(-442.000000, -355.000000)">
<g id="flexsearch" transform="translate(442.820000, 435.016000)">
<path d="M369.16,89.984 C381.362667,89.984 387.464,84.864 387.464,74.624 C387.464,69.6746667 386.674667,65.792 385.096,62.976 C383.517333,60.16 380.509333,57.8986667 376.072,56.192 L360.968,49.408 C356.104,47.5306667 353.672,44.8 353.672,41.216 L353.672,39.04 C353.672,37.3333333 354.461333,35.84 356.04,34.56 C357.618667,33.28 359.944,32.64 363.016,32.64 L382.344,32.64 C383.538667,32.64 384.136,32.0853333 384.136,30.976 L384.136,26.496 C384.136,25.3013333 383.538667,24.704 382.344,24.704 L361.352,24.704 C349.832,24.704 344.072,29.952 344.072,40.448 C344.072,44.4586667 345.010667,47.68 346.888,50.112 C348.765333,52.544 351.88,54.656 356.232,56.448 L371.336,62.848 C375.688,64.5546667 377.864,67.6693333 377.864,72.192 L377.864,74.624 C377.864,79.5733333 374.536,82.048 367.88,82.048 L346.376,82.048 C345.181333,82.048 344.584,82.6026667 344.584,83.712 L344.584,88.192 C344.584,89.3866667 345.181333,89.984 346.376,89.984 L369.16,89.984 Z M456.24,89.984 C457.434667,89.984 458.032,89.4293333 458.032,88.32 L458.032,83.712 C458.032,82.5173333 457.434667,81.92 456.24,81.92 L430.128,81.92 C422.96,81.92 419.376,78.208 419.376,70.784 L419.376,62.976 C419.376,62.208 419.802667,61.824 420.656,61.824 L456.88,61.824 C458.074667,61.824 458.672,61.184 458.672,59.904 L458.672,43.648 C458.672,37.6746667 457.008,33.024 453.68,29.696 C450.352,26.368 445.744,24.704 439.856,24.704 L429.104,24.704 C423.216,24.704 418.586667,26.368 415.216,29.696 C411.845333,33.024 410.16,37.6746667 410.16,43.648 L410.16,71.04 C410.16,77.0133333 411.845333,81.664 415.216,84.992 C418.586667,88.32 423.216,89.984 429.104,89.984 L456.24,89.984 Z M420.656,55.04 C419.802667,55.04 419.376,54.6133333 419.376,53.76 L419.376,43.904 C419.376,36.5653333 422.96,32.896 430.128,32.896 L438.832,32.896 C446,32.896 449.584,36.5653333 449.584,43.904 L449.584,53.76 C449.584,54.6133333 449.157333,55.04 448.304,55.04 L420.656,55.04 Z M507.736,89.984 C514.306667,89.984 518.658667,87.7226667 520.792,83.2 L521.304,83.2 L521.304,88.192 C521.304,89.3866667 521.901333,89.984 523.096,89.984 L528.856,89.984 C530.050667,89.984 530.648,89.3866667 530.648,88.192 L530.648,26.496 C530.648,25.3013333 530.050667,24.704 528.856,24.704 L501.08,24.704 C495.192,24.704 490.562667,26.368 487.192,29.696 C483.821333,33.024 482.136,37.6746667 482.136,43.648 L482.136,71.04 C482.136,77.0133333 483.821333,81.664 487.192,84.992 C490.562667,88.32 495.192,89.984 501.08,89.984 L507.736,89.984 Z M502.104,81.792 C495.021333,81.792 491.48,78.08 491.48,70.656 L491.48,44.032 C491.48,36.608 495.021333,32.896 502.104,32.896 L520.024,32.896 C520.877333,32.896 521.304,33.28 521.304,34.048 L521.304,70.016 C521.304,73.7706667 520.28,76.672 518.232,78.72 C516.184,80.768 513.24,81.792 509.4,81.792 L502.104,81.792 Z M564.864,89.984 C566.058667,89.984 566.656,89.3866667 566.656,88.192 L566.656,45.824 C566.656,41.8133333 567.68,38.656 569.728,36.352 C571.776,34.048 574.72,32.896 578.56,32.896 L585.472,32.896 C586.069333,32.9813333 586.496,32.8746667 586.752,32.576 C587.008,32.2773333 587.136,31.8293333 587.136,31.232 L587.136,26.496 C587.136,25.3013333 586.581333,24.704 585.472,24.704 L580.48,24.704 C577.237333,24.704 574.421333,25.3866667 572.032,26.752 C569.642667,28.1173333 568.021333,29.7386667 567.168,31.616 L566.656,31.616 L566.656,26.496 C566.656,25.3013333 566.058667,24.704 564.864,24.704 L559.104,24.704 C557.909333,24.704 557.312,25.3013333 557.312,26.496 L557.312,88.192 C557.312,89.3866667 557.909333,89.984 559.104,89.984 L564.864,89.984 Z M642.88,89.984 C644.074667,89.984 644.672,89.4293333 644.672,88.32 L644.672,83.584 C644.672,82.3893333 644.074667,81.792 642.88,81.792 L625.344,81.792 C618.261333,81.792 614.72,78.08 614.72,70.656 L614.72,44.032 C614.72,36.608 618.261333,32.896 625.344,32.896 L642.88,32.896 C644.074667,32.896 644.672,32.3413333 644.672,31.232 L644.672,26.496 C644.672,25.3013333 644.074667,24.704 642.88,24.704 L624.32,24.704 C618.432,24.704 613.802667,26.368 610.432,29.696 C607.061333,33.024 605.376,37.6746667 605.376,43.648 L605.376,71.04 C605.376,77.0133333 607.061333,81.664 610.432,84.992 C613.802667,88.32 618.432,89.984 624.32,89.984 L642.88,89.984 Z M674.28,89.984 C675.474667,89.984 676.072,89.3866667 676.072,88.192 L676.072,44.672 C676.072,40.9173333 677.096,38.016 679.144,35.968 C681.192,33.92 684.136,32.896 687.976,32.896 L695.144,32.896 C702.312,32.896 705.896,36.608 705.896,44.032 L705.896,88.192 C705.896,89.3866667 706.493333,89.984 707.688,89.984 L713.448,89.984 C714.642667,89.984 715.24,89.3866667 715.24,88.192 L715.24,43.648 C715.24,37.6746667 713.618667,33.024 710.376,29.696 C707.133333,26.368 702.610667,24.704 696.808,24.704 L689.64,24.704 C683.069333,24.704 678.717333,26.9653333 676.584,31.488 L676.072,31.488 L676.072,1.792 C676.072,0.597333333 675.474667,0 674.28,0 L668.52,0 C667.325333,0 666.728,0.597333333 666.728,1.792 L666.728,88.192 C666.728,89.3866667 667.325333,89.984 668.52,89.984 L674.28,89.984 Z" id="search" fill="#999" fill-rule="nonzero"></path>
<path d="M43.52,7.68 C45.2266667,7.68 46.08,8.576 46.08,10.368 L46.08,10.368 L46.08,19.072 C46.08,20.864 45.2266667,21.76 43.52,21.76 L43.52,21.76 L17.792,21.76 C16.768,21.76 16.256,22.2293333 16.256,23.168 L16.256,23.168 L16.256,43.008 C16.256,44.032 16.768,44.544 17.792,44.544 L17.792,44.544 L39.68,44.544 C41.472,44.544 42.368,45.44 42.368,47.232 L42.368,47.232 L42.368,55.808 C42.368,57.6853333 41.472,58.624 39.68,58.624 L39.68,58.624 L17.792,58.624 C16.768,58.624 16.256,59.0933333 16.256,60.032 L16.256,60.032 L16.256,87.296 C16.256,89.088 15.36,89.984 13.568,89.984 L13.568,89.984 L2.688,89.984 C0.896,89.984 0,89.088 0,87.296 L0,87.296 L0,10.368 C0,8.576 0.896,7.68 2.688,7.68 L2.688,7.68 Z M81.168,7.68 C82.96,7.68 83.856,8.576 83.856,10.368 L83.856,10.368 L83.856,74.368 C83.856,75.3066667 84.368,75.776 85.392,75.776 L85.392,75.776 L112.4,75.776 C114.106667,75.776 114.96,76.7146667 114.96,78.592 L114.96,78.592 L114.96,87.296 C114.96,89.088 114.106667,89.984 112.4,89.984 L112.4,89.984 L70.288,89.984 C68.496,89.984 67.6,89.088 67.6,87.296 L67.6,87.296 L67.6,10.368 C67.6,8.576 68.496,7.68 70.288,7.68 L70.288,7.68 Z M266.984,7.68 C269.117333,7.68 270.525333,8.576 271.208,10.368 L271.208,10.368 L283.368,37.888 L283.88,37.888 L295.912,10.368 C296.765333,8.576 298.130667,7.68 300.008,7.68 L300.008,7.68 L312.552,7.68 C313.405333,7.68 314.024,8 314.408,8.64 C314.792,9.28 314.813333,9.94133333 314.472,10.624 L314.472,10.624 L295.016,47.872 L314.856,87.04 C315.282667,87.8933333 315.325333,88.5973333 314.984,89.152 C314.642667,89.7066667 314.002667,89.984 313.064,89.984 L313.064,89.984 L300.264,89.984 C298.472,89.984 297.234667,89.1306667 296.552,87.424 L296.552,87.424 L283.88,59.776 L283.368,59.776 L270.568,87.424 C269.8,89.1306667 268.52,89.984 266.728,89.984 L266.728,89.984 L254.056,89.984 C253.202667,89.984 252.605333,89.7066667 252.264,89.152 C251.922667,88.5973333 251.922667,87.936 252.264,87.168 L252.264,87.168 L272.104,47.872 L252.904,10.496 C252.562667,9.81333333 252.562667,9.17333333 252.904,8.576 C253.245333,7.97866667 253.842667,7.68 254.696,7.68 L254.696,7.68 Z" id="flex" fill="#4986FF" fill-rule="nonzero"></path>
<path d="M229.17,75.884 C230.274569,75.884 231.17,76.7794305 231.17,77.884 L231.17,87.964 C231.17,89.0685695 230.274569,89.964 229.17,89.964 L136.07,89.964 C134.965431,89.964 134.07,89.0685695 134.07,87.964 L134.07,77.884 C134.07,76.7794305 134.965431,75.884 136.07,75.884 L229.17,75.884 Z M229.17,41.184 C230.274569,41.184 231.17,42.0794305 231.17,43.184 L231.17,53.264 C231.17,54.3685695 230.274569,55.264 229.17,55.264 L136.07,55.264 C134.965431,55.264 134.07,54.3685695 134.07,53.264 L134.07,43.184 C134.07,42.0794305 134.965431,41.184 136.07,41.184 L229.17,41.184 Z M229.17,7.684 C230.274569,7.684 231.17,8.5794305 231.17,9.684 L231.17,19.764 C231.17,20.8685695 230.274569,21.764 229.17,21.764 L136.07,21.764 C134.965431,21.764 134.07,20.8685695 134.07,19.764 L134.07,9.684 C134.07,8.5794305 134.965431,7.684 136.07,7.684 L229.17,7.684 Z" id="Shape" fill="#FF7300"></path>
</g>
<g id="flexsearch" transform="translate(442.820000, 355.016000)">
<path d="M275.275454,208.024387 C277.228076,209.977008 277.228076,213.142833 275.275454,215.095454 C251.566743,238.804165 220.015227,251.739774 187.17553,251.996115 L186.175454,252 C158.267443,252 131.240582,242.84323 109.10845,225.696888 L60.3379221,274.468037 C59.5568735,275.249086 58.2905435,275.249086 57.5094949,274.468037 L49.0242136,265.982756 C48.243165,265.201707 48.243165,263.935378 49.0242136,263.154329 L97.0814271,215.096 L97.08,215.095454 L104.178542,208 L106.261974,210.083151 C127.837358,230.604849 155.981619,241.768069 185.258678,241.996425 L186.18,242 C216.751149,242 246.150834,230.07794 268.204387,208.024387 C270.157008,206.071765 273.322833,206.071765 275.275454,208.024387 Z M275.275454,36.9045456 C277.228076,38.857167 277.228076,42.0229919 275.275454,43.9756134 C273.322833,45.9282348 270.157008,45.9282348 268.204387,43.9756134 C222.903569,-1.32520446 149.456431,-1.32520446 104.155613,43.9756134 C102.202992,45.9282348 99.037167,45.9282348 97.0845456,43.9756134 C95.1319241,42.0229919 95.1319241,38.857167 97.0845456,36.9045456 C146.290606,-12.3015152 226.069394,-12.3015152 275.275454,36.9045456 Z" id="Shape" fill="#999"></path>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 9.6 KiB

View file

@ -1 +1 @@
import{_ as a,c as r,o as i,j as e,a as t}from"./chunks/framework.CW2X4ZVO.js";const g=JSON.parse('{"title":"ActivityPub","description":"","frontmatter":{"public":"true","slug":"activitypub","tags":["Decentralized"],"title":"ActivityPub"},"headers":[],"relativePath":"garden/activitypub/index.md","filePath":"garden/activitypub/index.md","lastUpdated":null}'),n={name:"garden/activitypub/index.md"},c=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/fediverse/"},"Fediverse")])],-1),d=e("blockquote",null,[e("p",null,[t("Tags: "),e("a",{href:"/garden/decentralized/"},"Decentralized")])],-1),o=e("p",null,[e("a",{href:"https://activitypub.rocks",target:"_blank",rel:"noreferrer"},"ActivityPub"),t(" is a protocol for "),e("a",{href:"/garden/fediverse/"},"Federated Social Media")],-1),s=[c,d,o];function l(u,p,_,f,b,h){return i(),r("div",null,s)}const m=a(n,[["render",l]]);export{g as __pageData,m as default}; import{_ as a,c as r,o as i,j as e,a as t}from"./chunks/framework.Cq0zXouN.js";const g=JSON.parse('{"title":"ActivityPub","description":"","frontmatter":{"public":"true","slug":"activitypub","tags":["Decentralized"],"title":"ActivityPub"},"headers":[],"relativePath":"garden/activitypub/index.md","filePath":"garden/activitypub/index.md","lastUpdated":null}'),n={name:"garden/activitypub/index.md"},c=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/fediverse/"},"Fediverse")])],-1),d=e("blockquote",null,[e("p",null,[t("Tags: "),e("a",{href:"/garden/decentralized/"},"Decentralized")])],-1),o=e("p",null,[e("a",{href:"https://activitypub.rocks",target:"_blank",rel:"noreferrer"},"ActivityPub"),t(" is a protocol for "),e("a",{href:"/garden/fediverse/"},"Federated Social Media")],-1),s=[c,d,o];function l(u,p,_,f,b,h){return i(),r("div",null,s)}const m=a(n,[["render",l]]);export{g as __pageData,m as default};

View file

@ -1 +1 @@
import{_ as a,c as r,o as i,j as e,a as t}from"./chunks/framework.CW2X4ZVO.js";const g=JSON.parse('{"title":"ActivityPub","description":"","frontmatter":{"public":"true","slug":"activitypub","tags":["Decentralized"],"title":"ActivityPub"},"headers":[],"relativePath":"garden/activitypub/index.md","filePath":"garden/activitypub/index.md","lastUpdated":null}'),n={name:"garden/activitypub/index.md"},c=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/fediverse/"},"Fediverse")])],-1),d=e("blockquote",null,[e("p",null,[t("Tags: "),e("a",{href:"/garden/decentralized/"},"Decentralized")])],-1),o=e("p",null,[e("a",{href:"https://activitypub.rocks",target:"_blank",rel:"noreferrer"},"ActivityPub"),t(" is a protocol for "),e("a",{href:"/garden/fediverse/"},"Federated Social Media")],-1),s=[c,d,o];function l(u,p,_,f,b,h){return i(),r("div",null,s)}const m=a(n,[["render",l]]);export{g as __pageData,m as default}; import{_ as a,c as r,o as i,j as e,a as t}from"./chunks/framework.Cq0zXouN.js";const g=JSON.parse('{"title":"ActivityPub","description":"","frontmatter":{"public":"true","slug":"activitypub","tags":["Decentralized"],"title":"ActivityPub"},"headers":[],"relativePath":"garden/activitypub/index.md","filePath":"garden/activitypub/index.md","lastUpdated":null}'),n={name:"garden/activitypub/index.md"},c=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/fediverse/"},"Fediverse")])],-1),d=e("blockquote",null,[e("p",null,[t("Tags: "),e("a",{href:"/garden/decentralized/"},"Decentralized")])],-1),o=e("p",null,[e("a",{href:"https://activitypub.rocks",target:"_blank",rel:"noreferrer"},"ActivityPub"),t(" is a protocol for "),e("a",{href:"/garden/fediverse/"},"Federated Social Media")],-1),s=[c,d,o];function l(u,p,_,f,b,h){return i(),r("div",null,s)}const m=a(n,[["render",l]]);export{g as __pageData,m as default};

View file

@ -1 +1 @@
import{_ as e,c as r,o as t,a1 as a}from"./chunks/framework.CW2X4ZVO.js";const u=JSON.parse('{"title":"ATProto","description":"","frontmatter":{"alias":"The AT Protocol","public":"true","slug":"atproto","tags":["Decentralized"],"title":"ATProto"},"headers":[],"relativePath":"garden/atproto/index.md","filePath":"garden/atproto/index.md","lastUpdated":null}'),o={name:"garden/atproto/index.md"},n=a('<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>',5),s=[n];function d(l,c,i,p,_,f){return t(),r("div",null,s)}const g=e(o,[["render",d]]);export{u as __pageData,g as default}; import{_ as e,c as r,o as t,a7 as a}from"./chunks/framework.Cq0zXouN.js";const u=JSON.parse('{"title":"ATProto","description":"","frontmatter":{"alias":"The AT Protocol","public":"true","slug":"atproto","tags":["Decentralized"],"title":"ATProto"},"headers":[],"relativePath":"garden/atproto/index.md","filePath":"garden/atproto/index.md","lastUpdated":null}'),o={name:"garden/atproto/index.md"},n=a('<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>',5),s=[n];function d(l,c,i,p,_,f){return t(),r("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 r,o as t,a1 as a}from"./chunks/framework.CW2X4ZVO.js";const u=JSON.parse('{"title":"ATProto","description":"","frontmatter":{"alias":"The AT Protocol","public":"true","slug":"atproto","tags":["Decentralized"],"title":"ATProto"},"headers":[],"relativePath":"garden/atproto/index.md","filePath":"garden/atproto/index.md","lastUpdated":null}'),o={name:"garden/atproto/index.md"},n=a("",5),s=[n];function d(l,c,i,p,_,f){return t(),r("div",null,s)}const g=e(o,[["render",d]]);export{u as __pageData,g as default}; import{_ as e,c as r,o as t,a7 as a}from"./chunks/framework.Cq0zXouN.js";const u=JSON.parse('{"title":"ATProto","description":"","frontmatter":{"alias":"The AT Protocol","public":"true","slug":"atproto","tags":["Decentralized"],"title":"ATProto"},"headers":[],"relativePath":"garden/atproto/index.md","filePath":"garden/atproto/index.md","lastUpdated":null}'),o={name:"garden/atproto/index.md"},n=a("",5),s=[n];function d(l,c,i,p,_,f){return t(),r("div",null,s)}const g=e(o,[["render",d]]);export{u as __pageData,g as default};

View file

@ -1 +1 @@
import{_ as a,c as n,o as r,j as e,a as t}from"./chunks/framework.CW2X4ZVO.js";const b=JSON.parse('{"title":"Chat Glue","description":"","frontmatter":{"public":"true","slug":"chat-glue","title":"Chat Glue"},"headers":[],"relativePath":"garden/chat-glue/index.md","filePath":"garden/chat-glue/index.md","lastUpdated":null}'),l={name:"garden/chat-glue/index.md"},o=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/commune/"},"Commune"),t(", "),e("a",{href:"/garden/my-personal-website/"},"My Personal Website"),t(", "),e("a",{href:"/garden/the-small-web/"},"The Small Web")])],-1),s=e("p",null,"A theoretical chat system designed to solve the problems of transcribing branching conversations into linear timelines.",-1),c=e("p",null,[t("Defined by the "),e("a",{href:"https://a9.io/glue-comic/",target:"_blank",rel:"noreferrer"},"Chatting with Glue"),t(" comic.")],-1),i=[o,s,c];function d(h,u,m,_,p,g){return r(),n("div",null,i)}const x=a(l,[["render",d]]);export{b as __pageData,x as default}; import{_ as a,c as n,o as r,j as e,a as t}from"./chunks/framework.Cq0zXouN.js";const b=JSON.parse('{"title":"Chat Glue","description":"","frontmatter":{"public":"true","slug":"chat-glue","title":"Chat Glue"},"headers":[],"relativePath":"garden/chat-glue/index.md","filePath":"garden/chat-glue/index.md","lastUpdated":null}'),l={name:"garden/chat-glue/index.md"},o=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/commune/"},"Commune"),t(", "),e("a",{href:"/garden/my-personal-website/"},"My Personal Website"),t(", "),e("a",{href:"/garden/the-small-web/"},"The Small Web")])],-1),s=e("p",null,"A theoretical chat system designed to solve the problems of transcribing branching conversations into linear timelines.",-1),c=e("p",null,[t("Defined by the "),e("a",{href:"https://a9.io/glue-comic/",target:"_blank",rel:"noreferrer"},"Chatting with Glue"),t(" comic.")],-1),i=[o,s,c];function d(h,u,m,_,p,g){return r(),n("div",null,i)}const x=a(l,[["render",d]]);export{b as __pageData,x as default};

View file

@ -1 +1 @@
import{_ as a,c as n,o as r,j as e,a as t}from"./chunks/framework.CW2X4ZVO.js";const b=JSON.parse('{"title":"Chat Glue","description":"","frontmatter":{"public":"true","slug":"chat-glue","title":"Chat Glue"},"headers":[],"relativePath":"garden/chat-glue/index.md","filePath":"garden/chat-glue/index.md","lastUpdated":null}'),l={name:"garden/chat-glue/index.md"},o=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/commune/"},"Commune"),t(", "),e("a",{href:"/garden/my-personal-website/"},"My Personal Website"),t(", "),e("a",{href:"/garden/the-small-web/"},"The Small Web")])],-1),s=e("p",null,"A theoretical chat system designed to solve the problems of transcribing branching conversations into linear timelines.",-1),c=e("p",null,[t("Defined by the "),e("a",{href:"https://a9.io/glue-comic/",target:"_blank",rel:"noreferrer"},"Chatting with Glue"),t(" comic.")],-1),i=[o,s,c];function d(h,u,m,_,p,g){return r(),n("div",null,i)}const x=a(l,[["render",d]]);export{b as __pageData,x as default}; import{_ as a,c as n,o as r,j as e,a as t}from"./chunks/framework.Cq0zXouN.js";const b=JSON.parse('{"title":"Chat Glue","description":"","frontmatter":{"public":"true","slug":"chat-glue","title":"Chat Glue"},"headers":[],"relativePath":"garden/chat-glue/index.md","filePath":"garden/chat-glue/index.md","lastUpdated":null}'),l={name:"garden/chat-glue/index.md"},o=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/commune/"},"Commune"),t(", "),e("a",{href:"/garden/my-personal-website/"},"My Personal Website"),t(", "),e("a",{href:"/garden/the-small-web/"},"The Small Web")])],-1),s=e("p",null,"A theoretical chat system designed to solve the problems of transcribing branching conversations into linear timelines.",-1),c=e("p",null,[t("Defined by the "),e("a",{href:"https://a9.io/glue-comic/",target:"_blank",rel:"noreferrer"},"Chatting with Glue"),t(" comic.")],-1),i=[o,s,c];function d(h,u,m,_,p,g){return r(),n("div",null,i)}const x=a(l,[["render",d]]);export{b as __pageData,x as default};

View file

@ -1 +1 @@
import{_ as e,c as o,o as t,a1 as a}from"./chunks/framework.CW2X4ZVO.js";const _=JSON.parse('{"title":"Chronological","description":"","frontmatter":{"public":"true","slug":"chronological","title":"Chronological"},"headers":[],"relativePath":"garden/chronological/index.md","filePath":"garden/chronological/index.md","lastUpdated":null}'),r={name:"garden/chronological/index.md"},i=a('<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>',8),n=[i];function l(c,s,d,h,g,f){return t(),o("div",null,n)}const m=e(r,[["render",l]]);export{_ as __pageData,m as default}; import{_ as e,c as o,o as t,a7 as a}from"./chunks/framework.Cq0zXouN.js";const _=JSON.parse('{"title":"Chronological","description":"","frontmatter":{"public":"true","slug":"chronological","title":"Chronological"},"headers":[],"relativePath":"garden/chronological/index.md","filePath":"garden/chronological/index.md","lastUpdated":null}'),r={name:"garden/chronological/index.md"},i=a('<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>',8),n=[i];function l(c,s,d,h,g,f){return t(),o("div",null,n)}const m=e(r,[["render",l]]);export{_ as __pageData,m as default};

View file

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

View file

@ -1 +1 @@
import{_ as t,c as a,o as r,j as e,a as n}from"./chunks/framework.CW2X4ZVO.js";const g=JSON.parse('{"title":"Cinny","description":"","frontmatter":{"public":"true","slug":"cinny","title":"Cinny"},"headers":[],"relativePath":"garden/cinny/index.md","filePath":"garden/cinny/index.md","lastUpdated":null}'),o={name:"garden/cinny/index.md"},c=e("blockquote",null,[e("p",null,[n("Referenced by: "),e("a",{href:"/garden/incremental-social/"},"Incremental Social")])],-1),i=e("p",null,[e("a",{href:"https://cinny.in",target:"_blank",rel:"noreferrer"},"Cinny"),n(" is an "),e("a",{href:"/garden/open-source/"},"Open Source"),n(" web client for the "),e("a",{href:"/garden/matrix/"},"Matrix"),n(" messaging protocol")],-1),s=[c,i];function l(d,p,_,f,u,h){return r(),a("div",null,s)}const x=t(o,[["render",l]]);export{g as __pageData,x as default}; import{_ as t,c as a,o as r,j as e,a as n}from"./chunks/framework.Cq0zXouN.js";const g=JSON.parse('{"title":"Cinny","description":"","frontmatter":{"public":"true","slug":"cinny","title":"Cinny"},"headers":[],"relativePath":"garden/cinny/index.md","filePath":"garden/cinny/index.md","lastUpdated":null}'),o={name:"garden/cinny/index.md"},c=e("blockquote",null,[e("p",null,[n("Referenced by: "),e("a",{href:"/garden/incremental-social/"},"Incremental Social")])],-1),i=e("p",null,[e("a",{href:"https://cinny.in",target:"_blank",rel:"noreferrer"},"Cinny"),n(" is an "),e("a",{href:"/garden/open-source/"},"Open Source"),n(" web client for the "),e("a",{href:"/garden/matrix/"},"Matrix"),n(" messaging protocol")],-1),s=[c,i];function l(d,p,_,f,u,h){return r(),a("div",null,s)}const x=t(o,[["render",l]]);export{g as __pageData,x as default};

View file

@ -1 +1 @@
import{_ as t,c as a,o as r,j as e,a as n}from"./chunks/framework.CW2X4ZVO.js";const g=JSON.parse('{"title":"Cinny","description":"","frontmatter":{"public":"true","slug":"cinny","title":"Cinny"},"headers":[],"relativePath":"garden/cinny/index.md","filePath":"garden/cinny/index.md","lastUpdated":null}'),o={name:"garden/cinny/index.md"},c=e("blockquote",null,[e("p",null,[n("Referenced by: "),e("a",{href:"/garden/incremental-social/"},"Incremental Social")])],-1),i=e("p",null,[e("a",{href:"https://cinny.in",target:"_blank",rel:"noreferrer"},"Cinny"),n(" is an "),e("a",{href:"/garden/open-source/"},"Open Source"),n(" web client for the "),e("a",{href:"/garden/matrix/"},"Matrix"),n(" messaging protocol")],-1),s=[c,i];function l(d,p,_,f,u,h){return r(),a("div",null,s)}const x=t(o,[["render",l]]);export{g as __pageData,x as default}; import{_ as t,c as a,o as r,j as e,a as n}from"./chunks/framework.Cq0zXouN.js";const g=JSON.parse('{"title":"Cinny","description":"","frontmatter":{"public":"true","slug":"cinny","title":"Cinny"},"headers":[],"relativePath":"garden/cinny/index.md","filePath":"garden/cinny/index.md","lastUpdated":null}'),o={name:"garden/cinny/index.md"},c=e("blockquote",null,[e("p",null,[n("Referenced by: "),e("a",{href:"/garden/incremental-social/"},"Incremental Social")])],-1),i=e("p",null,[e("a",{href:"https://cinny.in",target:"_blank",rel:"noreferrer"},"Cinny"),n(" is an "),e("a",{href:"/garden/open-source/"},"Open Source"),n(" web client for the "),e("a",{href:"/garden/matrix/"},"Matrix"),n(" messaging protocol")],-1),s=[c,i];function l(d,p,_,f,u,h){return r(),a("div",null,s)}const x=t(o,[["render",l]]);export{g as __pageData,x as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as r,a1 as t}from"./chunks/framework.CW2X4ZVO.js";const f=JSON.parse('{"title":"Commune","description":"","frontmatter":{"public":"true","slug":"commune","title":"Commune"},"headers":[],"relativePath":"garden/commune/index.md","filePath":"garden/commune/index.md","lastUpdated":null}'),i={name:"garden/commune/index.md"},l=t('<blockquote><p>Referenced by: <a href="/garden/federated-identity/">Federated Identity</a>, <a href="/garden/fedi-v2/">Fedi v2</a>, <a href="/garden/my-personal-website/">My Personal Website</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>',9),n=[l];function o(d,s,h,c,m,g){return r(),a("div",null,n)}const p=e(i,[["render",o]]);export{f as __pageData,p as default}; import{_ as e,c as a,o as r,a7 as t}from"./chunks/framework.Cq0zXouN.js";const f=JSON.parse('{"title":"Commune","description":"","frontmatter":{"public":"true","slug":"commune","title":"Commune"},"headers":[],"relativePath":"garden/commune/index.md","filePath":"garden/commune/index.md","lastUpdated":null}'),i={name:"garden/commune/index.md"},l=t('<blockquote><p>Referenced by: <a href="/garden/federated-identity/">Federated Identity</a>, <a href="/garden/fedi-v2/">Fedi v2</a>, <a href="/garden/my-personal-website/">My Personal Website</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>',9),n=[l];function o(d,s,h,c,m,g){return r(),a("div",null,n)}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,a1 as t}from"./chunks/framework.CW2X4ZVO.js";const f=JSON.parse('{"title":"Commune","description":"","frontmatter":{"public":"true","slug":"commune","title":"Commune"},"headers":[],"relativePath":"garden/commune/index.md","filePath":"garden/commune/index.md","lastUpdated":null}'),i={name:"garden/commune/index.md"},l=t("",9),n=[l];function o(d,s,h,c,m,g){return r(),a("div",null,n)}const p=e(i,[["render",o]]);export{f as __pageData,p as default}; import{_ as e,c as a,o as r,a7 as t}from"./chunks/framework.Cq0zXouN.js";const f=JSON.parse('{"title":"Commune","description":"","frontmatter":{"public":"true","slug":"commune","title":"Commune"},"headers":[],"relativePath":"garden/commune/index.md","filePath":"garden/commune/index.md","lastUpdated":null}'),i={name:"garden/commune/index.md"},l=t("",9),n=[l];function o(d,s,h,c,m,g){return r(),a("div",null,n)}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 t,a1 as r}from"./chunks/framework.CW2X4ZVO.js";const m=JSON.parse('{"title":"Decentralized","description":"","frontmatter":{"alias":"Federated","public":"true","slug":"decentralized","title":"Decentralized"},"headers":[],"relativePath":"garden/decentralized/index.md","filePath":"garden/decentralized/index.md","lastUpdated":null}'),i={name:"garden/decentralized/index.md"},n=r('<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>',8),o=[n];function d(l,s,c,p,f,u){return t(),a("div",null,o)}const _=e(i,[["render",d]]);export{m as __pageData,_ as default}; import{_ as e,c as a,o as t,a7 as r}from"./chunks/framework.Cq0zXouN.js";const m=JSON.parse('{"title":"Decentralized","description":"","frontmatter":{"alias":"Federated","public":"true","slug":"decentralized","title":"Decentralized"},"headers":[],"relativePath":"garden/decentralized/index.md","filePath":"garden/decentralized/index.md","lastUpdated":null}'),i={name:"garden/decentralized/index.md"},n=r('<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>',8),o=[n];function d(l,s,c,p,f,u){return t(),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 t,a1 as r}from"./chunks/framework.CW2X4ZVO.js";const m=JSON.parse('{"title":"Decentralized","description":"","frontmatter":{"alias":"Federated","public":"true","slug":"decentralized","title":"Decentralized"},"headers":[],"relativePath":"garden/decentralized/index.md","filePath":"garden/decentralized/index.md","lastUpdated":null}'),i={name:"garden/decentralized/index.md"},n=r("",8),o=[n];function d(l,s,c,p,f,u){return t(),a("div",null,o)}const _=e(i,[["render",d]]);export{m as __pageData,_ as default}; import{_ as e,c as a,o as t,a7 as r}from"./chunks/framework.Cq0zXouN.js";const m=JSON.parse('{"title":"Decentralized","description":"","frontmatter":{"alias":"Federated","public":"true","slug":"decentralized","title":"Decentralized"},"headers":[],"relativePath":"garden/decentralized/index.md","filePath":"garden/decentralized/index.md","lastUpdated":null}'),i={name:"garden/decentralized/index.md"},n=r("",8),o=[n];function d(l,s,c,p,f,u){return t(),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,a1 as t}from"./chunks/framework.CW2X4ZVO.js";const u=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"},"headers":[],"relativePath":"garden/digital-gardens/index.md","filePath":"garden/digital-gardens/index.md","lastUpdated":null}'),n={name:"garden/digital-gardens/index.md"},o=t('<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></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>',6),i=[o];function l(d,s,g,c,h,p){return r(),a("div",null,i)}const m=e(n,[["render",l]]);export{u as __pageData,m as default}; import{_ as e,c as a,o as r,a7 as t}from"./chunks/framework.Cq0zXouN.js";const u=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"},"headers":[],"relativePath":"garden/digital-gardens/index.md","filePath":"garden/digital-gardens/index.md","lastUpdated":null}'),n={name:"garden/digital-gardens/index.md"},o=t('<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></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>',6),i=[o];function l(d,s,g,c,h,p){return r(),a("div",null,i)}const m=e(n,[["render",l]]);export{u as __pageData,m as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as r,a1 as t}from"./chunks/framework.CW2X4ZVO.js";const u=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"},"headers":[],"relativePath":"garden/digital-gardens/index.md","filePath":"garden/digital-gardens/index.md","lastUpdated":null}'),n={name:"garden/digital-gardens/index.md"},o=t("",6),i=[o];function l(d,s,g,c,h,p){return r(),a("div",null,i)}const m=e(n,[["render",l]]);export{u as __pageData,m as default}; import{_ as e,c as a,o as r,a7 as t}from"./chunks/framework.Cq0zXouN.js";const u=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"},"headers":[],"relativePath":"garden/digital-gardens/index.md","filePath":"garden/digital-gardens/index.md","lastUpdated":null}'),n={name:"garden/digital-gardens/index.md"},o=t("",6),i=[o];function l(d,s,g,c,h,p){return r(),a("div",null,i)}const m=e(n,[["render",l]]);export{u as __pageData,m as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a1 as r}from"./chunks/framework.CW2X4ZVO.js";const _=JSON.parse('{"title":"Federated Identity","description":"","frontmatter":{"public":"true","slug":"federated-identity","tags":["Decentralized"],"title":"Federated Identity"},"headers":[],"relativePath":"garden/federated-identity/index.md","filePath":"garden/federated-identity/index.md","lastUpdated":null}'),i={name:"garden/federated-identity/index.md"},d=r('<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>',8),n=[d];function o(l,c,s,p,u,h){return a(),t("div",null,n)}const m=e(i,[["render",o]]);export{_ as __pageData,m as default}; import{_ as e,c as t,o as a,a7 as r}from"./chunks/framework.Cq0zXouN.js";const _=JSON.parse('{"title":"Federated Identity","description":"","frontmatter":{"public":"true","slug":"federated-identity","tags":["Decentralized"],"title":"Federated Identity"},"headers":[],"relativePath":"garden/federated-identity/index.md","filePath":"garden/federated-identity/index.md","lastUpdated":null}'),i={name:"garden/federated-identity/index.md"},d=r('<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>',8),n=[d];function o(l,c,s,p,u,h){return a(),t("div",null,n)}const m=e(i,[["render",o]]);export{_ as __pageData,m as default};

View file

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

View file

@ -1 +1 @@
import{_ as e,c as i,o as t,a1 as l}from"./chunks/framework.CW2X4ZVO.js";const m=JSON.parse('{"title":"Fedi v2","description":"","frontmatter":{"public":"true","slug":"fedi-v2","title":"Fedi v2"},"headers":[],"relativePath":"garden/fedi-v2/index.md","filePath":"garden/fedi-v2/index.md","lastUpdated":null}'),a={name:"garden/fedi-v2/index.md"},s=l("",13),r=[s];function o(n,d,u,c,h,p){return t(),i("div",null,r)}const f=e(a,[["render",o]]);export{m as __pageData,f as default}; import{_ as e,c as i,o as t,a7 as l}from"./chunks/framework.Cq0zXouN.js";const m=JSON.parse('{"title":"Fedi v2","description":"","frontmatter":{"public":"true","slug":"fedi-v2","title":"Fedi v2"},"headers":[],"relativePath":"garden/fedi-v2/index.md","filePath":"garden/fedi-v2/index.md","lastUpdated":null}'),a={name:"garden/fedi-v2/index.md"},s=l("",13),r=[s];function o(n,d,u,c,h,p){return t(),i("div",null,r)}const f=e(a,[["render",o]]);export{m as __pageData,f as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as t,a1 as r}from"./chunks/framework.CW2X4ZVO.js";const u=JSON.parse('{"title":"Fediverse","description":"","frontmatter":{"alias":"Federated Social Media","public":"true","slug":"fediverse","tags":["Decentralized"],"title":"Fediverse"},"headers":[],"relativePath":"garden/fediverse/index.md","filePath":"garden/fediverse/index.md","lastUpdated":null}'),i={name:"garden/fediverse/index.md"},n=r('<blockquote><p>Referenced by: <a href="/garden/atproto/">ATProto</a>, <a href="/garden/decentralized/">Decentralized</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>',6),o=[n];function d(l,c,s,p,f,_){return t(),a("div",null,o)}const g=e(i,[["render",d]]);export{u as __pageData,g as default}; import{_ as e,c as a,o as t,a7 as r}from"./chunks/framework.Cq0zXouN.js";const u=JSON.parse('{"title":"Fediverse","description":"","frontmatter":{"alias":"Federated Social Media","public":"true","slug":"fediverse","tags":["Decentralized"],"title":"Fediverse"},"headers":[],"relativePath":"garden/fediverse/index.md","filePath":"garden/fediverse/index.md","lastUpdated":null}'),i={name:"garden/fediverse/index.md"},n=r('<blockquote><p>Referenced by: <a href="/garden/atproto/">ATProto</a>, <a href="/garden/decentralized/">Decentralized</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>',6),o=[n];function d(l,c,s,p,f,_){return t(),a("div",null,o)}const g=e(i,[["render",d]]);export{u as __pageData,g as default};

View file

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

View file

@ -1 +1 @@
import{_ as r,c as t,o as a,j as e,a as o}from"./chunks/framework.CW2X4ZVO.js";const m=JSON.parse('{"title":"Forgejo","description":"","frontmatter":{"public":"true","slug":"forgejo","title":"Forgejo"},"headers":[],"relativePath":"garden/forgejo/index.md","filePath":"garden/forgejo/index.md","lastUpdated":null}'),n={name:"garden/forgejo/index.md"},s=e("blockquote",null,[e("p",null,[o("Referenced by: "),e("a",{href:"/garden/incremental-social/"},"Incremental Social")])],-1),c=e("p",null,[e("a",{href:"https://forgejo.org",target:"_blank",rel:"noreferrer"},"Forgejo"),o(" is an "),e("a",{href:"/garden/open-source/"},"Open Source"),o(" code repository hosting software")],-1),d=[s,c];function l(i,f,p,g,_,u){return a(),t("div",null,d)}const j=r(n,[["render",l]]);export{m as __pageData,j as default}; import{_ as r,c as t,o as a,j as e,a as o}from"./chunks/framework.Cq0zXouN.js";const m=JSON.parse('{"title":"Forgejo","description":"","frontmatter":{"public":"true","slug":"forgejo","title":"Forgejo"},"headers":[],"relativePath":"garden/forgejo/index.md","filePath":"garden/forgejo/index.md","lastUpdated":null}'),n={name:"garden/forgejo/index.md"},s=e("blockquote",null,[e("p",null,[o("Referenced by: "),e("a",{href:"/garden/incremental-social/"},"Incremental Social")])],-1),c=e("p",null,[e("a",{href:"https://forgejo.org",target:"_blank",rel:"noreferrer"},"Forgejo"),o(" is an "),e("a",{href:"/garden/open-source/"},"Open Source"),o(" code repository hosting software")],-1),d=[s,c];function l(i,f,p,g,_,u){return a(),t("div",null,d)}const j=r(n,[["render",l]]);export{m as __pageData,j as default};

View file

@ -1 +1 @@
import{_ as r,c as t,o as a,j as e,a as o}from"./chunks/framework.CW2X4ZVO.js";const m=JSON.parse('{"title":"Forgejo","description":"","frontmatter":{"public":"true","slug":"forgejo","title":"Forgejo"},"headers":[],"relativePath":"garden/forgejo/index.md","filePath":"garden/forgejo/index.md","lastUpdated":null}'),n={name:"garden/forgejo/index.md"},s=e("blockquote",null,[e("p",null,[o("Referenced by: "),e("a",{href:"/garden/incremental-social/"},"Incremental Social")])],-1),c=e("p",null,[e("a",{href:"https://forgejo.org",target:"_blank",rel:"noreferrer"},"Forgejo"),o(" is an "),e("a",{href:"/garden/open-source/"},"Open Source"),o(" code repository hosting software")],-1),d=[s,c];function l(i,f,p,g,_,u){return a(),t("div",null,d)}const j=r(n,[["render",l]]);export{m as __pageData,j as default}; import{_ as r,c as t,o as a,j as e,a as o}from"./chunks/framework.Cq0zXouN.js";const m=JSON.parse('{"title":"Forgejo","description":"","frontmatter":{"public":"true","slug":"forgejo","title":"Forgejo"},"headers":[],"relativePath":"garden/forgejo/index.md","filePath":"garden/forgejo/index.md","lastUpdated":null}'),n={name:"garden/forgejo/index.md"},s=e("blockquote",null,[e("p",null,[o("Referenced by: "),e("a",{href:"/garden/incremental-social/"},"Incremental Social")])],-1),c=e("p",null,[e("a",{href:"https://forgejo.org",target:"_blank",rel:"noreferrer"},"Forgejo"),o(" is an "),e("a",{href:"/garden/open-source/"},"Open Source"),o(" code repository hosting software")],-1),d=[s,c];function l(i,f,p,g,_,u){return a(),t("div",null,d)}const j=r(n,[["render",l]]);export{m as __pageData,j as default};

View file

@ -1 +1 @@
import{_ as r,c as a,o as n,j as e,a as o}from"./chunks/framework.CW2X4ZVO.js";const u=JSON.parse('{"title":"Freeform vs Chronological Dichotomy","description":"","frontmatter":{"public":"true","slug":"freeform-vs-chronological-dichotomy","title":"Freeform vs Chronological Dichotomy"},"headers":[],"relativePath":"garden/freeform-vs-chronological-dichotomy/index.md","filePath":"garden/freeform-vs-chronological-dichotomy/index.md","lastUpdated":null}'),t={name:"garden/freeform-vs-chronological-dichotomy/index.md"},c=e("blockquote",null,[e("p",null,[o("Referenced by: "),e("a",{href:"/garden/chronological/"},"Chronological"),o(", "),e("a",{href:"/garden/freeform/"},"Freeform")])],-1),l=e("p",null,[o("Describes a dichotomy between displaying information in a "),e("a",{href:"/garden/freeform/"},"Freeform"),o(" vs "),e("a",{href:"/garden/chronological/"},"Chronological"),o(" manner")],-1),i=[c,l];function s(d,f,h,m,g,_){return n(),a("div",null,i)}const v=r(t,[["render",s]]);export{u as __pageData,v as default}; import{_ as r,c as a,o as n,j as e,a as o}from"./chunks/framework.Cq0zXouN.js";const u=JSON.parse('{"title":"Freeform vs Chronological Dichotomy","description":"","frontmatter":{"public":"true","slug":"freeform-vs-chronological-dichotomy","title":"Freeform vs Chronological Dichotomy"},"headers":[],"relativePath":"garden/freeform-vs-chronological-dichotomy/index.md","filePath":"garden/freeform-vs-chronological-dichotomy/index.md","lastUpdated":null}'),t={name:"garden/freeform-vs-chronological-dichotomy/index.md"},c=e("blockquote",null,[e("p",null,[o("Referenced by: "),e("a",{href:"/garden/chronological/"},"Chronological"),o(", "),e("a",{href:"/garden/freeform/"},"Freeform")])],-1),l=e("p",null,[o("Describes a dichotomy between displaying information in a "),e("a",{href:"/garden/freeform/"},"Freeform"),o(" vs "),e("a",{href:"/garden/chronological/"},"Chronological"),o(" manner")],-1),i=[c,l];function s(d,f,h,m,g,_){return n(),a("div",null,i)}const v=r(t,[["render",s]]);export{u as __pageData,v as default};

View file

@ -1 +1 @@
import{_ as r,c as a,o as n,j as e,a as o}from"./chunks/framework.CW2X4ZVO.js";const u=JSON.parse('{"title":"Freeform vs Chronological Dichotomy","description":"","frontmatter":{"public":"true","slug":"freeform-vs-chronological-dichotomy","title":"Freeform vs Chronological Dichotomy"},"headers":[],"relativePath":"garden/freeform-vs-chronological-dichotomy/index.md","filePath":"garden/freeform-vs-chronological-dichotomy/index.md","lastUpdated":null}'),t={name:"garden/freeform-vs-chronological-dichotomy/index.md"},c=e("blockquote",null,[e("p",null,[o("Referenced by: "),e("a",{href:"/garden/chronological/"},"Chronological"),o(", "),e("a",{href:"/garden/freeform/"},"Freeform")])],-1),l=e("p",null,[o("Describes a dichotomy between displaying information in a "),e("a",{href:"/garden/freeform/"},"Freeform"),o(" vs "),e("a",{href:"/garden/chronological/"},"Chronological"),o(" manner")],-1),i=[c,l];function s(d,f,h,m,g,_){return n(),a("div",null,i)}const v=r(t,[["render",s]]);export{u as __pageData,v as default}; import{_ as r,c as a,o as n,j as e,a as o}from"./chunks/framework.Cq0zXouN.js";const u=JSON.parse('{"title":"Freeform vs Chronological Dichotomy","description":"","frontmatter":{"public":"true","slug":"freeform-vs-chronological-dichotomy","title":"Freeform vs Chronological Dichotomy"},"headers":[],"relativePath":"garden/freeform-vs-chronological-dichotomy/index.md","filePath":"garden/freeform-vs-chronological-dichotomy/index.md","lastUpdated":null}'),t={name:"garden/freeform-vs-chronological-dichotomy/index.md"},c=e("blockquote",null,[e("p",null,[o("Referenced by: "),e("a",{href:"/garden/chronological/"},"Chronological"),o(", "),e("a",{href:"/garden/freeform/"},"Freeform")])],-1),l=e("p",null,[o("Describes a dichotomy between displaying information in a "),e("a",{href:"/garden/freeform/"},"Freeform"),o(" vs "),e("a",{href:"/garden/chronological/"},"Chronological"),o(" manner")],-1),i=[c,l];function s(d,f,h,m,g,_){return n(),a("div",null,i)}const v=r(t,[["render",s]]);export{u as __pageData,v as default};

View file

@ -1 +1 @@
import{_ as e,c as r,o,a1 as a}from"./chunks/framework.CW2X4ZVO.js";const g=JSON.parse('{"title":"Freeform","description":"","frontmatter":{"public":"true","slug":"freeform","title":"Freeform"},"headers":[],"relativePath":"garden/freeform/index.md","filePath":"garden/freeform/index.md","lastUpdated":null}'),t={name:"garden/freeform/index.md"},n=a('<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>',6),i=[n];function d(c,l,f,s,m,h){return o(),r("div",null,i)}const p=e(t,[["render",d]]);export{g as __pageData,p as default}; import{_ as e,c as r,o,a7 as a}from"./chunks/framework.Cq0zXouN.js";const g=JSON.parse('{"title":"Freeform","description":"","frontmatter":{"public":"true","slug":"freeform","title":"Freeform"},"headers":[],"relativePath":"garden/freeform/index.md","filePath":"garden/freeform/index.md","lastUpdated":null}'),t={name:"garden/freeform/index.md"},n=a('<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>',6),i=[n];function d(c,l,f,s,m,h){return o(),r("div",null,i)}const p=e(t,[["render",d]]);export{g as __pageData,p as default};

View file

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

View file

@ -1 +1 @@
import{_ as e,c as r,o as a,a1 as t}from"./chunks/framework.CW2X4ZVO.js";const _=JSON.parse('{"title":"Garden-RSS","description":"","frontmatter":{"public":"true","slug":"garden-rss","title":"Garden-RSS"},"headers":[],"relativePath":"garden/garden-rss/index.md","filePath":"garden/garden-rss/index.md","lastUpdated":null}'),i={name:"garden/garden-rss/index.md"},s=t('<blockquote><p>Referenced by: <a href="/garden/freeform/">Freeform</a>, <a href="/garden/the-small-web/">The Small Web</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>',8),o=[s];function l(n,d,c,f,g,h){return a(),r("div",null,o)}const u=e(i,[["render",l]]);export{_ as __pageData,u as default}; import{_ as e,c as r,o as a,a7 as t}from"./chunks/framework.Cq0zXouN.js";const _=JSON.parse('{"title":"Garden-RSS","description":"","frontmatter":{"public":"true","slug":"garden-rss","title":"Garden-RSS"},"headers":[],"relativePath":"garden/garden-rss/index.md","filePath":"garden/garden-rss/index.md","lastUpdated":null}'),i={name:"garden/garden-rss/index.md"},s=t('<blockquote><p>Referenced by: <a href="/garden/freeform/">Freeform</a>, <a href="/garden/the-small-web/">The Small Web</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>',8),o=[s];function l(n,d,c,f,g,h){return a(),r("div",null,o)}const u=e(i,[["render",l]]);export{_ as __pageData,u as default};

View file

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

View file

@ -1 +1 @@
import{_ as e,c as a,o as n,a1 as t}from"./chunks/framework.CW2X4ZVO.js";const g=JSON.parse('{"title":"Incremental Social","description":"","frontmatter":{"public":"","slug":"incremental-social","title":"Incremental Social"},"headers":[],"relativePath":"garden/incremental-social/index.md","filePath":"garden/incremental-social/index.md","lastUpdated":null}'),r={name:"garden/incremental-social/index.md"},i=t('<blockquote><p>Referenced by: <a href="/garden/federated-identity/">Federated Identity</a>, <a href="/garden/my-personal-website/">My Personal Website</a>, <a href="/garden/webrings/">Webrings</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>',4),o=[i];function s(c,d,l,_,p,f){return n(),a("div",null,o)}const h=e(r,[["render",s]]);export{g as __pageData,h as default}; import{_ as e,c as a,o as n,a7 as t}from"./chunks/framework.Cq0zXouN.js";const g=JSON.parse('{"title":"Incremental Social","description":"","frontmatter":{"public":"","slug":"incremental-social","title":"Incremental Social"},"headers":[],"relativePath":"garden/incremental-social/index.md","filePath":"garden/incremental-social/index.md","lastUpdated":null}'),r={name:"garden/incremental-social/index.md"},i=t('<blockquote><p>Referenced by: <a href="/garden/federated-identity/">Federated Identity</a>, <a href="/garden/my-personal-website/">My Personal Website</a>, <a href="/garden/webrings/">Webrings</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>',4),o=[i];function s(c,d,l,_,p,f){return n(),a("div",null,o)}const h=e(r,[["render",s]]);export{g as __pageData,h as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as n,a1 as t}from"./chunks/framework.CW2X4ZVO.js";const g=JSON.parse('{"title":"Incremental Social","description":"","frontmatter":{"public":"","slug":"incremental-social","title":"Incremental Social"},"headers":[],"relativePath":"garden/incremental-social/index.md","filePath":"garden/incremental-social/index.md","lastUpdated":null}'),r={name:"garden/incremental-social/index.md"},i=t("",4),o=[i];function s(c,d,l,_,p,f){return n(),a("div",null,o)}const h=e(r,[["render",s]]);export{g as __pageData,h as default}; import{_ as e,c as a,o as n,a7 as t}from"./chunks/framework.Cq0zXouN.js";const g=JSON.parse('{"title":"Incremental Social","description":"","frontmatter":{"public":"","slug":"incremental-social","title":"Incremental Social"},"headers":[],"relativePath":"garden/incremental-social/index.md","filePath":"garden/incremental-social/index.md","lastUpdated":null}'),r={name:"garden/incremental-social/index.md"},i=t("",4),o=[i];function s(c,d,l,_,p,f){return n(),a("div",null,o)}const h=e(r,[["render",s]]);export{g as __pageData,h as default};

View file

@ -1 +1 @@
import{_ as o,c as n,o as s,j as e,a as t}from"./chunks/framework.CW2X4ZVO.js";const m=JSON.parse('{"title":"Logseq","description":"","frontmatter":{"public":"true","slug":"logseq","title":"Logseq"},"headers":[],"relativePath":"garden/logseq/index.md","filePath":"garden/logseq/index.md","lastUpdated":null}'),a={name:"garden/logseq/index.md"},r=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/this-knowledge-hub/"},"This Knowledge Hub")])],-1),l=e("p",null,[e("a",{href:"https://logseq.com",target:"_blank",rel:"noreferrer"},"Logseq"),t(" is an "),e("a",{href:"/garden/open-source/"},"Open Source"),t(" outlining software")],-1),d=[r,l];function c(i,g,p,u,_,f){return s(),n("div",null,d)}const q=o(a,[["render",c]]);export{m as __pageData,q as default}; import{_ as o,c as n,o as s,j as e,a as t}from"./chunks/framework.Cq0zXouN.js";const m=JSON.parse('{"title":"Logseq","description":"","frontmatter":{"public":"true","slug":"logseq","title":"Logseq"},"headers":[],"relativePath":"garden/logseq/index.md","filePath":"garden/logseq/index.md","lastUpdated":null}'),a={name:"garden/logseq/index.md"},r=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/this-knowledge-hub/"},"This Knowledge Hub")])],-1),l=e("p",null,[e("a",{href:"https://logseq.com",target:"_blank",rel:"noreferrer"},"Logseq"),t(" is an "),e("a",{href:"/garden/open-source/"},"Open Source"),t(" outlining software")],-1),d=[r,l];function c(i,g,p,u,_,f){return s(),n("div",null,d)}const q=o(a,[["render",c]]);export{m as __pageData,q as default};

View file

@ -1 +1 @@
import{_ as o,c as n,o as s,j as e,a as t}from"./chunks/framework.CW2X4ZVO.js";const m=JSON.parse('{"title":"Logseq","description":"","frontmatter":{"public":"true","slug":"logseq","title":"Logseq"},"headers":[],"relativePath":"garden/logseq/index.md","filePath":"garden/logseq/index.md","lastUpdated":null}'),a={name:"garden/logseq/index.md"},r=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/this-knowledge-hub/"},"This Knowledge Hub")])],-1),l=e("p",null,[e("a",{href:"https://logseq.com",target:"_blank",rel:"noreferrer"},"Logseq"),t(" is an "),e("a",{href:"/garden/open-source/"},"Open Source"),t(" outlining software")],-1),d=[r,l];function c(i,g,p,u,_,f){return s(),n("div",null,d)}const q=o(a,[["render",c]]);export{m as __pageData,q as default}; import{_ as o,c as n,o as s,j as e,a as t}from"./chunks/framework.Cq0zXouN.js";const m=JSON.parse('{"title":"Logseq","description":"","frontmatter":{"public":"true","slug":"logseq","title":"Logseq"},"headers":[],"relativePath":"garden/logseq/index.md","filePath":"garden/logseq/index.md","lastUpdated":null}'),a={name:"garden/logseq/index.md"},r=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/this-knowledge-hub/"},"This Knowledge Hub")])],-1),l=e("p",null,[e("a",{href:"https://logseq.com",target:"_blank",rel:"noreferrer"},"Logseq"),t(" is an "),e("a",{href:"/garden/open-source/"},"Open Source"),t(" outlining software")],-1),d=[r,l];function c(i,g,p,u,_,f){return s(),n("div",null,d)}const q=o(a,[["render",c]]);export{m as __pageData,q as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as t,a1 as r}from"./chunks/framework.CW2X4ZVO.js";const x=JSON.parse('{"title":"Matrix","description":"","frontmatter":{"public":"true","slug":"matrix","title":"Matrix"},"headers":[],"relativePath":"garden/matrix/index.md","filePath":"garden/matrix/index.md","lastUpdated":null}'),n={name:"garden/matrix/index.md"},o=r('<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>',2),i=[o];function d(s,c,_,l,p,m){return t(),a("div",null,i)}const g=e(n,[["render",d]]);export{x as __pageData,g as default}; import{_ as e,c as a,o as t,a7 as r}from"./chunks/framework.Cq0zXouN.js";const x=JSON.parse('{"title":"Matrix","description":"","frontmatter":{"public":"true","slug":"matrix","title":"Matrix"},"headers":[],"relativePath":"garden/matrix/index.md","filePath":"garden/matrix/index.md","lastUpdated":null}'),n={name:"garden/matrix/index.md"},o=r('<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>',2),i=[o];function d(s,c,_,l,p,m){return t(),a("div",null,i)}const g=e(n,[["render",d]]);export{x as __pageData,g as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as t,a1 as r}from"./chunks/framework.CW2X4ZVO.js";const x=JSON.parse('{"title":"Matrix","description":"","frontmatter":{"public":"true","slug":"matrix","title":"Matrix"},"headers":[],"relativePath":"garden/matrix/index.md","filePath":"garden/matrix/index.md","lastUpdated":null}'),n={name:"garden/matrix/index.md"},o=r("",2),i=[o];function d(s,c,_,l,p,m){return t(),a("div",null,i)}const g=e(n,[["render",d]]);export{x as __pageData,g as default}; import{_ as e,c as a,o as t,a7 as r}from"./chunks/framework.Cq0zXouN.js";const x=JSON.parse('{"title":"Matrix","description":"","frontmatter":{"public":"true","slug":"matrix","title":"Matrix"},"headers":[],"relativePath":"garden/matrix/index.md","filePath":"garden/matrix/index.md","lastUpdated":null}'),n={name:"garden/matrix/index.md"},o=r("",2),i=[o];function d(s,c,_,l,p,m){return t(),a("div",null,i)}const g=e(n,[["render",d]]);export{x as __pageData,g as default};

View file

@ -1 +1 @@
import{_ as n,c as a,o as r,j as e,a as t}from"./chunks/framework.CW2X4ZVO.js";const g=JSON.parse('{"title":"Mbin","description":"","frontmatter":{"public":"true","slug":"mbin","title":"Mbin"},"headers":[],"relativePath":"garden/mbin/index.md","filePath":"garden/mbin/index.md","lastUpdated":null}'),s={name:"garden/mbin/index.md"},o=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/incremental-social/"},"Incremental Social")])],-1),i=e("p",null,[e("a",{href:"https://github.com/MbinOrg/mbin",target:"_blank",rel:"noreferrer"},"Mbin"),t(" is an "),e("a",{href:"/garden/open-source/"},"Open Source"),t(),e("a",{href:"/garden/fediverse/"},"Fediverse"),t(" software")],-1),d=e("p",null,"Can show both twitter-style posts and reddit-style threads",-1),l=[o,i,d];function c(p,_,h,m,u,f){return r(),a("div",null,l)}const x=n(s,[["render",c]]);export{g as __pageData,x as default}; import{_ as n,c as a,o as r,j as e,a as t}from"./chunks/framework.Cq0zXouN.js";const g=JSON.parse('{"title":"Mbin","description":"","frontmatter":{"public":"true","slug":"mbin","title":"Mbin"},"headers":[],"relativePath":"garden/mbin/index.md","filePath":"garden/mbin/index.md","lastUpdated":null}'),s={name:"garden/mbin/index.md"},o=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/incremental-social/"},"Incremental Social")])],-1),i=e("p",null,[e("a",{href:"https://github.com/MbinOrg/mbin",target:"_blank",rel:"noreferrer"},"Mbin"),t(" is an "),e("a",{href:"/garden/open-source/"},"Open Source"),t(),e("a",{href:"/garden/fediverse/"},"Fediverse"),t(" software")],-1),d=e("p",null,"Can show both twitter-style posts and reddit-style threads",-1),l=[o,i,d];function c(p,_,h,m,u,f){return r(),a("div",null,l)}const x=n(s,[["render",c]]);export{g as __pageData,x as default};

View file

@ -1 +1 @@
import{_ as n,c as a,o as r,j as e,a as t}from"./chunks/framework.CW2X4ZVO.js";const g=JSON.parse('{"title":"Mbin","description":"","frontmatter":{"public":"true","slug":"mbin","title":"Mbin"},"headers":[],"relativePath":"garden/mbin/index.md","filePath":"garden/mbin/index.md","lastUpdated":null}'),s={name:"garden/mbin/index.md"},o=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/incremental-social/"},"Incremental Social")])],-1),i=e("p",null,[e("a",{href:"https://github.com/MbinOrg/mbin",target:"_blank",rel:"noreferrer"},"Mbin"),t(" is an "),e("a",{href:"/garden/open-source/"},"Open Source"),t(),e("a",{href:"/garden/fediverse/"},"Fediverse"),t(" software")],-1),d=e("p",null,"Can show both twitter-style posts and reddit-style threads",-1),l=[o,i,d];function c(p,_,h,m,u,f){return r(),a("div",null,l)}const x=n(s,[["render",c]]);export{g as __pageData,x as default}; import{_ as n,c as a,o as r,j as e,a as t}from"./chunks/framework.Cq0zXouN.js";const g=JSON.parse('{"title":"Mbin","description":"","frontmatter":{"public":"true","slug":"mbin","title":"Mbin"},"headers":[],"relativePath":"garden/mbin/index.md","filePath":"garden/mbin/index.md","lastUpdated":null}'),s={name:"garden/mbin/index.md"},o=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/incremental-social/"},"Incremental Social")])],-1),i=e("p",null,[e("a",{href:"https://github.com/MbinOrg/mbin",target:"_blank",rel:"noreferrer"},"Mbin"),t(" is an "),e("a",{href:"/garden/open-source/"},"Open Source"),t(),e("a",{href:"/garden/fediverse/"},"Fediverse"),t(" software")],-1),d=e("p",null,"Can show both twitter-style posts and reddit-style threads",-1),l=[o,i,d];function c(p,_,h,m,u,f){return r(),a("div",null,l)}const x=n(s,[["render",c]]);export{g as __pageData,x as default};

View file

@ -1 +1 @@
import{_ as a,c as r,o as s,j as e,a as t}from"./chunks/framework.CW2X4ZVO.js";const u=JSON.parse('{"title":"My Personal Website","description":"","frontmatter":{"public":"true","slug":"my-personal-website","title":"My Personal Website"},"headers":[],"relativePath":"garden/my-personal-website/index.md","filePath":"garden/my-personal-website/index.md","lastUpdated":null}'),n={name:"garden/my-personal-website/index.md"},l=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/the-small-web/"},"The Small Web")])],-1),o=e("p",null,[t("A "),e("a",{href:"/garden/the-small-web/"},"Personal Websites"),t(" for me, available at "),e("a",{href:"https://thepaperpilot.org",target:"_blank",rel:"noreferrer"},"https://thepaperpilot.org")],-1),i=[l,o];function d(p,c,_,h,m,b){return s(),r("div",null,i)}const g=a(n,[["render",d]]);export{u as __pageData,g as default}; import{_ as a,c as r,o as s,j as e,a as t}from"./chunks/framework.Cq0zXouN.js";const u=JSON.parse('{"title":"My Personal Website","description":"","frontmatter":{"public":"true","slug":"my-personal-website","title":"My Personal Website"},"headers":[],"relativePath":"garden/my-personal-website/index.md","filePath":"garden/my-personal-website/index.md","lastUpdated":null}'),n={name:"garden/my-personal-website/index.md"},l=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/the-small-web/"},"The Small Web")])],-1),o=e("p",null,[t("A "),e("a",{href:"/garden/the-small-web/"},"Personal Websites"),t(" for me, available at "),e("a",{href:"https://thepaperpilot.org",target:"_blank",rel:"noreferrer"},"https://thepaperpilot.org")],-1),i=[l,o];function d(p,c,_,h,m,b){return s(),r("div",null,i)}const g=a(n,[["render",d]]);export{u as __pageData,g as default};

View file

@ -1 +1 @@
import{_ as a,c as r,o as s,j as e,a as t}from"./chunks/framework.CW2X4ZVO.js";const u=JSON.parse('{"title":"My Personal Website","description":"","frontmatter":{"public":"true","slug":"my-personal-website","title":"My Personal Website"},"headers":[],"relativePath":"garden/my-personal-website/index.md","filePath":"garden/my-personal-website/index.md","lastUpdated":null}'),n={name:"garden/my-personal-website/index.md"},l=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/the-small-web/"},"The Small Web")])],-1),o=e("p",null,[t("A "),e("a",{href:"/garden/the-small-web/"},"Personal Websites"),t(" for me, available at "),e("a",{href:"https://thepaperpilot.org",target:"_blank",rel:"noreferrer"},"https://thepaperpilot.org")],-1),i=[l,o];function d(p,c,_,h,m,b){return s(),r("div",null,i)}const g=a(n,[["render",d]]);export{u as __pageData,g as default}; import{_ as a,c as r,o as s,j as e,a as t}from"./chunks/framework.Cq0zXouN.js";const u=JSON.parse('{"title":"My Personal Website","description":"","frontmatter":{"public":"true","slug":"my-personal-website","title":"My Personal Website"},"headers":[],"relativePath":"garden/my-personal-website/index.md","filePath":"garden/my-personal-website/index.md","lastUpdated":null}'),n={name:"garden/my-personal-website/index.md"},l=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/the-small-web/"},"The Small Web")])],-1),o=e("p",null,[t("A "),e("a",{href:"/garden/the-small-web/"},"Personal Websites"),t(" for me, available at "),e("a",{href:"https://thepaperpilot.org",target:"_blank",rel:"noreferrer"},"https://thepaperpilot.org")],-1),i=[l,o];function d(p,c,_,h,m,b){return s(),r("div",null,i)}const g=a(n,[["render",d]]);export{u as __pageData,g as default};

View file

@ -1 +1 @@
import{_ as r,c as a,o as n,j as e,a as t}from"./chunks/framework.CW2X4ZVO.js";const x=JSON.parse('{"title":"Nostr","description":"","frontmatter":{"public":"true","slug":"nostr","tags":["Decentralized"],"title":"Nostr"},"headers":[],"relativePath":"garden/nostr/index.md","filePath":"garden/nostr/index.md","lastUpdated":null}'),o={name:"garden/nostr/index.md"},s=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/fediverse/"},"Fediverse")])],-1),d=e("blockquote",null,[e("p",null,[t("Tags: "),e("a",{href:"/garden/decentralized/"},"Decentralized")])],-1),l=e("p",null,[e("a",{href:"https://nostr.com",target:"_blank",rel:"noreferrer"},"Nostr"),t(" is a protocol for "),e("a",{href:"/garden/fediverse/"},"Federated Social Media")],-1),c=[s,d,l];function i(_,p,f,u,h,g){return n(),a("div",null,c)}const N=r(o,[["render",i]]);export{x as __pageData,N as default}; import{_ as r,c as a,o as n,j as e,a as t}from"./chunks/framework.Cq0zXouN.js";const x=JSON.parse('{"title":"Nostr","description":"","frontmatter":{"public":"true","slug":"nostr","tags":["Decentralized"],"title":"Nostr"},"headers":[],"relativePath":"garden/nostr/index.md","filePath":"garden/nostr/index.md","lastUpdated":null}'),o={name:"garden/nostr/index.md"},s=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/fediverse/"},"Fediverse")])],-1),d=e("blockquote",null,[e("p",null,[t("Tags: "),e("a",{href:"/garden/decentralized/"},"Decentralized")])],-1),l=e("p",null,[e("a",{href:"https://nostr.com",target:"_blank",rel:"noreferrer"},"Nostr"),t(" is a protocol for "),e("a",{href:"/garden/fediverse/"},"Federated Social Media")],-1),c=[s,d,l];function i(_,p,f,u,h,g){return n(),a("div",null,c)}const N=r(o,[["render",i]]);export{x as __pageData,N as default};

View file

@ -1 +1 @@
import{_ as r,c as a,o as n,j as e,a as t}from"./chunks/framework.CW2X4ZVO.js";const x=JSON.parse('{"title":"Nostr","description":"","frontmatter":{"public":"true","slug":"nostr","tags":["Decentralized"],"title":"Nostr"},"headers":[],"relativePath":"garden/nostr/index.md","filePath":"garden/nostr/index.md","lastUpdated":null}'),o={name:"garden/nostr/index.md"},s=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/fediverse/"},"Fediverse")])],-1),d=e("blockquote",null,[e("p",null,[t("Tags: "),e("a",{href:"/garden/decentralized/"},"Decentralized")])],-1),l=e("p",null,[e("a",{href:"https://nostr.com",target:"_blank",rel:"noreferrer"},"Nostr"),t(" is a protocol for "),e("a",{href:"/garden/fediverse/"},"Federated Social Media")],-1),c=[s,d,l];function i(_,p,f,u,h,g){return n(),a("div",null,c)}const N=r(o,[["render",i]]);export{x as __pageData,N as default}; import{_ as r,c as a,o as n,j as e,a as t}from"./chunks/framework.Cq0zXouN.js";const x=JSON.parse('{"title":"Nostr","description":"","frontmatter":{"public":"true","slug":"nostr","tags":["Decentralized"],"title":"Nostr"},"headers":[],"relativePath":"garden/nostr/index.md","filePath":"garden/nostr/index.md","lastUpdated":null}'),o={name:"garden/nostr/index.md"},s=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/fediverse/"},"Fediverse")])],-1),d=e("blockquote",null,[e("p",null,[t("Tags: "),e("a",{href:"/garden/decentralized/"},"Decentralized")])],-1),l=e("p",null,[e("a",{href:"https://nostr.com",target:"_blank",rel:"noreferrer"},"Nostr"),t(" is a protocol for "),e("a",{href:"/garden/fediverse/"},"Federated Social Media")],-1),c=[s,d,l];function i(_,p,f,u,h,g){return n(),a("div",null,c)}const N=r(o,[["render",i]]);export{x as __pageData,N as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as r,a1 as n}from"./chunks/framework.CW2X4ZVO.js";const g=JSON.parse('{"title":"Open Source","description":"","frontmatter":{"public":"true","slug":"open-source","title":"Open Source"},"headers":[],"relativePath":"garden/open-source/index.md","filePath":"garden/open-source/index.md","lastUpdated":null}'),o={name:"garden/open-source/index.md"},t=n('<blockquote><p>Referenced by: <a href="/garden/cinny/">Cinny</a>, <a href="/garden/commune/">Commune</a>, <a href="/garden/forgejo/">Forgejo</a>, <a href="/garden/logseq/">Logseq</a>, <a href="/garden/mbin/">Mbin</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>',3),s=[t];function c(d,i,p,_,l,u){return r(),a("div",null,s)}const f=e(o,[["render",c]]);export{g as __pageData,f as default}; import{_ as e,c as a,o as r,a7 as n}from"./chunks/framework.Cq0zXouN.js";const g=JSON.parse('{"title":"Open Source","description":"","frontmatter":{"public":"true","slug":"open-source","title":"Open Source"},"headers":[],"relativePath":"garden/open-source/index.md","filePath":"garden/open-source/index.md","lastUpdated":null}'),o={name:"garden/open-source/index.md"},t=n('<blockquote><p>Referenced by: <a href="/garden/cinny/">Cinny</a>, <a href="/garden/commune/">Commune</a>, <a href="/garden/forgejo/">Forgejo</a>, <a href="/garden/logseq/">Logseq</a>, <a href="/garden/mbin/">Mbin</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>',3),s=[t];function c(d,i,p,_,l,u){return r(),a("div",null,s)}const f=e(o,[["render",c]]);export{g as __pageData,f as default};

View file

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

View file

@ -1 +1 @@
import{_ as e,c as a,o as i,a1 as t}from"./chunks/framework.CW2X4ZVO.js";const m=JSON.parse('{"title":"Social Media","description":"","frontmatter":{"alias":"Social Web","public":"true","slug":"social-media","title":"Social Media"},"headers":[],"relativePath":"garden/social-media/index.md","filePath":"garden/social-media/index.md","lastUpdated":null}'),l={name:"garden/social-media/index.md"},o=t('<blockquote><p>Referenced by: <a href="/garden/commune/">Commune</a>, <a href="/garden/fedi-v2/">Fedi v2</a>, <a href="/garden/fediverse/">Fediverse</a></p></blockquote><p>Traditional social media</p><ul><li>Not <a href="/garden/decentralized/">Decentralized</a><ul><li>Can&#39;t choose your own rules, sorting methods, data queries, etc.</li></ul></li><li>Overrun by scams and ads and influencers</li></ul><p><a href="/garden/fediverse/">Federated Social Media</a></p><ul><li>Partially <a href="/garden/decentralized/">Decentralized</a><ul><li>Self hosting is too hard for everyone to do</li><li>Still subject to instance&#39;s moderation, limitations, etc.</li></ul></li><li>Users need to pick an instance, associating their identity with one specific group <ul><li>People belong to many groups</li><li>The person is permanently associated with that one group</li><li>You have to pick before getting a &quot;trial period&quot; to ensure you actually like that group/instance</li></ul></li></ul><p>My take on an ideal social media <a href="/garden/fedi-v2/">Fedi v2</a></p>',6),n=[o];function r(d,s,c,u,p,_){return i(),a("div",null,n)}const h=e(l,[["render",r]]);export{m as __pageData,h as default}; import{_ as e,c as a,o as i,a7 as t}from"./chunks/framework.Cq0zXouN.js";const m=JSON.parse('{"title":"Social Media","description":"","frontmatter":{"alias":"Social Web","public":"true","slug":"social-media","title":"Social Media"},"headers":[],"relativePath":"garden/social-media/index.md","filePath":"garden/social-media/index.md","lastUpdated":null}'),l={name:"garden/social-media/index.md"},o=t('<blockquote><p>Referenced by: <a href="/garden/commune/">Commune</a>, <a href="/garden/fedi-v2/">Fedi v2</a>, <a href="/garden/fediverse/">Fediverse</a></p></blockquote><p>Traditional social media</p><ul><li>Not <a href="/garden/decentralized/">Decentralized</a><ul><li>Can&#39;t choose your own rules, sorting methods, data queries, etc.</li></ul></li><li>Overrun by scams and ads and influencers</li></ul><p><a href="/garden/fediverse/">Federated Social Media</a></p><ul><li>Partially <a href="/garden/decentralized/">Decentralized</a><ul><li>Self hosting is too hard for everyone to do</li><li>Still subject to instance&#39;s moderation, limitations, etc.</li></ul></li><li>Users need to pick an instance, associating their identity with one specific group <ul><li>People belong to many groups</li><li>The person is permanently associated with that one group</li><li>You have to pick before getting a &quot;trial period&quot; to ensure you actually like that group/instance</li></ul></li></ul><p>My take on an ideal social media <a href="/garden/fedi-v2/">Fedi v2</a></p>',6),n=[o];function r(d,s,c,u,p,_){return i(),a("div",null,n)}const h=e(l,[["render",r]]);export{m as __pageData,h as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as i,a1 as t}from"./chunks/framework.CW2X4ZVO.js";const m=JSON.parse('{"title":"Social Media","description":"","frontmatter":{"alias":"Social Web","public":"true","slug":"social-media","title":"Social Media"},"headers":[],"relativePath":"garden/social-media/index.md","filePath":"garden/social-media/index.md","lastUpdated":null}'),l={name:"garden/social-media/index.md"},o=t("",6),n=[o];function r(d,s,c,u,p,_){return i(),a("div",null,n)}const h=e(l,[["render",r]]);export{m as __pageData,h as default}; import{_ as e,c as a,o as i,a7 as t}from"./chunks/framework.Cq0zXouN.js";const m=JSON.parse('{"title":"Social Media","description":"","frontmatter":{"alias":"Social Web","public":"true","slug":"social-media","title":"Social Media"},"headers":[],"relativePath":"garden/social-media/index.md","filePath":"garden/social-media/index.md","lastUpdated":null}'),l={name:"garden/social-media/index.md"},o=t("",6),n=[o];function r(d,s,c,u,p,_){return i(),a("div",null,n)}const h=e(l,[["render",r]]);export{m as __pageData,h as default};

View file

@ -1 +1 @@
import{_ as t,c as n,o as r,j as e,a}from"./chunks/framework.CW2X4ZVO.js";const g=JSON.parse('{"title":"Synapse","description":"","frontmatter":{"public":"true","slug":"synapse","title":"Synapse"},"headers":[],"relativePath":"garden/synapse/index.md","filePath":"garden/synapse/index.md","lastUpdated":null}'),s={name:"garden/synapse/index.md"},o=e("blockquote",null,[e("p",null,[a("Referenced by: "),e("a",{href:"/garden/incremental-social/"},"Incremental Social")])],-1),c=e("p",null,[e("a",{href:"https://github.com/element-hq/synapse",target:"_blank",rel:"noreferrer"},"Synapse"),a(" is an "),e("a",{href:"/garden/open-source/"},"Open Source"),a(" server software for the "),e("a",{href:"/garden/matrix/"},"Matrix"),a(" protocol")],-1),l=[o,c];function d(p,i,_,f,u,h){return r(),n("div",null,l)}const x=t(s,[["render",d]]);export{g as __pageData,x as default}; import{_ as t,c as n,o as r,j as e,a}from"./chunks/framework.Cq0zXouN.js";const g=JSON.parse('{"title":"Synapse","description":"","frontmatter":{"public":"true","slug":"synapse","title":"Synapse"},"headers":[],"relativePath":"garden/synapse/index.md","filePath":"garden/synapse/index.md","lastUpdated":null}'),s={name:"garden/synapse/index.md"},o=e("blockquote",null,[e("p",null,[a("Referenced by: "),e("a",{href:"/garden/incremental-social/"},"Incremental Social")])],-1),c=e("p",null,[e("a",{href:"https://github.com/element-hq/synapse",target:"_blank",rel:"noreferrer"},"Synapse"),a(" is an "),e("a",{href:"/garden/open-source/"},"Open Source"),a(" server software for the "),e("a",{href:"/garden/matrix/"},"Matrix"),a(" protocol")],-1),l=[o,c];function d(p,i,_,f,u,h){return r(),n("div",null,l)}const x=t(s,[["render",d]]);export{g as __pageData,x as default};

View file

@ -1 +1 @@
import{_ as t,c as n,o as r,j as e,a}from"./chunks/framework.CW2X4ZVO.js";const g=JSON.parse('{"title":"Synapse","description":"","frontmatter":{"public":"true","slug":"synapse","title":"Synapse"},"headers":[],"relativePath":"garden/synapse/index.md","filePath":"garden/synapse/index.md","lastUpdated":null}'),s={name:"garden/synapse/index.md"},o=e("blockquote",null,[e("p",null,[a("Referenced by: "),e("a",{href:"/garden/incremental-social/"},"Incremental Social")])],-1),c=e("p",null,[e("a",{href:"https://github.com/element-hq/synapse",target:"_blank",rel:"noreferrer"},"Synapse"),a(" is an "),e("a",{href:"/garden/open-source/"},"Open Source"),a(" server software for the "),e("a",{href:"/garden/matrix/"},"Matrix"),a(" protocol")],-1),l=[o,c];function d(p,i,_,f,u,h){return r(),n("div",null,l)}const x=t(s,[["render",d]]);export{g as __pageData,x as default}; import{_ as t,c as n,o as r,j as e,a}from"./chunks/framework.Cq0zXouN.js";const g=JSON.parse('{"title":"Synapse","description":"","frontmatter":{"public":"true","slug":"synapse","title":"Synapse"},"headers":[],"relativePath":"garden/synapse/index.md","filePath":"garden/synapse/index.md","lastUpdated":null}'),s={name:"garden/synapse/index.md"},o=e("blockquote",null,[e("p",null,[a("Referenced by: "),e("a",{href:"/garden/incremental-social/"},"Incremental Social")])],-1),c=e("p",null,[e("a",{href:"https://github.com/element-hq/synapse",target:"_blank",rel:"noreferrer"},"Synapse"),a(" is an "),e("a",{href:"/garden/open-source/"},"Open Source"),a(" server software for the "),e("a",{href:"/garden/matrix/"},"Matrix"),a(" protocol")],-1),l=[o,c];function d(p,i,_,f,u,h){return r(),n("div",null,l)}const x=t(s,[["render",d]]);export{g as __pageData,x as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a1 as r}from"./chunks/framework.CW2X4ZVO.js";const f=JSON.parse('{"title":"The Cozy Web","description":"","frontmatter":{"public":"true","slug":"the-cozy-web","title":"The Cozy Web"},"headers":[],"relativePath":"garden/the-cozy-web/index.md","filePath":"garden/the-cozy-web/index.md","lastUpdated":null}'),o={name:"garden/the-cozy-web/index.md"},n=r('<blockquote><p>Referenced by: <a href="/garden/digital-gardens/">Digital Gardens</a>, <a href="/garden/the-small-web/">The Small Web</a></p></blockquote><p>The Cozy Web is an extension of the dark forest theory of the Internet</p><p>It refers to the part of the web that is not web indexable</p><p>This part of the web is known for not typically having ads or marketers</p><p>Popularized by <a href="https://maggieappleton.com/cozy-web" target="_blank" rel="noreferrer">this article</a> written by Maggie Appleton, who has also written a lot about <a href="/garden/digital-gardens/">Digital Gardens</a></p>',5),i=[n];function s(d,l,h,p,c,_){return a(),t("div",null,i)}const g=e(o,[["render",s]]);export{f as __pageData,g as default}; import{_ as e,c as t,o as a,a7 as r}from"./chunks/framework.Cq0zXouN.js";const f=JSON.parse('{"title":"The Cozy Web","description":"","frontmatter":{"public":"true","slug":"the-cozy-web","title":"The Cozy Web"},"headers":[],"relativePath":"garden/the-cozy-web/index.md","filePath":"garden/the-cozy-web/index.md","lastUpdated":null}'),o={name:"garden/the-cozy-web/index.md"},n=r('<blockquote><p>Referenced by: <a href="/garden/digital-gardens/">Digital Gardens</a>, <a href="/garden/the-small-web/">The Small Web</a></p></blockquote><p>The Cozy Web is an extension of the dark forest theory of the Internet</p><p>It refers to the part of the web that is not web indexable</p><p>This part of the web is known for not typically having ads or marketers</p><p>Popularized by <a href="https://maggieappleton.com/cozy-web" target="_blank" rel="noreferrer">this article</a> written by Maggie Appleton, who has also written a lot about <a href="/garden/digital-gardens/">Digital Gardens</a></p>',5),i=[n];function s(d,l,h,p,c,_){return a(),t("div",null,i)}const g=e(o,[["render",s]]);export{f as __pageData,g as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a1 as r}from"./chunks/framework.CW2X4ZVO.js";const f=JSON.parse('{"title":"The Cozy Web","description":"","frontmatter":{"public":"true","slug":"the-cozy-web","title":"The Cozy Web"},"headers":[],"relativePath":"garden/the-cozy-web/index.md","filePath":"garden/the-cozy-web/index.md","lastUpdated":null}'),o={name:"garden/the-cozy-web/index.md"},n=r("",5),i=[n];function s(d,l,h,p,c,_){return a(),t("div",null,i)}const g=e(o,[["render",s]]);export{f as __pageData,g as default}; import{_ as e,c as t,o as a,a7 as r}from"./chunks/framework.Cq0zXouN.js";const f=JSON.parse('{"title":"The Cozy Web","description":"","frontmatter":{"public":"true","slug":"the-cozy-web","title":"The Cozy Web"},"headers":[],"relativePath":"garden/the-cozy-web/index.md","filePath":"garden/the-cozy-web/index.md","lastUpdated":null}'),o={name:"garden/the-cozy-web/index.md"},n=r("",5),i=[n];function s(d,l,h,p,c,_){return a(),t("div",null,i)}const g=e(o,[["render",s]]);export{f as __pageData,g as default};

View file

@ -1 +1 @@
import{_ as t,c as r,o as l,j as e,a,a1 as i}from"./chunks/framework.CW2X4ZVO.js";const y=JSON.parse('{"title":"The Small Web","description":"","frontmatter":{"alias":"The IndieWeb, Personal Web, Personal Websites","public":"true","slug":"the-small-web","title":"The Small Web"},"headers":[],"relativePath":"garden/the-small-web/index.md","filePath":"garden/the-small-web/index.md","lastUpdated":null}'),s={name:"garden/the-small-web/index.md"},o=e("blockquote",null,[e("p",null,[a("Referenced by: "),e("a",{href:"/garden/this-knowledge-hub/"},"This Knowledge Hub")])],-1),n=e("p",null,"Small personal websites created by individuals",-1),h=e("ul",null,[e("li",null,"A callback to how the web was before social media, which homogenized content"),e("li",null,[a("These pages are diverse and typically won't have ads or marketers "),e("ul",null,[e("li",null,[a("Comparable to "),e("a",{href:"/garden/the-cozy-web/"},"The Cozy Web"),a(" in that way")])])]),e("li",null,[e("iframe",{width:"560",height:"315",src:"https://www.youtube.com/embed/00qwzmMrtok",title:"",frameBorder:"0",allowFullScreen:""})])],-1),c=i("",11),d=[o,n,h,c];function u(b,p,g,f,m,w){return l(),r("div",null,d)}const k=t(s,[["render",u]]);export{y as __pageData,k as default}; import{_ as t,c as r,o as l,j as e,a,a7 as i}from"./chunks/framework.Cq0zXouN.js";const y=JSON.parse('{"title":"The Small Web","description":"","frontmatter":{"alias":"The IndieWeb, Personal Web, Personal Websites","public":"true","slug":"the-small-web","title":"The Small Web"},"headers":[],"relativePath":"garden/the-small-web/index.md","filePath":"garden/the-small-web/index.md","lastUpdated":null}'),s={name:"garden/the-small-web/index.md"},o=e("blockquote",null,[e("p",null,[a("Referenced by: "),e("a",{href:"/garden/this-knowledge-hub/"},"This Knowledge Hub")])],-1),n=e("p",null,"Small personal websites created by individuals",-1),h=e("ul",null,[e("li",null,"A callback to how the web was before social media, which homogenized content"),e("li",null,[a("These pages are diverse and typically won't have ads or marketers "),e("ul",null,[e("li",null,[a("Comparable to "),e("a",{href:"/garden/the-cozy-web/"},"The Cozy Web"),a(" in that way")])])]),e("li",null,[e("iframe",{width:"560",height:"315",src:"https://www.youtube.com/embed/00qwzmMrtok",title:"",frameBorder:"0",allowFullScreen:""})])],-1),c=i("",11),d=[o,n,h,c];function u(b,p,g,f,m,w){return l(),r("div",null,d)}const k=t(s,[["render",u]]);export{y as __pageData,k as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a1 as i}from"./chunks/framework.CW2X4ZVO.js";const _=JSON.parse('{"title":"This Knowledge Hub","description":"","frontmatter":{"public":"true","slug":"this-knowledge-hub","title":"This Knowledge Hub"},"headers":[],"relativePath":"garden/this-knowledge-hub/index.md","filePath":"garden/this-knowledge-hub/index.md","lastUpdated":null}'),s={name:"garden/this-knowledge-hub/index.md"},n=i('<blockquote><p>Referenced by: <a href="/garden/digital-gardens/">Digital Gardens</a></p></blockquote><p>This is my knowledge hub!</p><ul><li>It&#39;s a <a href="/garden/digital-gardens/">Digital Garden</a> collecting my thoughts in varying levels of completeness on basically anything I have interest in</li></ul><p>This is not Wikipedia. My thoughts are biased and argumentative, but to the best of my ability based on fact and expertise</p><p>I&#39;m writing on <em>something</em> essentially every day id:: 6637b86a-3603-45ef-a21e-b33c7d96c529</p><ul><li>Most of my pages are private, especially the journal pages</li><li>I&#39;ll only push updates to this site every so often (not an automatic process)</li></ul><p>Written in <a href="/garden/logseq/">Logseq</a> and rendered with <a href="/garden/vitepress/">Vitepress</a></p><p>Suggested pages:</p><ul><li><a href="/garden/the-small-web/">The Small Web</a></li></ul>',9),l=[n];function o(r,d,g,h,p,c){return a(),t("div",null,l)}const m=e(s,[["render",o]]);export{_ as __pageData,m as default}; import{_ as e,c as t,o as a,a7 as i}from"./chunks/framework.Cq0zXouN.js";const _=JSON.parse('{"title":"This Knowledge Hub","description":"","frontmatter":{"public":"true","slug":"this-knowledge-hub","title":"This Knowledge Hub"},"headers":[],"relativePath":"garden/this-knowledge-hub/index.md","filePath":"garden/this-knowledge-hub/index.md","lastUpdated":null}'),s={name:"garden/this-knowledge-hub/index.md"},n=i('<blockquote><p>Referenced by: <a href="/garden/digital-gardens/">Digital Gardens</a></p></blockquote><p>This is my knowledge hub!</p><ul><li>It&#39;s a <a href="/garden/digital-gardens/">Digital Garden</a> collecting my thoughts in varying levels of completeness on basically anything I have interest in</li></ul><p>This is not Wikipedia. My thoughts are biased and argumentative, but to the best of my ability based on fact and expertise</p><p>I&#39;m writing on <em>something</em> essentially every day id:: 6637b86a-3603-45ef-a21e-b33c7d96c529</p><ul><li>Most of my pages are private, especially the journal pages</li><li>I&#39;ll only push updates to this site every so often (not an automatic process)</li></ul><p>Written in <a href="/garden/logseq/">Logseq</a> and rendered with <a href="/garden/vitepress/">Vitepress</a></p><p>Suggested pages:</p><ul><li><a href="/garden/the-small-web/">The Small Web</a></li></ul>',9),l=[n];function o(r,d,g,h,p,c){return a(),t("div",null,l)}const m=e(s,[["render",o]]);export{_ as __pageData,m as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a1 as i}from"./chunks/framework.CW2X4ZVO.js";const _=JSON.parse('{"title":"This Knowledge Hub","description":"","frontmatter":{"public":"true","slug":"this-knowledge-hub","title":"This Knowledge Hub"},"headers":[],"relativePath":"garden/this-knowledge-hub/index.md","filePath":"garden/this-knowledge-hub/index.md","lastUpdated":null}'),s={name:"garden/this-knowledge-hub/index.md"},n=i("",9),l=[n];function o(r,d,g,h,p,c){return a(),t("div",null,l)}const m=e(s,[["render",o]]);export{_ as __pageData,m as default}; import{_ as e,c as t,o as a,a7 as i}from"./chunks/framework.Cq0zXouN.js";const _=JSON.parse('{"title":"This Knowledge Hub","description":"","frontmatter":{"public":"true","slug":"this-knowledge-hub","title":"This Knowledge Hub"},"headers":[],"relativePath":"garden/this-knowledge-hub/index.md","filePath":"garden/this-knowledge-hub/index.md","lastUpdated":null}'),s={name:"garden/this-knowledge-hub/index.md"},n=i("",9),l=[n];function o(r,d,g,h,p,c){return a(),t("div",null,l)}const m=e(s,[["render",o]]);export{_ as __pageData,m as default};

View file

@ -1 +1 @@
import{_ as s,c as r,o as a,j as e,a as t}from"./chunks/framework.CW2X4ZVO.js";const m=JSON.parse('{"title":"Vitepress","description":"","frontmatter":{"public":"true","slug":"vitepress","title":"Vitepress"},"headers":[],"relativePath":"garden/vitepress/index.md","filePath":"garden/vitepress/index.md","lastUpdated":null}'),n={name:"garden/vitepress/index.md"},o=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/this-knowledge-hub/"},"This Knowledge Hub")])],-1),i=e("p",null,[e("a",{href:"https://vitepress.dev",target:"_blank",rel:"noreferrer"},"Vitepress"),t(" is an "),e("a",{href:"/garden/open-source/"},"Open Source"),t(" static site generator")],-1),d=[o,i];function c(l,p,_,u,h,f){return a(),r("div",null,d)}const v=s(n,[["render",c]]);export{m as __pageData,v as default}; import{_ as s,c as r,o as a,j as e,a as t}from"./chunks/framework.Cq0zXouN.js";const m=JSON.parse('{"title":"Vitepress","description":"","frontmatter":{"public":"true","slug":"vitepress","title":"Vitepress"},"headers":[],"relativePath":"garden/vitepress/index.md","filePath":"garden/vitepress/index.md","lastUpdated":null}'),n={name:"garden/vitepress/index.md"},o=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/this-knowledge-hub/"},"This Knowledge Hub")])],-1),i=e("p",null,[e("a",{href:"https://vitepress.dev",target:"_blank",rel:"noreferrer"},"Vitepress"),t(" is an "),e("a",{href:"/garden/open-source/"},"Open Source"),t(" static site generator")],-1),d=[o,i];function c(l,p,_,u,h,f){return a(),r("div",null,d)}const v=s(n,[["render",c]]);export{m as __pageData,v as default};

View file

@ -1 +1 @@
import{_ as s,c as r,o as a,j as e,a as t}from"./chunks/framework.CW2X4ZVO.js";const m=JSON.parse('{"title":"Vitepress","description":"","frontmatter":{"public":"true","slug":"vitepress","title":"Vitepress"},"headers":[],"relativePath":"garden/vitepress/index.md","filePath":"garden/vitepress/index.md","lastUpdated":null}'),n={name:"garden/vitepress/index.md"},o=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/this-knowledge-hub/"},"This Knowledge Hub")])],-1),i=e("p",null,[e("a",{href:"https://vitepress.dev",target:"_blank",rel:"noreferrer"},"Vitepress"),t(" is an "),e("a",{href:"/garden/open-source/"},"Open Source"),t(" static site generator")],-1),d=[o,i];function c(l,p,_,u,h,f){return a(),r("div",null,d)}const v=s(n,[["render",c]]);export{m as __pageData,v as default}; import{_ as s,c as r,o as a,j as e,a as t}from"./chunks/framework.Cq0zXouN.js";const m=JSON.parse('{"title":"Vitepress","description":"","frontmatter":{"public":"true","slug":"vitepress","title":"Vitepress"},"headers":[],"relativePath":"garden/vitepress/index.md","filePath":"garden/vitepress/index.md","lastUpdated":null}'),n={name:"garden/vitepress/index.md"},o=e("blockquote",null,[e("p",null,[t("Referenced by: "),e("a",{href:"/garden/this-knowledge-hub/"},"This Knowledge Hub")])],-1),i=e("p",null,[e("a",{href:"https://vitepress.dev",target:"_blank",rel:"noreferrer"},"Vitepress"),t(" is an "),e("a",{href:"/garden/open-source/"},"Open Source"),t(" static site generator")],-1),d=[o,i];function c(l,p,_,u,h,f){return a(),r("div",null,d)}const v=s(n,[["render",c]]);export{m as __pageData,v as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a1 as i}from"./chunks/framework.CW2X4ZVO.js";const p=JSON.parse('{"title":"Webrings","description":"","frontmatter":{"public":"true","slug":"webrings","title":"Webrings"},"headers":[],"relativePath":"garden/webrings/index.md","filePath":"garden/webrings/index.md","lastUpdated":null}'),l={name:"garden/webrings/index.md"},o=i('<blockquote><p>Referenced by: <a href="/garden/the-small-web/">The Small Web</a></p></blockquote><p>A collection of <a href="/garden/the-small-web/">Personal Websites</a> that link to each other</p><ul><li>These websites are all endorsing each other</li><li>They form a network of related sites readers might be interested in</li><li>Built on human trust rather than algorithms</li></ul><p><a href="/garden/commune/">Commune</a> has a vision for modern webrings</p><ul><li>Have communities set up matrix spaces for chatting</li><li>Multiple spaces can contain the same room</li><li>Related communities can share a room about a relevant topic <ul><li>e.g. a bunch of game development libraries shared a &quot;Game Design&quot; room</li></ul></li><li>This allows smaller communities to grow from cross-pollinating with other related communities</li><li>Could <a href="/garden/incremental-social/">Incremental Social</a> host a shared &quot;Incremental Games&quot; room? <ul><li>How to bridge one channel to multiple discord servers, since that&#39;s where most incremental games communities are</li><li>Would this be appealing to already large communities?</li><li>Would this be overwhelming to smaller communities?</li><li>Who would moderate?</li></ul></li></ul>',5),r=[o];function n(s,m,c,d,u,h){return a(),t("div",null,r)}const _=e(l,[["render",n]]);export{p as __pageData,_ as default}; import{_ as e,c as t,o as a,a7 as i}from"./chunks/framework.Cq0zXouN.js";const p=JSON.parse('{"title":"Webrings","description":"","frontmatter":{"public":"true","slug":"webrings","title":"Webrings"},"headers":[],"relativePath":"garden/webrings/index.md","filePath":"garden/webrings/index.md","lastUpdated":null}'),l={name:"garden/webrings/index.md"},o=i('<blockquote><p>Referenced by: <a href="/garden/the-small-web/">The Small Web</a></p></blockquote><p>A collection of <a href="/garden/the-small-web/">Personal Websites</a> that link to each other</p><ul><li>These websites are all endorsing each other</li><li>They form a network of related sites readers might be interested in</li><li>Built on human trust rather than algorithms</li></ul><p><a href="/garden/commune/">Commune</a> has a vision for modern webrings</p><ul><li>Have communities set up matrix spaces for chatting</li><li>Multiple spaces can contain the same room</li><li>Related communities can share a room about a relevant topic <ul><li>e.g. a bunch of game development libraries shared a &quot;Game Design&quot; room</li></ul></li><li>This allows smaller communities to grow from cross-pollinating with other related communities</li><li>Could <a href="/garden/incremental-social/">Incremental Social</a> host a shared &quot;Incremental Games&quot; room? <ul><li>How to bridge one channel to multiple discord servers, since that&#39;s where most incremental games communities are</li><li>Would this be appealing to already large communities?</li><li>Would this be overwhelming to smaller communities?</li><li>Who would moderate?</li></ul></li></ul>',5),r=[o];function n(s,m,c,d,u,h){return a(),t("div",null,r)}const _=e(l,[["render",n]]);export{p as __pageData,_ as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a1 as i}from"./chunks/framework.CW2X4ZVO.js";const p=JSON.parse('{"title":"Webrings","description":"","frontmatter":{"public":"true","slug":"webrings","title":"Webrings"},"headers":[],"relativePath":"garden/webrings/index.md","filePath":"garden/webrings/index.md","lastUpdated":null}'),l={name:"garden/webrings/index.md"},o=i("",5),r=[o];function n(s,m,c,d,u,h){return a(),t("div",null,r)}const _=e(l,[["render",n]]);export{p as __pageData,_ as default}; import{_ as e,c as t,o as a,a7 as i}from"./chunks/framework.Cq0zXouN.js";const p=JSON.parse('{"title":"Webrings","description":"","frontmatter":{"public":"true","slug":"webrings","title":"Webrings"},"headers":[],"relativePath":"garden/webrings/index.md","filePath":"garden/webrings/index.md","lastUpdated":null}'),l={name:"garden/webrings/index.md"},o=i("",5),r=[o];function n(s,m,c,d,u,h){return a(),t("div",null,r)}const _=e(l,[["render",n]]);export{p as __pageData,_ as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as r,a1 as t}from"./chunks/framework.CW2X4ZVO.js";const h=JSON.parse('{"title":"Weird","description":"","frontmatter":{"public":"true","slug":"weird","title":"Weird"},"headers":[],"relativePath":"garden/weird/index.md","filePath":"garden/weird/index.md","lastUpdated":null}'),n={name:"garden/weird/index.md"},i=t('<blockquote><p>Referenced by: <a href="/garden/commune/">Commune</a>, <a href="/garden/fedi-v2/">Fedi v2</a>, <a href="/garden/the-small-web/">The Small Web</a></p></blockquote><p><a href="https://weird.one" target="_blank" rel="noreferrer">Weird</a> is an <a href="/garden/open-source/">Open Source</a> project by the <a href="/garden/commune/">Commune</a> team currently in development</p><ul><li>Aims to make creating <a href="/garden/the-small-web/">Personal Websites</a> with <a href="/garden/federated-identity/">Federated Identity</a> available to everyone</li><li>Also plans on having paid tiers for giving people access to single user instances of various <a href="/garden/fediverse/">Fediverse</a> tools</li></ul>',3),d=[i];function o(s,l,c,_,p,f){return r(),a("div",null,d)}const u=e(n,[["render",o]]);export{h as __pageData,u as default}; import{_ as e,c as a,o as r,a7 as t}from"./chunks/framework.Cq0zXouN.js";const h=JSON.parse('{"title":"Weird","description":"","frontmatter":{"public":"true","slug":"weird","title":"Weird"},"headers":[],"relativePath":"garden/weird/index.md","filePath":"garden/weird/index.md","lastUpdated":null}'),n={name:"garden/weird/index.md"},i=t('<blockquote><p>Referenced by: <a href="/garden/commune/">Commune</a>, <a href="/garden/fedi-v2/">Fedi v2</a>, <a href="/garden/the-small-web/">The Small Web</a></p></blockquote><p><a href="https://weird.one" target="_blank" rel="noreferrer">Weird</a> is an <a href="/garden/open-source/">Open Source</a> project by the <a href="/garden/commune/">Commune</a> team currently in development</p><ul><li>Aims to make creating <a href="/garden/the-small-web/">Personal Websites</a> with <a href="/garden/federated-identity/">Federated Identity</a> available to everyone</li><li>Also plans on having paid tiers for giving people access to single user instances of various <a href="/garden/fediverse/">Fediverse</a> tools</li></ul>',3),d=[i];function o(s,l,c,_,p,f){return r(),a("div",null,d)}const u=e(n,[["render",o]]);export{h as __pageData,u as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as r,a1 as t}from"./chunks/framework.CW2X4ZVO.js";const h=JSON.parse('{"title":"Weird","description":"","frontmatter":{"public":"true","slug":"weird","title":"Weird"},"headers":[],"relativePath":"garden/weird/index.md","filePath":"garden/weird/index.md","lastUpdated":null}'),n={name:"garden/weird/index.md"},i=t("",3),d=[i];function o(s,l,c,_,p,f){return r(),a("div",null,d)}const u=e(n,[["render",o]]);export{h as __pageData,u as default}; import{_ as e,c as a,o as r,a7 as t}from"./chunks/framework.Cq0zXouN.js";const h=JSON.parse('{"title":"Weird","description":"","frontmatter":{"public":"true","slug":"weird","title":"Weird"},"headers":[],"relativePath":"garden/weird/index.md","filePath":"garden/weird/index.md","lastUpdated":null}'),n={name:"garden/weird/index.md"},i=t("",3),d=[i];function o(s,l,c,_,p,f){return r(),a("div",null,d)}const u=e(n,[["render",o]]);export{h as __pageData,u as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a1 as i}from"./chunks/framework.CW2X4ZVO.js";const p=JSON.parse('{"title":"Navigating Criticism","description":"","frontmatter":{"title":"Navigating Criticism"},"headers":[],"relativePath":"guide-to-incrementals/design/criticism/index.md","filePath":"guide-to-incrementals/design/criticism/index.md","lastUpdated":1701136819000}'),o={name:"guide-to-incrementals/design/criticism/index.md"},n=i("",11),s=[n];function r(c,l,d,u,m,h){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,a7 as i}from"./chunks/framework.Cq0zXouN.js";const p=JSON.parse('{"title":"Navigating Criticism","description":"","frontmatter":{"title":"Navigating Criticism"},"headers":[],"relativePath":"guide-to-incrementals/design/criticism/index.md","filePath":"guide-to-incrementals/design/criticism/index.md","lastUpdated":1701136819000}'),o={name:"guide-to-incrementals/design/criticism/index.md"},n=i("",11),s=[n];function r(c,l,d,u,m,h){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 n,c as t,o as a,j as e,a as i}from"./chunks/framework.CW2X4ZVO.js";const h=JSON.parse('{"title":"Introduction to Incremental Game Design","description":"","frontmatter":{"title":"Introduction to Incremental Game Design"},"headers":[],"relativePath":"guide-to-incrementals/design/introduction/index.md","filePath":"guide-to-incrementals/design/introduction/index.md","lastUpdated":1701136819000}'),o={name:"guide-to-incrementals/design/introduction/index.md"},r=e("h1",{id:"making-an-incremental-game",tabindex:"-1"},[i("Making an Incremental Game "),e("a",{class:"header-anchor",href:"#making-an-incremental-game","aria-label":'Permalink to "Making an Incremental Game"'},"")],-1),c=[r];function d(s,m,l,g,_,u){return a(),t("div",null,c)}const f=n(o,[["render",d]]);export{h as __pageData,f as default}; import{_ as n,c as t,o as a,j as e,a as i}from"./chunks/framework.Cq0zXouN.js";const h=JSON.parse('{"title":"Introduction to Incremental Game Design","description":"","frontmatter":{"title":"Introduction to Incremental Game Design"},"headers":[],"relativePath":"guide-to-incrementals/design/introduction/index.md","filePath":"guide-to-incrementals/design/introduction/index.md","lastUpdated":1701136819000}'),o={name:"guide-to-incrementals/design/introduction/index.md"},r=e("h1",{id:"making-an-incremental-game",tabindex:"-1"},[i("Making an Incremental Game "),e("a",{class:"header-anchor",href:"#making-an-incremental-game","aria-label":'Permalink to "Making an Incremental Game"'},"")],-1),c=[r];function d(s,m,l,g,_,u){return a(),t("div",null,c)}const f=n(o,[["render",d]]);export{h as __pageData,f as default};

View file

@ -1 +1 @@
import{_ as n,c as t,o as a,j as e,a as i}from"./chunks/framework.CW2X4ZVO.js";const h=JSON.parse('{"title":"Introduction to Incremental Game Design","description":"","frontmatter":{"title":"Introduction to Incremental Game Design"},"headers":[],"relativePath":"guide-to-incrementals/design/introduction/index.md","filePath":"guide-to-incrementals/design/introduction/index.md","lastUpdated":1701136819000}'),o={name:"guide-to-incrementals/design/introduction/index.md"},r=e("h1",{id:"making-an-incremental-game",tabindex:"-1"},[i("Making an Incremental Game "),e("a",{class:"header-anchor",href:"#making-an-incremental-game","aria-label":'Permalink to "Making an Incremental Game"'},"")],-1),c=[r];function d(s,m,l,g,_,u){return a(),t("div",null,c)}const f=n(o,[["render",d]]);export{h as __pageData,f as default}; import{_ as n,c as t,o as a,j as e,a as i}from"./chunks/framework.Cq0zXouN.js";const h=JSON.parse('{"title":"Introduction to Incremental Game Design","description":"","frontmatter":{"title":"Introduction to Incremental Game Design"},"headers":[],"relativePath":"guide-to-incrementals/design/introduction/index.md","filePath":"guide-to-incrementals/design/introduction/index.md","lastUpdated":1701136819000}'),o={name:"guide-to-incrementals/design/introduction/index.md"},r=e("h1",{id:"making-an-incremental-game",tabindex:"-1"},[i("Making an Incremental Game "),e("a",{class:"header-anchor",href:"#making-an-incremental-game","aria-label":'Permalink to "Making an Incremental Game"'},"")],-1),c=[r];function d(s,m,l,g,_,u){return a(),t("div",null,c)}const f=n(o,[["render",d]]);export{h as __pageData,f as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a1 as o}from"./chunks/framework.CW2X4ZVO.js";const u=JSON.parse('{"title":"Introduction","description":"","frontmatter":{"title":"Introduction"},"headers":[],"relativePath":"guide-to-incrementals/index.md","filePath":"guide-to-incrementals/index.md","lastUpdated":1701136819000}'),n={name:"guide-to-incrementals/index.md"},i=o('<h1 id="introduction" tabindex="-1">Introduction <a class="header-anchor" href="#introduction" aria-label="Permalink to &quot;Introduction&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 interactive examples, 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><h2 id="who-am-i" tabindex="-1">Who am I? <a class="header-anchor" href="#who-am-i" aria-label="Permalink to &quot;Who am I?&quot;"></a></h2><p>That&#39;s a good question! What authority do I have to be making this site? I haven&#39;t made the best incremental games, nor the most incremental games, certainly not the most popular ones either. I do have some formal education in game development, know a lot of incremental game devs, as well as other game devs, and an interest in ludology, classifying genres, etc. I&#39;ve also made <a href="https://www.thepaperpilot.org" target="_blank" rel="noreferrer">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 contact me: I&#39;m &quot;The Paper Pilot&quot; on most social media. You&#39;ll probably get a response fastest via <a href="https://discord.gg/F3xveHV" target="_blank" rel="noreferrer">my discord server</a>, or if you just want to suggest changes to the website you can click the &quot;Edit this page&quot; link present on every single page.</p>',6),r=[i];function s(l,d,c,m,h,p){return a(),t("div",null,r)}const _=e(n,[["render",s]]);export{u as __pageData,_ as default}; import{_ as e,c as t,o as a,a7 as o}from"./chunks/framework.Cq0zXouN.js";const u=JSON.parse('{"title":"Introduction","description":"","frontmatter":{"title":"Introduction"},"headers":[],"relativePath":"guide-to-incrementals/index.md","filePath":"guide-to-incrementals/index.md","lastUpdated":1701136819000}'),n={name:"guide-to-incrementals/index.md"},i=o('<h1 id="introduction" tabindex="-1">Introduction <a class="header-anchor" href="#introduction" aria-label="Permalink to &quot;Introduction&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 interactive examples, 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><h2 id="who-am-i" tabindex="-1">Who am I? <a class="header-anchor" href="#who-am-i" aria-label="Permalink to &quot;Who am I?&quot;"></a></h2><p>That&#39;s a good question! What authority do I have to be making this site? I haven&#39;t made the best incremental games, nor the most incremental games, certainly not the most popular ones either. I do have some formal education in game development, know a lot of incremental game devs, as well as other game devs, and an interest in ludology, classifying genres, etc. I&#39;ve also made <a href="https://www.thepaperpilot.org" target="_blank" rel="noreferrer">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 contact me: I&#39;m &quot;The Paper Pilot&quot; on most social media. You&#39;ll probably get a response fastest via <a href="https://discord.gg/F3xveHV" target="_blank" rel="noreferrer">my discord server</a>, or if you just want to suggest changes to the website you can click the &quot;Edit this page&quot; link present on every single page.</p>',6),r=[i];function s(l,d,c,m,h,p){return a(),t("div",null,r)}const _=e(n,[["render",s]]);export{u as __pageData,_ as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a1 as o}from"./chunks/framework.CW2X4ZVO.js";const u=JSON.parse('{"title":"Introduction","description":"","frontmatter":{"title":"Introduction"},"headers":[],"relativePath":"guide-to-incrementals/index.md","filePath":"guide-to-incrementals/index.md","lastUpdated":1701136819000}'),n={name:"guide-to-incrementals/index.md"},i=o("",6),r=[i];function s(l,d,c,m,h,p){return a(),t("div",null,r)}const _=e(n,[["render",s]]);export{u as __pageData,_ as default}; import{_ as e,c as t,o as a,a7 as o}from"./chunks/framework.Cq0zXouN.js";const u=JSON.parse('{"title":"Introduction","description":"","frontmatter":{"title":"Introduction"},"headers":[],"relativePath":"guide-to-incrementals/index.md","filePath":"guide-to-incrementals/index.md","lastUpdated":1701136819000}'),n={name:"guide-to-incrementals/index.md"},i=o("",6),r=[i];function s(l,d,c,m,h,p){return a(),t("div",null,r)}const _=e(n,[["render",s]]);export{u as __pageData,_ as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as t,a1 as o}from"./chunks/framework.CW2X4ZVO.js";const y=JSON.parse('{"title":"Appeal to Developers","description":"","frontmatter":{"title":"Appeal to Developers"},"headers":[],"relativePath":"guide-to-incrementals/ludology/appeal-developers/index.md","filePath":"guide-to-incrementals/ludology/appeal-developers/index.md","lastUpdated":1701136819000}'),n={name:"guide-to-incrementals/ludology/appeal-developers/index.md"},i=o("",13),r=[i];function l(s,d,m,c,p,h){return t(),a("div",null,r)}const g=e(n,[["render",l]]);export{y as __pageData,g as default}; import{_ as e,c as a,o as t,a7 as o}from"./chunks/framework.Cq0zXouN.js";const y=JSON.parse('{"title":"Appeal to Developers","description":"","frontmatter":{"title":"Appeal to Developers"},"headers":[],"relativePath":"guide-to-incrementals/ludology/appeal-developers/index.md","filePath":"guide-to-incrementals/ludology/appeal-developers/index.md","lastUpdated":1701136819000}'),n={name:"guide-to-incrementals/ludology/appeal-developers/index.md"},i=o("",13),r=[i];function l(s,d,m,c,p,h){return t(),a("div",null,r)}const g=e(n,[["render",l]]);export{y as __pageData,g as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a1 as i}from"./chunks/framework.CW2X4ZVO.js";const u=JSON.parse('{"title":"Appeal to Players","description":"","frontmatter":{"title":"Appeal to Players"},"headers":[],"relativePath":"guide-to-incrementals/ludology/appeal-gamers/index.md","filePath":"guide-to-incrementals/ludology/appeal-gamers/index.md","lastUpdated":1701136819000}'),o={name:"guide-to-incrementals/ludology/appeal-gamers/index.md"},n=i("",28),s=[n];function r(l,h,m,g,d,c){return a(),t("div",null,s)}const y=e(o,[["render",r]]);export{u as __pageData,y as default}; import{_ as e,c as t,o as a,a7 as i}from"./chunks/framework.Cq0zXouN.js";const u=JSON.parse('{"title":"Appeal to Players","description":"","frontmatter":{"title":"Appeal to Players"},"headers":[],"relativePath":"guide-to-incrementals/ludology/appeal-gamers/index.md","filePath":"guide-to-incrementals/ludology/appeal-gamers/index.md","lastUpdated":1701136819000}'),o={name:"guide-to-incrementals/ludology/appeal-gamers/index.md"},n=i("",28),s=[n];function r(l,h,m,g,d,c){return a(),t("div",null,s)}const y=e(o,[["render",r]]);export{u as __pageData,y as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a1 as o}from"./chunks/framework.CW2X4ZVO.js";const p=JSON.parse('{"title":"What is Content?","description":"","frontmatter":{"title":"What is Content?"},"headers":[],"relativePath":"guide-to-incrementals/ludology/content/index.md","filePath":"guide-to-incrementals/ludology/content/index.md","lastUpdated":1701136819000}'),n={name:"guide-to-incrementals/ludology/content/index.md"},i=o("",23),s=[i];function r(h,l,c,u,m,d){return a(),t("div",null,s)}const f=e(n,[["render",r]]);export{p as __pageData,f as default}; import{_ as e,c as t,o as a,a7 as o}from"./chunks/framework.Cq0zXouN.js";const p=JSON.parse('{"title":"What is Content?","description":"","frontmatter":{"title":"What is Content?"},"headers":[],"relativePath":"guide-to-incrementals/ludology/content/index.md","filePath":"guide-to-incrementals/ludology/content/index.md","lastUpdated":1701136819000}'),n={name:"guide-to-incrementals/ludology/content/index.md"},i=o("",23),s=[i];function r(h,l,c,u,m,d){return a(),t("div",null,s)}const f=e(n,[["render",r]]);export{p as __pageData,f as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a1 as r}from"./chunks/framework.CW2X4ZVO.js";const p=JSON.parse('{"title":"Defining the Genre","description":"","frontmatter":{"title":"Defining the Genre"},"headers":[],"relativePath":"guide-to-incrementals/ludology/definition/index.md","filePath":"guide-to-incrementals/ludology/definition/index.md","lastUpdated":1701136819000}'),n={name:"guide-to-incrementals/ludology/definition/index.md"},o=r("",61),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,a7 as r}from"./chunks/framework.Cq0zXouN.js";const p=JSON.parse('{"title":"Defining the Genre","description":"","frontmatter":{"title":"Defining the Genre"},"headers":[],"relativePath":"guide-to-incrementals/ludology/definition/index.md","filePath":"guide-to-incrementals/ludology/definition/index.md","lastUpdated":1701136819000}'),n={name:"guide-to-incrementals/ludology/definition/index.md"},o=r("",61),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 t,o as a}from"./chunks/framework.CW2X4ZVO.js";const d=JSON.parse(`{"title":"The Paper Pilot","description":"","frontmatter":{"title":"The Paper Pilot","layout":"home","hero":{"name":"The Paper Pilot","tagline":"I'm Anthony, or The Paper Pilot, and I make fun games and tools!","actions":[{"theme":"brand","text":"My Projects","link":"/projects/"},{"theme":"alt","text":"My Resume","link":"https://resume.incremental.social/thepaperpilot/thepaperpilot"}]},"features":[{"icon":"🧑‍💻","title":"Profectus","details":"A game engine that grows with you","link":"https://moddingtree.com"},{"icon":"👤","title":"Incremental Social","details":"A kind social media site for the incremental games community","link":"https://incremental.social"},{"icon":"🎮","title":"My Games","details":"Most of my games are playable on Itch","link":"https://thepaperpilot.itch.io"}]},"headers":[],"relativePath":"index.md","filePath":"index.md","lastUpdated":1717293344000}`),i={name:"index.md"};function o(n,s,l,r,c,m){return a(),t("div")}const h=e(i,[["render",o]]);export{d as __pageData,h as default}; import{_ as e,c as t,o as a}from"./chunks/framework.Cq0zXouN.js";const d=JSON.parse(`{"title":"The Paper Pilot","description":"","frontmatter":{"title":"The Paper Pilot","layout":"home","hero":{"name":"The Paper Pilot","tagline":"I'm Anthony, or The Paper Pilot, and I make fun games and tools!","actions":[{"theme":"brand","text":"My Projects","link":"/projects/"},{"theme":"alt","text":"My Resume","link":"https://resume.incremental.social/thepaperpilot/thepaperpilot"}]},"features":[{"icon":"🧑‍💻","title":"Profectus","details":"A game engine that grows with you","link":"https://moddingtree.com"},{"icon":"👤","title":"Incremental Social","details":"A kind social media site for the incremental games community","link":"https://incremental.social"},{"icon":"🎮","title":"My Games","details":"Most of my games are playable on Itch","link":"https://thepaperpilot.itch.io"}]},"headers":[],"relativePath":"index.md","filePath":"index.md","lastUpdated":1717301537000}`),i={name:"index.md"};function o(n,s,l,r,c,m){return a(),t("div")}const h=e(i,[["render",o]]);export{d as __pageData,h as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as a}from"./chunks/framework.CW2X4ZVO.js";const d=JSON.parse(`{"title":"The Paper Pilot","description":"","frontmatter":{"title":"The Paper Pilot","layout":"home","hero":{"name":"The Paper Pilot","tagline":"I'm Anthony, or The Paper Pilot, and I make fun games and tools!","actions":[{"theme":"brand","text":"My Projects","link":"/projects/"},{"theme":"alt","text":"My Resume","link":"https://resume.incremental.social/thepaperpilot/thepaperpilot"}]},"features":[{"icon":"🧑‍💻","title":"Profectus","details":"A game engine that grows with you","link":"https://moddingtree.com"},{"icon":"👤","title":"Incremental Social","details":"A kind social media site for the incremental games community","link":"https://incremental.social"},{"icon":"🎮","title":"My Games","details":"Most of my games are playable on Itch","link":"https://thepaperpilot.itch.io"}]},"headers":[],"relativePath":"index.md","filePath":"index.md","lastUpdated":1717293344000}`),i={name:"index.md"};function o(n,s,l,r,c,m){return a(),t("div")}const h=e(i,[["render",o]]);export{d as __pageData,h as default}; import{_ as e,c as t,o as a}from"./chunks/framework.Cq0zXouN.js";const d=JSON.parse(`{"title":"The Paper Pilot","description":"","frontmatter":{"title":"The Paper Pilot","layout":"home","hero":{"name":"The Paper Pilot","tagline":"I'm Anthony, or The Paper Pilot, and I make fun games and tools!","actions":[{"theme":"brand","text":"My Projects","link":"/projects/"},{"theme":"alt","text":"My Resume","link":"https://resume.incremental.social/thepaperpilot/thepaperpilot"}]},"features":[{"icon":"🧑‍💻","title":"Profectus","details":"A game engine that grows with you","link":"https://moddingtree.com"},{"icon":"👤","title":"Incremental Social","details":"A kind social media site for the incremental games community","link":"https://incremental.social"},{"icon":"🎮","title":"My Games","details":"Most of my games are playable on Itch","link":"https://thepaperpilot.itch.io"}]},"headers":[],"relativePath":"index.md","filePath":"index.md","lastUpdated":1717301537000}`),i={name:"index.md"};function o(n,s,l,r,c,m){return a(),t("div")}const h=e(i,[["render",o]]);export{d as __pageData,h as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as t,a1 as r}from"./chunks/framework.CW2X4ZVO.js";const s="/assets/screenshot.nlvH-FIX.png",o="/assets/babblemmscreenshot.Cr3XqPIH.png",g=JSON.parse('{"title":"Babble Buds","description":"","frontmatter":{"title":"Babble Buds"},"headers":[],"relativePath":"projects/babble/index.md","filePath":"projects/babble/index.md","lastUpdated":1717293344000}'),n={name:"projects/babble/index.md"},i=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><p><a href="http://babblebuds.xyz/" target="_blank" rel="noreferrer">Babble Buds Homepage</a></p><p>Source Code:</p><ul><li><a href="https://github.com/thepaperpilot/Babble-Buds" target="_blank" rel="noreferrer">Babble Buds</a></li><li><a href="https://github.com/thepaperpilot/BabbleMovieMaker" target="_blank" rel="noreferrer">Babble Movie Maker</a></li><li><a href="https://github.com/thepaperpilot/babble.js" target="_blank" rel="noreferrer">babble.js</a></li><li><a href="https://github.com/thepaperpilot/babble.cs" target="_blank" rel="noreferrer">babble.cs</a></li></ul><p>Babble buds is a free, open-source virtual puppet show software. It is heavily based on the non-public software called &quot;Puppet Pals&quot;, used in URealms Live. The software is written in javascript using React, a rendering library called PIXI.js, and electron.</p><p>Users can create puppets with different faces for different emotions, and then use the puppet on a stage where you and other users can each make your respective puppets move, change emotions, and &quot;babble&quot; at each other. The stage has a green screen feature and can be popped out, which gives the users tons of possibilities in terms of using the program for a role-playing live stream, faux video chatting with friends, game development, or whatever else you want!</p><p>Users can connect to the public server and create private rooms so that they and their friends can see each other&#39;s puppets and use the software however they please. For the security conscious, you can also use the server&#39;s source code to self-host your private server.</p><p><img src="'+s+'" alt="Babble Buds Screenshot"></p><h2 id="engine" tabindex="-1">Engine <a class="header-anchor" href="#engine" aria-label="Permalink to &quot;Engine&quot;"></a></h2><p>The engine originally made to make the Babble Buds program was separated into a separate engine called <code>babble.js</code>, so that projects created in Babble Buds can be used in other projects. For example, a game can create puppets in Babble Buds and then use them for cutscenes or player agency inside of the game. Additionally, it has been ported to C# (called <code>babble.cs</code>) for use with Unity, for the same kinds of purposes. You can check out <a href="https://www.thepaperpilot.itch.io/tower-offense" target="_blank" rel="noreferrer">Tower Offense</a> for a pixi.js game using Babble Buds puppets for the cutscenes, or <a href="./../dice/">Dice Armor</a> for a unity game using Babble Buds puppets for the cutscenes.</p><h2 id="babble-movie-maker" tabindex="-1">Babble Movie Maker <a class="header-anchor" href="#babble-movie-maker" aria-label="Permalink to &quot;Babble Movie Maker&quot;"></a></h2><p>Babble Movie Maker is a cutscene editor for Babble Buds puppets. You open a babble buds project in it, and you can add actors to a stage and have them move and change expressions, etc., on a timeline. You can then use the cutscene in a game using <code>babble.js</code> or <code>babble.cs</code>, or export the cutscene into a video file. There is even support for defining custom commands with custom fields, so that if you&#39;ve expanded upon the default actions provided in <code>babble.js</code> or <code>babble.cs</code>, you can still use Movie Maker to create your cutscenes.</p><p><img src="'+o+'" alt="Babble MM Screenshot"></p>',13),b=[i];function l(c,p,d,h,u,f){return t(),a("div",null,b)}const B=e(n,[["render",l]]);export{g as __pageData,B as default}; import{_ as e,c as a,o as t,a7 as r}from"./chunks/framework.Cq0zXouN.js";const s="/assets/screenshot.nlvH-FIX.png",o="/assets/babblemmscreenshot.Cr3XqPIH.png",g=JSON.parse('{"title":"Babble Buds","description":"","frontmatter":{"title":"Babble Buds"},"headers":[],"relativePath":"projects/babble/index.md","filePath":"projects/babble/index.md","lastUpdated":1717301537000}'),n={name:"projects/babble/index.md"},i=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><p><a href="http://babblebuds.xyz/" target="_blank" rel="noreferrer">Babble Buds Homepage</a></p><p>Source Code:</p><ul><li><a href="https://github.com/thepaperpilot/Babble-Buds" target="_blank" rel="noreferrer">Babble Buds</a></li><li><a href="https://github.com/thepaperpilot/BabbleMovieMaker" target="_blank" rel="noreferrer">Babble Movie Maker</a></li><li><a href="https://github.com/thepaperpilot/babble.js" target="_blank" rel="noreferrer">babble.js</a></li><li><a href="https://github.com/thepaperpilot/babble.cs" target="_blank" rel="noreferrer">babble.cs</a></li></ul><p>Babble buds is a free, open-source virtual puppet show software. It is heavily based on the non-public software called &quot;Puppet Pals&quot;, used in URealms Live. The software is written in javascript using React, a rendering library called PIXI.js, and electron.</p><p>Users can create puppets with different faces for different emotions, and then use the puppet on a stage where you and other users can each make your respective puppets move, change emotions, and &quot;babble&quot; at each other. The stage has a green screen feature and can be popped out, which gives the users tons of possibilities in terms of using the program for a role-playing live stream, faux video chatting with friends, game development, or whatever else you want!</p><p>Users can connect to the public server and create private rooms so that they and their friends can see each other&#39;s puppets and use the software however they please. For the security conscious, you can also use the server&#39;s source code to self-host your private server.</p><p><img src="'+s+'" alt="Babble Buds Screenshot"></p><h2 id="engine" tabindex="-1">Engine <a class="header-anchor" href="#engine" aria-label="Permalink to &quot;Engine&quot;"></a></h2><p>The engine originally made to make the Babble Buds program was separated into a separate engine called <code>babble.js</code>, so that projects created in Babble Buds can be used in other projects. For example, a game can create puppets in Babble Buds and then use them for cutscenes or player agency inside of the game. Additionally, it has been ported to C# (called <code>babble.cs</code>) for use with Unity, for the same kinds of purposes. You can check out <a href="https://www.thepaperpilot.itch.io/tower-offense" target="_blank" rel="noreferrer">Tower Offense</a> for a pixi.js game using Babble Buds puppets for the cutscenes, or <a href="./../dice/">Dice Armor</a> for a unity game using Babble Buds puppets for the cutscenes.</p><h2 id="babble-movie-maker" tabindex="-1">Babble Movie Maker <a class="header-anchor" href="#babble-movie-maker" aria-label="Permalink to &quot;Babble Movie Maker&quot;"></a></h2><p>Babble Movie Maker is a cutscene editor for Babble Buds puppets. You open a babble buds project in it, and you can add actors to a stage and have them move and change expressions, etc., on a timeline. You can then use the cutscene in a game using <code>babble.js</code> or <code>babble.cs</code>, or export the cutscene into a video file. There is even support for defining custom commands with custom fields, so that if you&#39;ve expanded upon the default actions provided in <code>babble.js</code> or <code>babble.cs</code>, you can still use Movie Maker to create your cutscenes.</p><p><img src="'+o+'" alt="Babble MM Screenshot"></p>',13),b=[i];function l(c,p,d,h,u,f){return t(),a("div",null,b)}const B=e(n,[["render",l]]);export{g as __pageData,B as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as t,a1 as r}from"./chunks/framework.CW2X4ZVO.js";const s="/assets/screenshot.nlvH-FIX.png",o="/assets/babblemmscreenshot.Cr3XqPIH.png",g=JSON.parse('{"title":"Babble Buds","description":"","frontmatter":{"title":"Babble Buds"},"headers":[],"relativePath":"projects/babble/index.md","filePath":"projects/babble/index.md","lastUpdated":1717293344000}'),n={name:"projects/babble/index.md"},i=r("",13),b=[i];function l(c,p,d,h,u,f){return t(),a("div",null,b)}const B=e(n,[["render",l]]);export{g as __pageData,B as default}; import{_ as e,c as a,o as t,a7 as r}from"./chunks/framework.Cq0zXouN.js";const s="/assets/screenshot.nlvH-FIX.png",o="/assets/babblemmscreenshot.Cr3XqPIH.png",g=JSON.parse('{"title":"Babble Buds","description":"","frontmatter":{"title":"Babble Buds"},"headers":[],"relativePath":"projects/babble/index.md","filePath":"projects/babble/index.md","lastUpdated":1717301537000}'),n={name:"projects/babble/index.md"},i=r("",13),b=[i];function l(c,p,d,h,u,f){return t(),a("div",null,b)}const B=e(n,[["render",l]]);export{g as __pageData,B as default};

View file

@ -1 +1 @@
import{_ as a,c as r,o as s,j as e,a as t}from"./chunks/framework.CW2X4ZVO.js";const n="/assets/screenshot.cHgaft8l.png",C=JSON.parse('{"title":"Capture the Citadel","description":"","frontmatter":{"title":"Capture the Citadel"},"headers":[],"relativePath":"projects/citadel/index.md","filePath":"projects/citadel/index.md","lastUpdated":1717293344000}'),o={name:"projects/citadel/index.md"},i=e("h1",{id:"capture-the-citadel",tabindex:"-1"},[t("Capture the Citadel "),e("a",{class:"header-anchor",href:"#capture-the-citadel","aria-label":'Permalink to "Capture the Citadel"'},"")],-1),c=e("p",null,"A 3D VR re-envisioning of a Slay the Spire-style game by Anthony Lawn and Grant Barbee for their VR class in college's final project.",-1),l=e("p",null,[t("For more details, visit "),e("a",{href:"https://grantcbarbee.github.io/conquer-the-citadel.html",target:"_blank",rel:"noreferrer"},"Grant's page on the game"),t(".")],-1),d=e("p",null,[e("img",{src:n,alt:"Screenshot"})],-1),h=[i,c,l,d];function p(_,m,u,f,g,x){return s(),r("div",null,h)}const j=a(o,[["render",p]]);export{C as __pageData,j as default}; import{_ as a,c as r,o as s,j as e,a as t}from"./chunks/framework.Cq0zXouN.js";const n="/assets/screenshot.cHgaft8l.png",C=JSON.parse('{"title":"Capture the Citadel","description":"","frontmatter":{"title":"Capture the Citadel"},"headers":[],"relativePath":"projects/citadel/index.md","filePath":"projects/citadel/index.md","lastUpdated":1717301537000}'),o={name:"projects/citadel/index.md"},i=e("h1",{id:"capture-the-citadel",tabindex:"-1"},[t("Capture the Citadel "),e("a",{class:"header-anchor",href:"#capture-the-citadel","aria-label":'Permalink to "Capture the Citadel"'},"")],-1),c=e("p",null,"A 3D VR re-envisioning of a Slay the Spire-style game by Anthony Lawn and Grant Barbee for their VR class in college's final project.",-1),l=e("p",null,[t("For more details, visit "),e("a",{href:"https://grantcbarbee.github.io/conquer-the-citadel.html",target:"_blank",rel:"noreferrer"},"Grant's page on the game"),t(".")],-1),d=e("p",null,[e("img",{src:n,alt:"Screenshot"})],-1),h=[i,c,l,d];function p(_,m,u,f,g,x){return s(),r("div",null,h)}const j=a(o,[["render",p]]);export{C as __pageData,j as default};

View file

@ -1 +1 @@
import{_ as a,c as r,o as s,j as e,a as t}from"./chunks/framework.CW2X4ZVO.js";const n="/assets/screenshot.cHgaft8l.png",C=JSON.parse('{"title":"Capture the Citadel","description":"","frontmatter":{"title":"Capture the Citadel"},"headers":[],"relativePath":"projects/citadel/index.md","filePath":"projects/citadel/index.md","lastUpdated":1717293344000}'),o={name:"projects/citadel/index.md"},i=e("h1",{id:"capture-the-citadel",tabindex:"-1"},[t("Capture the Citadel "),e("a",{class:"header-anchor",href:"#capture-the-citadel","aria-label":'Permalink to "Capture the Citadel"'},"")],-1),c=e("p",null,"A 3D VR re-envisioning of a Slay the Spire-style game by Anthony Lawn and Grant Barbee for their VR class in college's final project.",-1),l=e("p",null,[t("For more details, visit "),e("a",{href:"https://grantcbarbee.github.io/conquer-the-citadel.html",target:"_blank",rel:"noreferrer"},"Grant's page on the game"),t(".")],-1),d=e("p",null,[e("img",{src:n,alt:"Screenshot"})],-1),h=[i,c,l,d];function p(_,m,u,f,g,x){return s(),r("div",null,h)}const j=a(o,[["render",p]]);export{C as __pageData,j as default}; import{_ as a,c as r,o as s,j as e,a as t}from"./chunks/framework.Cq0zXouN.js";const n="/assets/screenshot.cHgaft8l.png",C=JSON.parse('{"title":"Capture the Citadel","description":"","frontmatter":{"title":"Capture the Citadel"},"headers":[],"relativePath":"projects/citadel/index.md","filePath":"projects/citadel/index.md","lastUpdated":1717301537000}'),o={name:"projects/citadel/index.md"},i=e("h1",{id:"capture-the-citadel",tabindex:"-1"},[t("Capture the Citadel "),e("a",{class:"header-anchor",href:"#capture-the-citadel","aria-label":'Permalink to "Capture the Citadel"'},"")],-1),c=e("p",null,"A 3D VR re-envisioning of a Slay the Spire-style game by Anthony Lawn and Grant Barbee for their VR class in college's final project.",-1),l=e("p",null,[t("For more details, visit "),e("a",{href:"https://grantcbarbee.github.io/conquer-the-citadel.html",target:"_blank",rel:"noreferrer"},"Grant's page on the game"),t(".")],-1),d=e("p",null,[e("img",{src:n,alt:"Screenshot"})],-1),h=[i,c,l,d];function p(_,m,u,f,g,x){return s(),r("div",null,h)}const j=a(o,[["render",p]]);export{C as __pageData,j as default};

File diff suppressed because one or more lines are too long

View file

@ -1 +1 @@
import{_ as e,c as t,o as a,a1 as i}from"./chunks/framework.CW2X4ZVO.js";const o="/assets/da2.C9-RUmKa.png",s="/assets/editors.DcBTrF0T.png",n="/assets/simulator.BEk-udsN.jpg",r="/assets/da1.BtCIGCoA.png",h="/assets/da6.YKrBrCnE.png",l="/assets/da7.GegJPMli.png",d="/assets/da8.C-1ZIWmv.png",c="/assets/da3.BjZqtsuw.png",p="/assets/da9.CUimvFQs.png",I=JSON.parse('{"title":"Dice Armor","description":"","frontmatter":{"title":"Dice Armor"},"headers":[],"relativePath":"projects/dice/index.md","filePath":"projects/dice/index.md","lastUpdated":1717293344000}'),m={name:"projects/dice/index.md"},u=i("",22),g=[u];function f(y,w,b,_,v,k){return a(),t("div",null,g)}const q=e(m,[["render",f]]);export{I as __pageData,q as default}; import{_ as e,c as t,o as a,a7 as i}from"./chunks/framework.Cq0zXouN.js";const o="/assets/da2.C9-RUmKa.png",s="/assets/editors.DcBTrF0T.png",n="/assets/simulator.BEk-udsN.jpg",r="/assets/da1.BtCIGCoA.png",h="/assets/da6.YKrBrCnE.png",l="/assets/da7.GegJPMli.png",d="/assets/da8.C-1ZIWmv.png",c="/assets/da3.BjZqtsuw.png",p="/assets/da9.CUimvFQs.png",I=JSON.parse('{"title":"Dice Armor","description":"","frontmatter":{"title":"Dice Armor"},"headers":[],"relativePath":"projects/dice/index.md","filePath":"projects/dice/index.md","lastUpdated":1717301537000}'),m={name:"projects/dice/index.md"},u=i("",22),g=[u];function f(y,w,b,_,v,k){return a(),t("div",null,g)}const q=e(m,[["render",f]]);export{I as __pageData,q as default};

View file

@ -1 +1 @@
import{_ as a,c as t,o,j as e,a as s}from"./chunks/framework.CW2X4ZVO.js";const u=JSON.parse('{"title":"Projects","description":"","frontmatter":{"title":"Projects","lastUpdated":false},"headers":[],"relativePath":"projects/index.md","filePath":"projects/index.md","lastUpdated":1717293344000}'),d={name:"projects/index.md"},n=e("h1",{id:"games-and-tools",tabindex:"-1"},[s("Games and Tools "),e("a",{class:"header-anchor",href:"#games-and-tools","aria-label":'Permalink to "Games and Tools"'},"")],-1),r=e("p",null,"Check out the various games and tools I've made or worked on in the sidebar!",-1),c=[n,r];function i(l,p,_,m,h,f){return o(),t("div",null,c)}const j=a(d,[["render",i]]);export{u as __pageData,j as default}; import{_ as a,c as t,o,j as e,a as s}from"./chunks/framework.Cq0zXouN.js";const u=JSON.parse('{"title":"Projects","description":"","frontmatter":{"title":"Projects","lastUpdated":false},"headers":[],"relativePath":"projects/index.md","filePath":"projects/index.md","lastUpdated":1717301537000}'),d={name:"projects/index.md"},n=e("h1",{id:"games-and-tools",tabindex:"-1"},[s("Games and Tools "),e("a",{class:"header-anchor",href:"#games-and-tools","aria-label":'Permalink to "Games and Tools"'},"")],-1),r=e("p",null,"Check out the various games and tools I've made or worked on in the sidebar!",-1),c=[n,r];function i(l,p,_,m,h,f){return o(),t("div",null,c)}const j=a(d,[["render",i]]);export{u as __pageData,j as default};

View file

@ -1 +1 @@
import{_ as a,c as t,o,j as e,a as s}from"./chunks/framework.CW2X4ZVO.js";const u=JSON.parse('{"title":"Projects","description":"","frontmatter":{"title":"Projects","lastUpdated":false},"headers":[],"relativePath":"projects/index.md","filePath":"projects/index.md","lastUpdated":1717293344000}'),d={name:"projects/index.md"},n=e("h1",{id:"games-and-tools",tabindex:"-1"},[s("Games and Tools "),e("a",{class:"header-anchor",href:"#games-and-tools","aria-label":'Permalink to "Games and Tools"'},"")],-1),r=e("p",null,"Check out the various games and tools I've made or worked on in the sidebar!",-1),c=[n,r];function i(l,p,_,m,h,f){return o(),t("div",null,c)}const j=a(d,[["render",i]]);export{u as __pageData,j as default}; import{_ as a,c as t,o,j as e,a as s}from"./chunks/framework.Cq0zXouN.js";const u=JSON.parse('{"title":"Projects","description":"","frontmatter":{"title":"Projects","lastUpdated":false},"headers":[],"relativePath":"projects/index.md","filePath":"projects/index.md","lastUpdated":1717301537000}'),d={name:"projects/index.md"},n=e("h1",{id:"games-and-tools",tabindex:"-1"},[s("Games and Tools "),e("a",{class:"header-anchor",href:"#games-and-tools","aria-label":'Permalink to "Games and Tools"'},"")],-1),r=e("p",null,"Check out the various games and tools I've made or worked on in the sidebar!",-1),c=[n,r];function i(l,p,_,m,h,f){return o(),t("div",null,c)}const j=a(d,[["render",i]]);export{u as __pageData,j as default};

View file

@ -1 +1 @@
import{_ as t,c as s,o,j as e,a}from"./chunks/framework.CW2X4ZVO.js";const n="/assets/system-architecture-600.DGFbDQB6.jpg",i="/assets/new-interface.RT34UE9b.png",r="/assets/documentation.DpX6w5Ep.png",c="/assets/unittests.plwFXNhI.png",E=JSON.parse('{"title":"OptiSpeech","description":"","frontmatter":{"title":"OptiSpeech"},"headers":[],"relativePath":"projects/optispeech/index.md","filePath":"projects/optispeech/index.md","lastUpdated":1717293344000}'),l={name:"projects/optispeech/index.md"},p=e("h1",{id:"optispeech",tabindex:"-1"},[a("OptiSpeech "),e("a",{class:"header-anchor",href:"#optispeech","aria-label":'Permalink to "OptiSpeech"'},"")],-1),d=e("p",null,"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). The UT Dallas Speech Production Lab is currently updating the program to use updated versions of Unity and adding support for more features and hardware.",-1),h=e("p",null,[e("img",{src:n,alt:"System Architecture"})],-1),u=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),m=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),g=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),_=e("p",null,"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.",-1),f=e("p",null,"The program is being updated by a team in the UT Dallas Speech Production Lab led by Anthony Lawn, so the program uses a more modern version of Unity, has an easier-to-use interface, can more easily support new features, and can connect to additional EMA systems, namely the Carstens AG501.",-1),w=e("p",null,[e("img",{src:i,alt:"New Interface"})],-1),y=e("p",null,"In addition, the program now includes documentation and unit tests to improve program stability and maintainability going forward.",-1),b=e("p",null,[e("img",{src:r,alt:"Documentation"})],-1),v=e("p",null,[e("img",{src:c,alt:"Unit Tests"})],-1),T=[p,d,h,u,m,g,_,f,w,y,b,v];function k(x,j,D,I,N,S){return o(),s("div",null,T)}const O=t(l,[["render",k]]);export{E as __pageData,O as default}; import{_ as t,c as s,o,j as e,a}from"./chunks/framework.Cq0zXouN.js";const n="/assets/system-architecture-600.DGFbDQB6.jpg",i="/assets/new-interface.RT34UE9b.png",r="/assets/documentation.DpX6w5Ep.png",c="/assets/unittests.plwFXNhI.png",E=JSON.parse('{"title":"OptiSpeech","description":"","frontmatter":{"title":"OptiSpeech"},"headers":[],"relativePath":"projects/optispeech/index.md","filePath":"projects/optispeech/index.md","lastUpdated":1717301537000}'),l={name:"projects/optispeech/index.md"},p=e("h1",{id:"optispeech",tabindex:"-1"},[a("OptiSpeech "),e("a",{class:"header-anchor",href:"#optispeech","aria-label":'Permalink to "OptiSpeech"'},"")],-1),d=e("p",null,"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). The UT Dallas Speech Production Lab is currently updating the program to use updated versions of Unity and adding support for more features and hardware.",-1),h=e("p",null,[e("img",{src:n,alt:"System Architecture"})],-1),u=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),m=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),g=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),_=e("p",null,"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.",-1),f=e("p",null,"The program is being updated by a team in the UT Dallas Speech Production Lab led by Anthony Lawn, so the program uses a more modern version of Unity, has an easier-to-use interface, can more easily support new features, and can connect to additional EMA systems, namely the Carstens AG501.",-1),w=e("p",null,[e("img",{src:i,alt:"New Interface"})],-1),y=e("p",null,"In addition, the program now includes documentation and unit tests to improve program stability and maintainability going forward.",-1),b=e("p",null,[e("img",{src:r,alt:"Documentation"})],-1),v=e("p",null,[e("img",{src:c,alt:"Unit Tests"})],-1),T=[p,d,h,u,m,g,_,f,w,y,b,v];function k(x,j,D,I,N,S){return o(),s("div",null,T)}const O=t(l,[["render",k]]);export{E as __pageData,O as default};

View file

@ -1 +1 @@
import{_ as t,c as s,o,j as e,a}from"./chunks/framework.CW2X4ZVO.js";const n="/assets/system-architecture-600.DGFbDQB6.jpg",i="/assets/new-interface.RT34UE9b.png",r="/assets/documentation.DpX6w5Ep.png",c="/assets/unittests.plwFXNhI.png",E=JSON.parse('{"title":"OptiSpeech","description":"","frontmatter":{"title":"OptiSpeech"},"headers":[],"relativePath":"projects/optispeech/index.md","filePath":"projects/optispeech/index.md","lastUpdated":1717293344000}'),l={name:"projects/optispeech/index.md"},p=e("h1",{id:"optispeech",tabindex:"-1"},[a("OptiSpeech "),e("a",{class:"header-anchor",href:"#optispeech","aria-label":'Permalink to "OptiSpeech"'},"")],-1),d=e("p",null,"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). The UT Dallas Speech Production Lab is currently updating the program to use updated versions of Unity and adding support for more features and hardware.",-1),h=e("p",null,[e("img",{src:n,alt:"System Architecture"})],-1),u=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),m=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),g=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),_=e("p",null,"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.",-1),f=e("p",null,"The program is being updated by a team in the UT Dallas Speech Production Lab led by Anthony Lawn, so the program uses a more modern version of Unity, has an easier-to-use interface, can more easily support new features, and can connect to additional EMA systems, namely the Carstens AG501.",-1),w=e("p",null,[e("img",{src:i,alt:"New Interface"})],-1),y=e("p",null,"In addition, the program now includes documentation and unit tests to improve program stability and maintainability going forward.",-1),b=e("p",null,[e("img",{src:r,alt:"Documentation"})],-1),v=e("p",null,[e("img",{src:c,alt:"Unit Tests"})],-1),T=[p,d,h,u,m,g,_,f,w,y,b,v];function k(x,j,D,I,N,S){return o(),s("div",null,T)}const O=t(l,[["render",k]]);export{E as __pageData,O as default}; import{_ as t,c as s,o,j as e,a}from"./chunks/framework.Cq0zXouN.js";const n="/assets/system-architecture-600.DGFbDQB6.jpg",i="/assets/new-interface.RT34UE9b.png",r="/assets/documentation.DpX6w5Ep.png",c="/assets/unittests.plwFXNhI.png",E=JSON.parse('{"title":"OptiSpeech","description":"","frontmatter":{"title":"OptiSpeech"},"headers":[],"relativePath":"projects/optispeech/index.md","filePath":"projects/optispeech/index.md","lastUpdated":1717301537000}'),l={name:"projects/optispeech/index.md"},p=e("h1",{id:"optispeech",tabindex:"-1"},[a("OptiSpeech "),e("a",{class:"header-anchor",href:"#optispeech","aria-label":'Permalink to "OptiSpeech"'},"")],-1),d=e("p",null,"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). The UT Dallas Speech Production Lab is currently updating the program to use updated versions of Unity and adding support for more features and hardware.",-1),h=e("p",null,[e("img",{src:n,alt:"System Architecture"})],-1),u=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),m=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),g=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),_=e("p",null,"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.",-1),f=e("p",null,"The program is being updated by a team in the UT Dallas Speech Production Lab led by Anthony Lawn, so the program uses a more modern version of Unity, has an easier-to-use interface, can more easily support new features, and can connect to additional EMA systems, namely the Carstens AG501.",-1),w=e("p",null,[e("img",{src:i,alt:"New Interface"})],-1),y=e("p",null,"In addition, the program now includes documentation and unit tests to improve program stability and maintainability going forward.",-1),b=e("p",null,[e("img",{src:r,alt:"Documentation"})],-1),v=e("p",null,[e("img",{src:c,alt:"Unit Tests"})],-1),T=[p,d,h,u,m,g,_,f,w,y,b,v];function k(x,j,D,I,N,S){return o(),s("div",null,T)}const O=t(l,[["render",k]]);export{E as __pageData,O as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as s,a1 as a}from"./chunks/framework.CW2X4ZVO.js";const o="/assets/screenshot.CBW-K79I.png",n="/assets/debug.DWIVzJke.png",r="/assets/sandsoftime.tKgYAxbg.png",w=JSON.parse('{"title":"V-ecs","description":"","frontmatter":{"title":"V-ecs"},"headers":[],"relativePath":"projects/vecs/index.md","filePath":"projects/vecs/index.md","lastUpdated":1717293344000}'),i={name:"projects/vecs/index.md"},l=a('<h1 id="v-ecs" tabindex="-1">V-ecs <a class="header-anchor" href="#v-ecs" aria-label="Permalink to &quot;V-ecs&quot;"></a></h1><p><img src="'+o+'" alt="V-ecs Screenshot"></p><p>V-ecs (pronounced &quot;Vex&quot;) is a Vulkan-based engine I made for making highly moddable games and tools in Lua centered around the ECS design pattern and a work-stealing job system.</p><p>The engine works with &quot;worlds&quot;, which are collections of systems and renderers. The engine comes with several worlds using systems and renderers I made, including a voxel world, an incremental game, and some test scenes. All of these include systems to render the fps as well as show a debug console by typing the grave key (`). The default world is a title screen that detects any worlds in the &quot;worlds&quot; folder and displays a button for each of them.</p><p><img src="'+n+'" alt="Debug Menu"></p><p>The original plans were to eventually put it on the steam workshop so people could more easily share their creations amongst each other, but I never became happy enough with the performance of the engine - the parallelization of the lua code involved a lot of overhead that severely limited performance.</p><p>Instead, I made a couple of worlds by myself - an infinite procedurally generated voxel world, a simple incremental game, and a more complex incremental game I call &quot;Sands of Time&quot;.</p><p><img src="'+r+'" alt="Sands of Time"></p>',8),c=[l];function d(p,m,h,u,_,g){return s(),t("div",null,c)}const v=e(i,[["render",d]]);export{w as __pageData,v as default}; import{_ as e,c as t,o as s,a7 as a}from"./chunks/framework.Cq0zXouN.js";const o="/assets/screenshot.CBW-K79I.png",n="/assets/debug.DWIVzJke.png",r="/assets/sandsoftime.tKgYAxbg.png",w=JSON.parse('{"title":"V-ecs","description":"","frontmatter":{"title":"V-ecs"},"headers":[],"relativePath":"projects/vecs/index.md","filePath":"projects/vecs/index.md","lastUpdated":1717301537000}'),i={name:"projects/vecs/index.md"},l=a('<h1 id="v-ecs" tabindex="-1">V-ecs <a class="header-anchor" href="#v-ecs" aria-label="Permalink to &quot;V-ecs&quot;"></a></h1><p><img src="'+o+'" alt="V-ecs Screenshot"></p><p>V-ecs (pronounced &quot;Vex&quot;) is a Vulkan-based engine I made for making highly moddable games and tools in Lua centered around the ECS design pattern and a work-stealing job system.</p><p>The engine works with &quot;worlds&quot;, which are collections of systems and renderers. The engine comes with several worlds using systems and renderers I made, including a voxel world, an incremental game, and some test scenes. All of these include systems to render the fps as well as show a debug console by typing the grave key (`). The default world is a title screen that detects any worlds in the &quot;worlds&quot; folder and displays a button for each of them.</p><p><img src="'+n+'" alt="Debug Menu"></p><p>The original plans were to eventually put it on the steam workshop so people could more easily share their creations amongst each other, but I never became happy enough with the performance of the engine - the parallelization of the lua code involved a lot of overhead that severely limited performance.</p><p>Instead, I made a couple of worlds by myself - an infinite procedurally generated voxel world, a simple incremental game, and a more complex incremental game I call &quot;Sands of Time&quot;.</p><p><img src="'+r+'" alt="Sands of Time"></p>',8),c=[l];function d(p,m,h,u,_,g){return s(),t("div",null,c)}const v=e(i,[["render",d]]);export{w as __pageData,v as default};

View file

@ -1 +1 @@
import{_ as e,c as t,o as s,a1 as a}from"./chunks/framework.CW2X4ZVO.js";const o="/assets/screenshot.CBW-K79I.png",n="/assets/debug.DWIVzJke.png",r="/assets/sandsoftime.tKgYAxbg.png",w=JSON.parse('{"title":"V-ecs","description":"","frontmatter":{"title":"V-ecs"},"headers":[],"relativePath":"projects/vecs/index.md","filePath":"projects/vecs/index.md","lastUpdated":1717293344000}'),i={name:"projects/vecs/index.md"},l=a("",8),c=[l];function d(p,m,h,u,_,g){return s(),t("div",null,c)}const v=e(i,[["render",d]]);export{w as __pageData,v as default}; import{_ as e,c as t,o as s,a7 as a}from"./chunks/framework.Cq0zXouN.js";const o="/assets/screenshot.CBW-K79I.png",n="/assets/debug.DWIVzJke.png",r="/assets/sandsoftime.tKgYAxbg.png",w=JSON.parse('{"title":"V-ecs","description":"","frontmatter":{"title":"V-ecs"},"headers":[],"relativePath":"projects/vecs/index.md","filePath":"projects/vecs/index.md","lastUpdated":1717301537000}'),i={name:"projects/vecs/index.md"},l=a("",8),c=[l];function d(p,m,h,u,_,g){return s(),t("div",null,c)}const v=e(i,[["render",d]]);export{w as __pageData,v as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as t,a1 as o}from"./chunks/framework.CW2X4ZVO.js";const f=JSON.parse('{"title":"2.0 format changes","description":"","frontmatter":{},"headers":[],"relativePath":"public/gamedevtree/2.0-format-changes.md","filePath":"public/gamedevtree/2.0-format-changes.md","lastUpdated":1701137241000}'),i={name:"public/gamedevtree/2.0-format-changes.md"},l=o('<h1 id="_2-0-format-changes" tabindex="-1">2.0 format changes <a class="header-anchor" href="#_2-0-format-changes" aria-label="Permalink to &quot;2.0 format changes&quot;"></a></h1><ul><li>Temp format is changed from <code>temp.something[layer]</code> to <code>temp[layer].something</code>, for consistency</li><li>Challenges are now saved as an object with the amount of completions in each spot. (This will break saves.)</li><li><code>effectDisplay</code> in Challenges and Upgrades no longer takes an argument, and neither does <code>effect</code> for Buyables</li><li>Buyable cost can take an argument for amount of buyables, but it needs to function if no argument is supplied (it should do the cost for the next purchase).</li><li>Generation of Points now happens in the main game loop (not in a layer update function), enabled by <code>canGenPoints</code> in <a href="js/game.js">game.js</a>.</li><li>Changed <code>fullLayerReset</code> to <code>layerDataReset</code>, which takes an array of names of values to keep</li></ul><p>In addition, many names were changed, mostly expanding abbreviations:</p><p>All instances of:</p><ul><li>chall -&gt; challenge</li><li>unl -&gt; unlocked</li><li>upg -&gt; upgrade (besides CSS)</li><li>amt -&gt; amount</li><li>desc -&gt; description</li><li>resCeil -&gt; roundUpCost</li><li>order -&gt; unlockOrder</li><li>incr_order -&gt; increaseUnlockOrder</li></ul><p>Challenges:</p><ul><li>desc -&gt; challengeDescription</li><li>reward -&gt; rewardDescription</li><li>effect -&gt; rewardEffect</li><li>effectDisplay -&gt; rewardDisplay</li><li>active -&gt; challengeActive</li></ul>',7),n=[l];function s(r,c,d,g,h,m){return t(),a("div",null,n)}const u=e(i,[["render",s]]);export{f as __pageData,u as default}; import{_ as e,c as a,o as t,a7 as o}from"./chunks/framework.Cq0zXouN.js";const f=JSON.parse('{"title":"2.0 format changes","description":"","frontmatter":{},"headers":[],"relativePath":"public/gamedevtree/2.0-format-changes.md","filePath":"public/gamedevtree/2.0-format-changes.md","lastUpdated":1701137241000}'),i={name:"public/gamedevtree/2.0-format-changes.md"},l=o('<h1 id="_2-0-format-changes" tabindex="-1">2.0 format changes <a class="header-anchor" href="#_2-0-format-changes" aria-label="Permalink to &quot;2.0 format changes&quot;"></a></h1><ul><li>Temp format is changed from <code>temp.something[layer]</code> to <code>temp[layer].something</code>, for consistency</li><li>Challenges are now saved as an object with the amount of completions in each spot. (This will break saves.)</li><li><code>effectDisplay</code> in Challenges and Upgrades no longer takes an argument, and neither does <code>effect</code> for Buyables</li><li>Buyable cost can take an argument for amount of buyables, but it needs to function if no argument is supplied (it should do the cost for the next purchase).</li><li>Generation of Points now happens in the main game loop (not in a layer update function), enabled by <code>canGenPoints</code> in <a href="js/game.js">game.js</a>.</li><li>Changed <code>fullLayerReset</code> to <code>layerDataReset</code>, which takes an array of names of values to keep</li></ul><p>In addition, many names were changed, mostly expanding abbreviations:</p><p>All instances of:</p><ul><li>chall -&gt; challenge</li><li>unl -&gt; unlocked</li><li>upg -&gt; upgrade (besides CSS)</li><li>amt -&gt; amount</li><li>desc -&gt; description</li><li>resCeil -&gt; roundUpCost</li><li>order -&gt; unlockOrder</li><li>incr_order -&gt; increaseUnlockOrder</li></ul><p>Challenges:</p><ul><li>desc -&gt; challengeDescription</li><li>reward -&gt; rewardDescription</li><li>effect -&gt; rewardEffect</li><li>effectDisplay -&gt; rewardDisplay</li><li>active -&gt; challengeActive</li></ul>',7),n=[l];function s(r,c,d,g,h,m){return t(),a("div",null,n)}const u=e(i,[["render",s]]);export{f as __pageData,u as default};

View file

@ -1 +1 @@
import{_ as e,c as a,o as t,a1 as o}from"./chunks/framework.CW2X4ZVO.js";const f=JSON.parse('{"title":"2.0 format changes","description":"","frontmatter":{},"headers":[],"relativePath":"public/gamedevtree/2.0-format-changes.md","filePath":"public/gamedevtree/2.0-format-changes.md","lastUpdated":1701137241000}'),i={name:"public/gamedevtree/2.0-format-changes.md"},l=o("",7),n=[l];function s(r,c,d,g,h,m){return t(),a("div",null,n)}const u=e(i,[["render",s]]);export{f as __pageData,u as default}; import{_ as e,c as a,o as t,a7 as o}from"./chunks/framework.Cq0zXouN.js";const f=JSON.parse('{"title":"2.0 format changes","description":"","frontmatter":{},"headers":[],"relativePath":"public/gamedevtree/2.0-format-changes.md","filePath":"public/gamedevtree/2.0-format-changes.md","lastUpdated":1701137241000}'),i={name:"public/gamedevtree/2.0-format-changes.md"},l=o("",7),n=[l];function s(r,c,d,g,h,m){return t(),a("div",null,n)}const u=e(i,[["render",s]]);export{f as __pageData,u as default};

View file

@ -1 +1 @@
import{_ as o,c as a,o as r,j as e,a as t}from"./chunks/framework.CW2X4ZVO.js";const k=JSON.parse('{"title":"The-Modding-Tree","description":"","frontmatter":{},"headers":[],"relativePath":"public/gamedevtree/README.md","filePath":"public/gamedevtree/README.md","lastUpdated":1701137241000}'),i={name:"public/gamedevtree/README.md"},n=e("h1",{id:"the-modding-tree",tabindex:"-1"},[t("The-Modding-Tree "),e("a",{class:"header-anchor",href:"#the-modding-tree","aria-label":'Permalink to "The-Modding-Tree"'},"")],-1),s=e("p",null,"A modified version of The Prestige Tree that is much easier to mod. It still requires programming knowledge, but it's mostly pretty easy things and copy/pasting.",-1),d=e("p",null,[e("a",{href:"./docs/getting-started"},"Look here for a tutorial on getting started with modding with TMT")],-1),l=e("p",null,[t("You can look in the "),e("a",{href:"./docs/!general-info"},"documentation"),t(" for more information on how it all works, or look at the code in layers.js to see what it all looks like.")],-1),c=[n,s,d,l];function h(m,p,g,_,f,u){return r(),a("div",null,c)}const E=o(i,[["render",h]]);export{k as __pageData,E as default}; import{_ as o,c as a,o as r,j as e,a as t}from"./chunks/framework.Cq0zXouN.js";const k=JSON.parse('{"title":"The-Modding-Tree","description":"","frontmatter":{},"headers":[],"relativePath":"public/gamedevtree/README.md","filePath":"public/gamedevtree/README.md","lastUpdated":1701137241000}'),i={name:"public/gamedevtree/README.md"},n=e("h1",{id:"the-modding-tree",tabindex:"-1"},[t("The-Modding-Tree "),e("a",{class:"header-anchor",href:"#the-modding-tree","aria-label":'Permalink to "The-Modding-Tree"'},"")],-1),s=e("p",null,"A modified version of The Prestige Tree that is much easier to mod. It still requires programming knowledge, but it's mostly pretty easy things and copy/pasting.",-1),d=e("p",null,[e("a",{href:"./docs/getting-started"},"Look here for a tutorial on getting started with modding with TMT")],-1),l=e("p",null,[t("You can look in the "),e("a",{href:"./docs/!general-info"},"documentation"),t(" for more information on how it all works, or look at the code in layers.js to see what it all looks like.")],-1),c=[n,s,d,l];function h(m,p,g,_,f,u){return r(),a("div",null,c)}const E=o(i,[["render",h]]);export{k as __pageData,E as default};

View file

@ -1 +1 @@
import{_ as o,c as a,o as r,j as e,a as t}from"./chunks/framework.CW2X4ZVO.js";const k=JSON.parse('{"title":"The-Modding-Tree","description":"","frontmatter":{},"headers":[],"relativePath":"public/gamedevtree/README.md","filePath":"public/gamedevtree/README.md","lastUpdated":1701137241000}'),i={name:"public/gamedevtree/README.md"},n=e("h1",{id:"the-modding-tree",tabindex:"-1"},[t("The-Modding-Tree "),e("a",{class:"header-anchor",href:"#the-modding-tree","aria-label":'Permalink to "The-Modding-Tree"'},"")],-1),s=e("p",null,"A modified version of The Prestige Tree that is much easier to mod. It still requires programming knowledge, but it's mostly pretty easy things and copy/pasting.",-1),d=e("p",null,[e("a",{href:"./docs/getting-started"},"Look here for a tutorial on getting started with modding with TMT")],-1),l=e("p",null,[t("You can look in the "),e("a",{href:"./docs/!general-info"},"documentation"),t(" for more information on how it all works, or look at the code in layers.js to see what it all looks like.")],-1),c=[n,s,d,l];function h(m,p,g,_,f,u){return r(),a("div",null,c)}const E=o(i,[["render",h]]);export{k as __pageData,E as default}; import{_ as o,c as a,o as r,j as e,a as t}from"./chunks/framework.Cq0zXouN.js";const k=JSON.parse('{"title":"The-Modding-Tree","description":"","frontmatter":{},"headers":[],"relativePath":"public/gamedevtree/README.md","filePath":"public/gamedevtree/README.md","lastUpdated":1701137241000}'),i={name:"public/gamedevtree/README.md"},n=e("h1",{id:"the-modding-tree",tabindex:"-1"},[t("The-Modding-Tree "),e("a",{class:"header-anchor",href:"#the-modding-tree","aria-label":'Permalink to "The-Modding-Tree"'},"")],-1),s=e("p",null,"A modified version of The Prestige Tree that is much easier to mod. It still requires programming knowledge, but it's mostly pretty easy things and copy/pasting.",-1),d=e("p",null,[e("a",{href:"./docs/getting-started"},"Look here for a tutorial on getting started with modding with TMT")],-1),l=e("p",null,[t("You can look in the "),e("a",{href:"./docs/!general-info"},"documentation"),t(" for more information on how it all works, or look at the code in layers.js to see what it all looks like.")],-1),c=[n,s,d,l];function h(m,p,g,_,f,u){return r(),a("div",null,c)}const E=o(i,[["render",h]]);export{k as __pageData,E as default};

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