1"use strict";(self.webpackChunkaa=self.webpackChunkaa||[]).push([[33],{58254:(e,t,n)=>{n.r(t),n.d(t,{assets:()=>c,contentTitle:()=>o,default:()=>d,frontMatter:()=>i,metadata:()=>s,toc:()=>l});var r=n(86070),a=n(27468);const i={slug:"2024/11/01/my-hacktober-2024-activites",title:"Good Hacktoberfest 2024",authors:["armchairancap"],tags:["xx network"],description:"My Hacktoberfest 2024 activities",keywords:["xx network","xx chain","tribler","haven","decentralized","hacktoberfest","hacktoberfest 2024"]},o=void 0,s={permalink:"/blog/2024/11/01/my-hacktober-2024-activites",source:"@site/blog/2024-11-01-my-hacktober-activities.md",title:"Good Hacktoberfest 2024",description:"My Hacktoberfest 2024 activities",date:"2024-11-01T00:00:00.000Z",tags:[{label:"xx network",permalink:"/blog/tags/xx-network"}],readingTime:1.38,hasTruncateMarker:!1,authors:[{name:"ArmchairAncap",url:"https://github.com/armchairancap",imageURL:"https://github.com/armchairancap.png",key:"armchairancap"}],frontMatter:{slug:"2024/11/01/my-hacktober-2024-activites",title:"Good Hacktoberfest 2024",authors:["armchairancap"],tags:["xx network"],description:"My Hacktoberfest 2024 activities",keywords:["xx network","xx chain","tribler","haven","decentralized","hacktoberfest","hacktoberfest 2024"]},unlisted:!1,prevItem:{title:"Notes on forked comparison of messengers",permalink:"/blog/2024/11/01/haven-comparison-notes"},nextItem:{title:"xx Haven with Tribler",permalink:"/blog/2024/10/29/xx-haven-with-tribler"}},c={authorsImageUrls:[void 0]},l=[];function h(e){const t={a:"a",img:"img",li:"li",p:"p",ul:"ul",...(0,a.R)(),...e.components};return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsxs)(t.p,{children:[(0,r.jsx)(t.a,{href:"https://hacktoberfest.com/",children:"Hacktoberfest 2024"})," is over so here's what I did:"]}),"\n",(0,r.jsxs)(t.ul,{children:["\n",(0,r.jsxs)(t.li,{children:["Added search function, keywords and front matter to 67 pages on ",(0,r.jsx)(t.a,{href:"https://learn.xx.network/",children:"https://learn.xx.network/"}),". Usability, SEO, etc."]}),"\n",(0,r.jsxs)(t.li,{children:["Repurposed existing sample code for Kusama to create ",(0,r.jsx)(t.a,{href:"https://github.com/armchairancap/polkadot-js-tokengated-website",children:"token-gated site for xx coins"})," which can help anyone who wants to build toke-gated sites. Note that this works only for xx coin, but assets aka NFTs on xx chain would need additional work as asset (NFT) lookups are more complicated."]}),"\n",(0,r.jsxs)(t.li,{children:["Published two simple PoCs for Haven-Tribler integration","\n",(0,r.jsxs)(t.ul,{children:["\n",(0,r.jsx)(t.li,{children:'one runs Haven in a Tribler chat frame (I tagged it "v1.0") - more secure, but less convenient (as always...)'}),"\n",(0,r.jsx)(t.li,{children:'another runs Tribler in a Haven iFrame ("v2.0")'}),"\n",(0,r.jsxs)(t.li,{children:["both can be found ",(0,r.jsx)(t.a,{href:"https://github.com/armchairancap/xx-tribler-haven?tab=readme-ov-file",children:"here"})," and there's a ",(0,r.jsx)(t.a,{href:"/blog/2024/10/29/xx-haven-with-tribler",children:"blog post"})," about the motivation, use cases and approaches"]}),"\n"]}),"\n"]}),"\n",(0,r.jsx)(t.li,{children:"Published a toy extension for Firefox - see the Tribler-with-Haven blog post for more, and a screenshot is below."}),"\n",(0,r.jsxs)(t.li,{children:["Updated User and Admin guides to ",(0,r.jsx)(t.a,{href:"https://armchairancap.github.io/docs/category/xx-network-haven-users-guide",children:"xx Network Haven"})]}),"\n"]}),"\n",(0,r.jsx)(t.p,{children:'Apart from the "common good" contributions (xx Network Learn, etc), the rest was centered around exploring Haven integrations with Tribler.'}),"\n",(0,r.jsx)(t.p,{children:'This screenshot sums it all up - Tribler in Haven iFrame (aka my "v2.0") - and the toy Firefox extension in action!'}),"\n",(0,r.jsx)(t.p,{children:(0,r.jsx)(t.img,{alt:"Firefox extension to ease download in Haven-Tribler environment",src:n(32116).A+"",width:"1434",height:"938"})}),"\n",(0,r.jsxs)(t.ul,{children:["\n",(0,r.jsx)(t.li,{children:"Find a Magnet link in a Haven space"}),"\n",(0,r.jsx)(t.li,{children:"Select the link, right-click on it and use the Firefox extension download it from Tribler"}),"\n",(0,r.jsx)(t.li,{children:"Watch download progress without switching to other (browser) tabs or windows"}),"\n"]}),"\n",(0,r.jsx)(t.p,{children:"If you use a non-Mozilla browser you can copy the link and add it to Tribler as usual."}),"\n",(0,r.jsx)(t.p,{children:"I haven't had time to do a Chromium-based extension yet."})]})}function d(e={}){const{wrapper:t}={...(0,a.R)(),...e.components};return t?(0,r.jsx)(t,{...e,children:(0,r.jsx)(h,{...e})}):h(e)}},32116:(e,t,n)=>{n.d(t,{A:()=>r});const r=n.p+"assets/images/2024-11-01-xx-haven-firefox-extension-tribler-16440fdd5773b6866f7382cf6af80dc4.png"},27468:(e,t,n)=>{n.d(t,{R:()=>o,x:()=>s});var r=n(30758);const a={},i=r.createContext(a);function o(e){const t=r.useContext(i);return r.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function s(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(a):e.components||a:o(e.components),r.createElement(i.Provider,{value:t},e.children)}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.