Compare commits
53 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| cde361e478 | |||
| e3d4680ec4 | |||
| 680d978203 | |||
| d077d252c3 | |||
| ac3b49551a | |||
| 225d1aaaec | |||
| 3f7e8ccdfd | |||
| f6b86c959c | |||
| 19fca62b4b | |||
| cf9ffdf970 | |||
|
|
66e47c33bf | ||
|
|
9f5aef8e0c | ||
| 0b42381c54 | |||
| eb1c12b638 | |||
| 25f3e2fb25 | |||
| 678fe22787 | |||
| 4824e2f065 | |||
| dcccb5a89a | |||
| 191dd190f4 | |||
| b52761b574 | |||
| 10b0d74df1 | |||
| c0f1e5c47c | |||
| 91108c5d16 | |||
| df7730ca77 | |||
| 11027a6cc8 | |||
| 4276c33930 | |||
| 6554a6f30b | |||
| 023dd50ee4 | |||
| 2970360ac1 | |||
| 2f0b4ef2ba | |||
| fbfbf8b5a6 | |||
| 59de6e4b64 | |||
| 2973e05ed9 | |||
| 3176b3567f | |||
| 64a4acfdbc | |||
| 20d75eeee9 | |||
| 2892398b54 | |||
| aa83cd972e | |||
| f03cdefbab | |||
| 31958e71a0 | |||
| e7f3c78c58 | |||
| e02e9fa711 | |||
| 5865ce8148 | |||
| 1dd59f45ca | |||
| 2cbecebcb0 | |||
| bfa356bedb | |||
| 35437fd175 | |||
| 11db785ac9 | |||
| a68ac60bce | |||
| 25f32f1bd9 | |||
| 1232e02a67 | |||
| b18900aba8 | |||
| c3dcd09892 |
53
.github/workflows/documentation.yml
vendored
@@ -1,53 +0,0 @@
|
||||
name: documentation
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches: [documentation]
|
||||
push:
|
||||
branches: [documentation]
|
||||
|
||||
jobs:
|
||||
checks:
|
||||
if: github.event_name != 'push'
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- uses: actions/setup-node@v1
|
||||
with:
|
||||
node-version: '12.x'
|
||||
- name: Test Build
|
||||
run: |
|
||||
if [ -e yarn.lock ]; then
|
||||
yarn install --frozen-lockfile
|
||||
elif [ -e package-lock.json ]; then
|
||||
npm ci
|
||||
else
|
||||
npm i
|
||||
fi
|
||||
npm run build
|
||||
gh-release:
|
||||
if: github.event_name != 'pull_request'
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- uses: actions/setup-node@v1
|
||||
with:
|
||||
node-version: '12.x'
|
||||
- uses: webfactory/ssh-agent@v0.5.0
|
||||
with:
|
||||
ssh-private-key: ${{ secrets.GH_PAGES_DEPLOY }}
|
||||
- name: Release to GitHub Pages
|
||||
env:
|
||||
USE_SSH: true
|
||||
GIT_USER: rishighan
|
||||
run: |
|
||||
git config --global user.email "rishi.ghan@gmail.com"
|
||||
git config --global user.name "rishighan"
|
||||
if [ -e yarn.lock ]; then
|
||||
yarn install --frozen-lockfile
|
||||
elif [ -e package-lock.json ]; then
|
||||
npm ci
|
||||
else
|
||||
npm i
|
||||
fi
|
||||
npm run deploy
|
||||
20
.gitignore
vendored
@@ -1,20 +0,0 @@
|
||||
# Dependencies
|
||||
/node_modules
|
||||
|
||||
# Production
|
||||
/build
|
||||
|
||||
# Generated files
|
||||
.docusaurus
|
||||
.cache-loader
|
||||
|
||||
# Misc
|
||||
.DS_Store
|
||||
.env.local
|
||||
.env.development.local
|
||||
.env.test.local
|
||||
.env.production.local
|
||||
|
||||
npm-debug.log*
|
||||
yarn-debug.log*
|
||||
yarn-error.log*
|
||||
17
404.html
Normal file
@@ -0,0 +1,17 @@
|
||||
<!doctype html>
|
||||
<html lang="en" dir="ltr" class="plugin-native plugin-id-default">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="generator" content="Docusaurus v2.2.0">
|
||||
<title data-rh="true">Page Not Found | ThreeTwo!</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://rishighan.github.io/threetwo-docs/404.html"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docusaurus_tag" content="default"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" name="docsearch:docusaurus_tag" content="default"><meta data-rh="true" property="og:title" content="Page Not Found | ThreeTwo!"><link data-rh="true" rel="icon" href="/threetwo-docs/img/favicon.ico"><link data-rh="true" rel="canonical" href="https://rishighan.github.io/threetwo-docs/404.html"><link data-rh="true" rel="alternate" href="https://rishighan.github.io/threetwo-docs/404.html" hreflang="en"><link data-rh="true" rel="alternate" href="https://rishighan.github.io/threetwo-docs/404.html" hreflang="x-default"><link rel="alternate" type="application/rss+xml" href="/threetwo-docs/blog/rss.xml" title="ThreeTwo! RSS Feed">
|
||||
<link rel="alternate" type="application/atom+xml" href="/threetwo-docs/blog/atom.xml" title="ThreeTwo! Atom Feed"><link rel="stylesheet" href="/threetwo-docs/assets/css/styles.e3d40972.css">
|
||||
<link rel="preload" href="/threetwo-docs/assets/js/runtime~main.e5e6932c.js" as="script">
|
||||
<link rel="preload" href="/threetwo-docs/assets/js/main.77f40a88.js" as="script">
|
||||
</head>
|
||||
<body class="navigation-with-keyboard">
|
||||
<script>!function(){function t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var t=null;try{t=localStorage.getItem("theme")}catch(t){}return t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
|
||||
<div role="region" aria-label="Skip to main content"><a class="skipToContent_fXgn" href="#docusaurus_skipToContent_fallback">Skip to main content</a></div><nav class="navbar navbar--fixed-top"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Toggle navigation bar" aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"></path></svg></button><a class="navbar__brand" href="/threetwo-docs/"><div class="navbar__logo"><img src="/threetwo-docs/img/threetwo.png" alt="My Site Logo" class="themedImage_ToTc themedImage--light_HNdA"><img src="/threetwo-docs/img/threetwo.png" alt="My Site Logo" class="themedImage_ToTc themedImage--dark_i4oU"></div><b class="navbar__title text--truncate">ThreeTwo!</b></a><a class="navbar__item navbar__link" href="/threetwo-docs/docs/intro">Quick Start</a><a class="navbar__item navbar__link" href="/threetwo-docs/blog">Blog</a></div><div class="navbar__items navbar__items--right"><a href="https://github.com/rishighan/threetwo" target="_blank" rel="noopener noreferrer" class="navbar__item navbar__link">GitHub<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a><div class="searchBox_ZlJk"></div></div></div><div role="presentation" class="navbar-sidebar__backdrop"></div></nav><div id="docusaurus_skipToContent_fallback" class="main-wrapper mainWrapper_z2l0"><main class="container margin-vert--xl"><div class="row"><div class="col col--6 col--offset-3"><h1 class="hero__title">Page Not Found</h1><p>We could not find what you were looking for.</p><p>Please contact the owner of the site that linked you to the original URL and let them know their link is broken.</p></div></div></main></div><footer class="footer footer--dark"><div class="container container-fluid"><div class="row footer__links"><div class="col footer__col"><div class="footer__title">Docs</div><ul class="footer__items clean-list"><li class="footer__item"><a class="footer__link-item" href="/threetwo-docs/docs/intro">Tutorial</a></li></ul></div><div class="col footer__col"><div class="footer__title">Community</div><ul class="footer__items clean-list"><li class="footer__item"><a href="https://github.com/rishighan/threetwo" target="_blank" rel="noopener noreferrer" class="footer__link-item">Github<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li><li class="footer__item"><a href="https://discord.gg/n4HZ4j33uT" target="_blank" rel="noopener noreferrer" class="footer__link-item">Discord<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li></ul></div><div class="col footer__col"><div class="footer__title">More</div><ul class="footer__items clean-list"><li class="footer__item"><a class="footer__link-item" href="/threetwo-docs/blog">Blog</a></li><li class="footer__item"><a href="https://rishighan.com" target="_blank" rel="noopener noreferrer" class="footer__link-item">Rishi Ghan<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li></ul></div></div><div class="footer__bottom text--center"><div class="footer__copyright">Copyright © 2023 Quasar Software, LLC. Built with Docusaurus.</div></div></div></footer></div>
|
||||
<script src="/threetwo-docs/assets/js/runtime~main.e5e6932c.js"></script>
|
||||
<script src="/threetwo-docs/assets/js/main.77f40a88.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
33
README.md
@@ -1,33 +0,0 @@
|
||||
# Website
|
||||
|
||||
This website is built using [Docusaurus 2](https://docusaurus.io/), a modern static website generator.
|
||||
|
||||
### Installation
|
||||
|
||||
```
|
||||
$ yarn
|
||||
```
|
||||
|
||||
### Local Development
|
||||
|
||||
```
|
||||
$ yarn start
|
||||
```
|
||||
|
||||
This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.
|
||||
|
||||
### Build
|
||||
|
||||
```
|
||||
$ yarn build
|
||||
```
|
||||
|
||||
This command generates static content into the `build` directory and can be served using any static contents hosting service.
|
||||
|
||||
### Deployment
|
||||
|
||||
```
|
||||
$ GIT_USER=<Your GitHub username> USE_SSH=true yarn deploy
|
||||
```
|
||||
|
||||
If you are using GitHub pages for hosting, this command is a convenient way to build the website and push to the `gh-pages` branch.
|
||||
1
assets/css/styles.e3d40972.css
Normal file
|
Before Width: | Height: | Size: 94 KiB After Width: | Height: | Size: 94 KiB |
1
assets/js/01a85c17.53c4afd1.js
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkthreetwo_docs=self.webpackChunkthreetwo_docs||[]).push([[13],{9058:function(e,t,a){a.d(t,{Z:function(){return N}});var l=a(7294),n=a(4334),r=a(3285),s=a(7524),c=a(9960),i=a(5999),m="sidebar_re4s",o="sidebarItemTitle_pO2u",u="sidebarItemList_Yudw",g="sidebarItem__DBe",d="sidebarItemLink_mo7H",E="sidebarItemLinkActive_I1ZP";function b(e){let{sidebar:t}=e;return l.createElement("aside",{className:"col col--3"},l.createElement("nav",{className:(0,n.Z)(m,"thin-scrollbar"),"aria-label":(0,i.I)({id:"theme.blog.sidebar.navAriaLabel",message:"Blog recent posts navigation",description:"The ARIA label for recent posts in the blog sidebar"})},l.createElement("div",{className:(0,n.Z)(o,"margin-bottom--md")},t.title),l.createElement("ul",{className:(0,n.Z)(u,"clean-list")},t.items.map((e=>l.createElement("li",{key:e.permalink,className:g},l.createElement(c.Z,{isNavLink:!0,to:e.permalink,className:d,activeClassName:E},e.title)))))))}var p=a(3102);function f(e){let{sidebar:t}=e;return l.createElement("ul",{className:"menu__list"},t.items.map((e=>l.createElement("li",{key:e.permalink,className:"menu__list-item"},l.createElement(c.Z,{isNavLink:!0,to:e.permalink,className:"menu__link",activeClassName:"menu__link--active"},e.title)))))}function h(e){return l.createElement(p.Zo,{component:f,props:e})}function k(e){let{sidebar:t}=e;const a=(0,s.i)();return null!=t&&t.items.length?"mobile"===a?l.createElement(h,{sidebar:t}):l.createElement(b,{sidebar:t}):null}function N(e){const{sidebar:t,toc:a,children:s,...c}=e,i=t&&t.items.length>0;return l.createElement(r.Z,c,l.createElement("div",{className:"container margin-vert--lg"},l.createElement("div",{className:"row"},l.createElement(k,{sidebar:t}),l.createElement("main",{className:(0,n.Z)("col",{"col--7":i,"col--9 col--offset-1":!i}),itemScope:!0,itemType:"http://schema.org/Blog"},s),a&&l.createElement("div",{className:"col col--2"},a))))}},1223:function(e,t,a){a.r(t),a.d(t,{default:function(){return E}});var l=a(7294),n=a(4334),r=a(5999);var s=a(1944),c=a(5281),i=a(9058),m=a(3008),o="tag_Nnez";function u(e){let{letterEntry:t}=e;return l.createElement("article",null,l.createElement("h2",null,t.letter),l.createElement("ul",{className:"padding--none"},t.tags.map((e=>l.createElement("li",{key:e.permalink,className:o},l.createElement(m.Z,e))))),l.createElement("hr",null))}function g(e){let{tags:t}=e;const a=function(e){const t={};return Object.values(e).forEach((e=>{const a=function(e){return e[0].toUpperCase()}(e.label);t[a]??=[],t[a].push(e)})),Object.entries(t).sort(((e,t)=>{let[a]=e,[l]=t;return a.localeCompare(l)})).map((e=>{let[t,a]=e;return{letter:t,tags:a.sort(((e,t)=>e.label.localeCompare(t.label)))}}))}(t);return l.createElement("section",{className:"margin-vert--lg"},a.map((e=>l.createElement(u,{key:e.letter,letterEntry:e}))))}var d=a(197);function E(e){let{tags:t,sidebar:a}=e;const m=(0,r.I)({id:"theme.tags.tagsPageTitle",message:"Tags",description:"The title of the tag list page"});return l.createElement(s.FG,{className:(0,n.Z)(c.k.wrapper.blogPages,c.k.page.blogTagsListPage)},l.createElement(s.d,{title:m}),l.createElement(d.Z,{tag:"blog_tags_list"}),l.createElement(i.Z,{sidebar:a},l.createElement("h1",null,m),l.createElement(g,{tags:t})))}},3008:function(e,t,a){a.d(t,{Z:function(){return m}});var l=a(7294),n=a(4334),r=a(9960),s="tag_zVej",c="tagRegular_sFm0",i="tagWithCount_h2kH";function m(e){let{permalink:t,label:a,count:m}=e;return l.createElement(r.Z,{href:t,className:(0,n.Z)(s,m?i:c)},a,m&&l.createElement("span",null,m))}}}]);
|
||||
1
assets/js/03f09ed3.7a9b08c9.js
Normal file
1
assets/js/09c8d506.24090cb8.js
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkthreetwo_docs=self.webpackChunkthreetwo_docs||[]).push([[714],{5059:function(s){s.exports=JSON.parse('{"label":"docusaurus","permalink":"/threetwo-docs/blog/tags/docusaurus","allTagsPath":"/threetwo-docs/blog/tags","count":4}')}}]);
|
||||
1
assets/js/0e384e19.87469ea7.js
Normal file
1
assets/js/17896441.e82b9909.js
Normal file
1
assets/js/1be78505.525b2f68.js
Normal file
1
assets/js/1df93b7f.9d1ccb8d.js
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkthreetwo_docs=self.webpackChunkthreetwo_docs||[]).push([[237],{2617:function(e,t,n){n.r(t),n.d(t,{default:function(){return v}});var a=n(7294);function r(e){var t,n,a="";if("string"==typeof e||"number"==typeof e)a+=e;else if("object"==typeof e)if(Array.isArray(e))for(t=0;t<e.length;t++)e[t]&&(n=r(e[t]))&&(a&&(a+=" "),a+=n);else for(t in e)e[t]&&(a&&(a+=" "),a+=t);return a}function l(){for(var e,t,n=0,a="";n<arguments.length;)(e=arguments[n++])&&(t=r(e))&&(a&&(a+=" "),a+=t);return a}var c=n(3285),i=n(9960),o=n(2263),s="heroBanner_qdFl",m="buttons_AeoN",u=n(3117),d="features_xdhU",f="featureSvg__8YW";const h=[{title:"Don't Hate, Curate.",image:"./img/curate.svg",description:a.createElement(a.Fragment,null,"Browse, search, discover your comic book library that you have so proudly built from scratch.")},{title:"No Fuss DC++",image:"./img/dcpp.svg",description:a.createElement(a.Fragment,null,"With first-class support for the excellent ",a.createElement("code",null,"AirDC++"),", find and acquire hidden gems.")},{title:"Shine with Comic Vine",image:"./img/cv.svg",description:a.createElement(a.Fragment,null,"Scrape Comic Vine's exhaustive comic book database to analyze and clean up your library's metadata.")}];function g(e){let{title:t,image:n,description:r}=e;return a.createElement("div",{className:l("col col--4")},a.createElement("div",{className:"text--center"},a.createElement("img",{className:f,alt:t,src:n})),a.createElement("div",{className:"text--center padding-horiz--md"},a.createElement("h3",null,t),a.createElement("p",null,r)))}function p(){return a.createElement("section",{className:d},a.createElement("div",{className:"container"},a.createElement("div",{className:"row"},h.map(((e,t)=>a.createElement(g,(0,u.Z)({key:t},e)))))))}function E(){const{siteConfig:e}=(0,o.Z)();return a.createElement("header",{className:l("hero hero--primary",s)},a.createElement("div",{className:"container"},a.createElement("h1",{className:"hero__title"},e.title),a.createElement("p",{className:"hero__subtitle"},e.tagline),a.createElement("div",{className:m},a.createElement(i.Z,{className:"button button--secondary button--lg",to:"/docs/intro"},"Start Flipping!"))))}function v(){const{siteConfig:e}=(0,o.Z)();return a.createElement(c.Z,{title:`Hello from ${e.title}`,description:"Description will go into a meta tag in <head />"},a.createElement(E,null),a.createElement("main",null,a.createElement(p,null)))}}}]);
|
||||
1
assets/js/1f391b9e.332599b6.js
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkthreetwo_docs=self.webpackChunkthreetwo_docs||[]).push([[85],{4247:function(e,n,t){t.r(n),t.d(n,{default:function(){return u}});var l=t(7294),a=t(4334),r=t(1944),c=t(5281),i=t(3285),o=t(9588),s=t(9407),m="mdxPageWrapper_j9I6";function u(e){const{content:n}=e,{metadata:{title:t,description:u,frontMatter:d}}=n,{wrapperClassName:f,hide_table_of_contents:v}=d;return l.createElement(r.FG,{className:(0,a.Z)(f??c.k.wrapper.mdxPages,c.k.page.mdxPage)},l.createElement(r.d,{title:t,description:u}),l.createElement(i.Z,null,l.createElement("main",{className:"container container--fluid margin-vert--lg"},l.createElement("div",{className:(0,a.Z)("row",m)},l.createElement("div",{className:(0,a.Z)("col",!v&&"col--8")},l.createElement("article",null,l.createElement(o.Z,null,l.createElement(n,null)))),!v&&n.toc.length>0&&l.createElement("div",{className:"col col--2"},l.createElement(s.Z,{toc:n.toc,minHeadingLevel:d.toc_min_heading_level,maxHeadingLevel:d.toc_max_heading_level}))))))}},9407:function(e,n,t){t.d(n,{Z:function(){return o}});var l=t(3117),a=t(7294),r=t(4334),c=t(3743),i="tableOfContents_bqdL";function o(e){let{className:n,...t}=e;return a.createElement("div",{className:(0,r.Z)(i,"thin-scrollbar",n)},a.createElement(c.Z,(0,l.Z)({},t,{linkClassName:"table-of-contents__link toc-highlight",linkActiveClassName:"table-of-contents__link--active"})))}},3743:function(e,n,t){t.d(n,{Z:function(){return v}});var l=t(3117),a=t(7294),r=t(6668);function c(e){const n=e.map((e=>({...e,parentIndex:-1,children:[]}))),t=Array(7).fill(-1);n.forEach(((e,n)=>{const l=t.slice(2,e.level);e.parentIndex=Math.max(...l),t[e.level]=n}));const l=[];return n.forEach((e=>{const{parentIndex:t,...a}=e;t>=0?n[t].children.push(a):l.push(a)})),l}function i(e){let{toc:n,minHeadingLevel:t,maxHeadingLevel:l}=e;return n.flatMap((e=>{const n=i({toc:e.children,minHeadingLevel:t,maxHeadingLevel:l});return function(e){return e.level>=t&&e.level<=l}(e)?[{...e,children:n}]:n}))}function o(e){const n=e.getBoundingClientRect();return n.top===n.bottom?o(e.parentNode):n}function s(e,n){let{anchorTopOffset:t}=n;const l=e.find((e=>o(e).top>=t));if(l){return function(e){return e.top>0&&e.bottom<window.innerHeight/2}(o(l))?l:e[e.indexOf(l)-1]??null}return e[e.length-1]??null}function m(){const e=(0,a.useRef)(0),{navbar:{hideOnScroll:n}}=(0,r.L)();return(0,a.useEffect)((()=>{e.current=n?0:document.querySelector(".navbar").clientHeight}),[n]),e}function u(e){const n=(0,a.useRef)(void 0),t=m();(0,a.useEffect)((()=>{if(!e)return()=>{};const{linkClassName:l,linkActiveClassName:a,minHeadingLevel:r,maxHeadingLevel:c}=e;function i(){const e=function(e){return Array.from(document.getElementsByClassName(e))}(l),i=function(e){let{minHeadingLevel:n,maxHeadingLevel:t}=e;const l=[];for(let a=n;a<=t;a+=1)l.push(`h${a}.anchor`);return Array.from(document.querySelectorAll(l.join()))}({minHeadingLevel:r,maxHeadingLevel:c}),o=s(i,{anchorTopOffset:t.current}),m=e.find((e=>o&&o.id===function(e){return decodeURIComponent(e.href.substring(e.href.indexOf("#")+1))}(e)));e.forEach((e=>{!function(e,t){t?(n.current&&n.current!==e&&n.current.classList.remove(a),e.classList.add(a),n.current=e):e.classList.remove(a)}(e,e===m)}))}return document.addEventListener("scroll",i),document.addEventListener("resize",i),i(),()=>{document.removeEventListener("scroll",i),document.removeEventListener("resize",i)}}),[e,t])}function d(e){let{toc:n,className:t,linkClassName:l,isChild:r}=e;return n.length?a.createElement("ul",{className:r?void 0:t},n.map((e=>a.createElement("li",{key:e.id},a.createElement("a",{href:`#${e.id}`,className:l??void 0,dangerouslySetInnerHTML:{__html:e.value}}),a.createElement(d,{isChild:!0,toc:e.children,className:t,linkClassName:l}))))):null}var f=a.memo(d);function v(e){let{toc:n,className:t="table-of-contents table-of-contents__left-border",linkClassName:o="table-of-contents__link",linkActiveClassName:s,minHeadingLevel:m,maxHeadingLevel:d,...v}=e;const g=(0,r.L)(),h=m??g.tableOfContents.minHeadingLevel,L=d??g.tableOfContents.maxHeadingLevel,p=function(e){let{toc:n,minHeadingLevel:t,maxHeadingLevel:l}=e;return(0,a.useMemo)((()=>i({toc:c(n),minHeadingLevel:t,maxHeadingLevel:l})),[n,t,l])}({toc:n,minHeadingLevel:h,maxHeadingLevel:L});return u((0,a.useMemo)((()=>{if(o&&s)return{linkClassName:o,linkActiveClassName:s,minHeadingLevel:h,maxHeadingLevel:L}}),[o,s,h,L])),a.createElement(f,(0,l.Z)({toc:p,className:t,linkClassName:o},v))}}}]);
|
||||
1
assets/js/30b2e18d.8d60ad54.js
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkthreetwo_docs=self.webpackChunkthreetwo_docs||[]).push([[787],{5312:function(e){e.exports=JSON.parse('{"label":"hola","permalink":"/threetwo-docs/blog/tags/hola","allTagsPath":"/threetwo-docs/blog/tags","count":1}')}}]);
|
||||
1
assets/js/393be207.ceb121b1.js
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkthreetwo_docs=self.webpackChunkthreetwo_docs||[]).push([[414],{3905:function(e,t,r){r.d(t,{Zo:function(){return l},kt:function(){return m}});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function c(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?a(Object(r),!0).forEach((function(t){o(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):a(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function p(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},a=Object.keys(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n<a.length;n++)r=a[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var i=n.createContext({}),u=function(e){var t=n.useContext(i),r=t;return e&&(r="function"==typeof e?e(t):c(c({},t),e)),r},l=function(e){var t=u(e.components);return n.createElement(i.Provider,{value:t},e.children)},f={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},s=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,a=e.originalType,i=e.parentName,l=p(e,["components","mdxType","originalType","parentName"]),s=u(r),m=o,d=s["".concat(i,".").concat(m)]||s[m]||f[m]||a;return r?n.createElement(d,c(c({ref:t},l),{},{components:r})):n.createElement(d,c({ref:t},l))}));function m(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var a=r.length,c=new Array(a);c[0]=s;var p={};for(var i in t)hasOwnProperty.call(t,i)&&(p[i]=t[i]);p.originalType=e,p.mdxType="string"==typeof e?e:o,c[1]=p;for(var u=2;u<a;u++)c[u]=r[u];return n.createElement.apply(null,c)}return n.createElement.apply(null,r)}s.displayName="MDXCreateElement"},3123:function(e,t,r){r.r(t),r.d(t,{contentTitle:function(){return c},default:function(){return l},frontMatter:function(){return a},metadata:function(){return p},toc:function(){return i}});var n=r(3117),o=(r(7294),r(3905));const a={title:"Markdown page example"},c="Markdown page example",p={type:"mdx",permalink:"/threetwo-docs/markdown-page",source:"@site/src/pages/markdown-page.md",title:"Markdown page example",description:"You don't need React to write simple standalone pages.",frontMatter:{title:"Markdown page example"}},i=[],u={toc:i};function l(e){let{components:t,...r}=e;return(0,o.kt)("wrapper",(0,n.Z)({},u,r,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"markdown-page-example"},"Markdown page example"),(0,o.kt)("p",null,"You don't need React to write simple standalone pages."))}l.isMDXComponent=!0}}]);
|
||||
1
assets/js/41b02a5e.0b37f803.js
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkthreetwo_docs=self.webpackChunkthreetwo_docs||[]).push([[798],{5745:function(e){e.exports=JSON.parse('{"name":"docusaurus-plugin-content-pages","id":"default"}')}}]);
|
||||
1
assets/js/421237dd.bfa5c9d7.js
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkthreetwo_docs=self.webpackChunkthreetwo_docs||[]).push([[458],{7710:function(o){o.exports=JSON.parse('[{"label":"facebook","permalink":"/threetwo-docs/blog/tags/facebook","count":1},{"label":"hello","permalink":"/threetwo-docs/blog/tags/hello","count":2},{"label":"docusaurus","permalink":"/threetwo-docs/blog/tags/docusaurus","count":4},{"label":"hola","permalink":"/threetwo-docs/blog/tags/hola","count":1}]')}}]);
|
||||
1
assets/js/4bcc3c7c.bcad081d.js
Normal file
1
assets/js/5281b7a2.ae829f25.js
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkthreetwo_docs=self.webpackChunkthreetwo_docs||[]).push([[927],{3905:function(e,t,r){r.d(t,{Zo:function(){return u},kt:function(){return d}});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function a(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?i(Object(r),!0).forEach((function(t){o(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):i(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function c(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var l=n.createContext({}),s=function(e){var t=n.useContext(l),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},u=function(e){var t=s(e.components);return n.createElement(l.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,i=e.originalType,l=e.parentName,u=c(e,["components","mdxType","originalType","parentName"]),m=s(r),d=o,h=m["".concat(l,".").concat(d)]||m[d]||p[d]||i;return r?n.createElement(h,a(a({ref:t},u),{},{components:r})):n.createElement(h,a({ref:t},u))}));function d(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=r.length,a=new Array(i);a[0]=m;var c={};for(var l in t)hasOwnProperty.call(t,l)&&(c[l]=t[l]);c.originalType=e,c.mdxType="string"==typeof e?e:o,a[1]=c;for(var s=2;s<i;s++)a[s]=r[s];return n.createElement.apply(null,a)}return n.createElement.apply(null,r)}m.displayName="MDXCreateElement"},1527:function(e,t,r){r.r(t),r.d(t,{assets:function(){return l},contentTitle:function(){return a},default:function(){return p},frontMatter:function(){return i},metadata:function(){return c},toc:function(){return s}});var n=r(3117),o=(r(7294),r(3905));const i={sidebar_position:4,id:"architecture",title:"Technical Architecture"},a=void 0,c={unversionedId:"architecture",id:"architecture",title:"Technical Architecture",description:"High-level Architecture",source:"@site/docs/architecture.md",sourceDirName:".",slug:"/architecture",permalink:"/threetwo-docs/docs/architecture",draft:!1,editUrl:"https://github.com/facebook/docusaurus/edit/main/website/docs/architecture.md",tags:[],version:"current",sidebarPosition:4,frontMatter:{sidebar_position:4,id:"architecture",title:"Technical Architecture"},sidebar:"tutorialSidebar",previous:{title:"Resources & Help",permalink:"/threetwo-docs/docs/resources"}},l={},s=[{value:"High-level Architecture",id:"high-level-architecture",level:3},{value:"Technical stack",id:"technical-stack",level:3}],u={toc:s};function p(e){let{components:t,...r}=e;return(0,o.kt)("wrapper",(0,n.Z)({},u,r,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h3",{id:"high-level-architecture"},"High-level Architecture"),(0,o.kt)("p",null,(0,o.kt)("inlineCode",{parentName:"p"},"ThreeTwo!"),", the app is built upon the microservice architecture. The UI is a standalone ",(0,o.kt)("inlineCode",{parentName:"p"},"node.js")," app and the rest of the logic is broken into microservices."),(0,o.kt)("p",null,"The microservices deal with: "),(0,o.kt)("ol",null,(0,o.kt)("li",{parentName:"ol"},"Library functions (model orchestration, CRUD ops on comics, metadata)"),(0,o.kt)("li",{parentName:"ol"},"Comic Vine (scraping issues, volumes and more)"),(0,o.kt)("li",{parentName:"ol"},"Grand Comics Database (scraping, aggregations and more)"),(0,o.kt)("li",{parentName:"ol"},"Helpers (image transformation, file-system ops, compression/uncompression)")),(0,o.kt)("h3",{id:"technical-stack"},"Technical stack"),(0,o.kt)("p",null,(0,o.kt)("inlineCode",{parentName:"p"},"ThreeTwo!")," is written in ",(0,o.kt)("inlineCode",{parentName:"p"},"TypeScript")," from UI to the services layer."),(0,o.kt)("p",null,"The technologies used are: "),(0,o.kt)("ol",null,(0,o.kt)("li",{parentName:"ol"},"React"),(0,o.kt)("li",{parentName:"ol"},"Redux"),(0,o.kt)("li",{parentName:"ol"},"moleculer"),(0,o.kt)("li",{parentName:"ol"},"RabbitMQ"),(0,o.kt)("li",{parentName:"ol"},"socket.io"),(0,o.kt)("li",{parentName:"ol"},"node.js"),(0,o.kt)("li",{parentName:"ol"},"Express"),(0,o.kt)("li",{parentName:"ol"},"MongoDB"),(0,o.kt)("li",{parentName:"ol"},"mongoose")))}p.isMDXComponent=!0}}]);
|
||||
1
assets/js/529.52d941ca.js
Normal file
1
assets/js/588.06d53d63.js
Normal file
1
assets/js/59362658.03c3ef25.js
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkthreetwo_docs=self.webpackChunkthreetwo_docs||[]).push([[267],{3905:function(e,t,r){r.d(t,{Zo:function(){return i},kt:function(){return f}});var o=r(7294);function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,o)}return r}function u(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?a(Object(r),!0).forEach((function(t){n(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):a(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function s(e,t){if(null==e)return{};var r,o,n=function(e,t){if(null==e)return{};var r,o,n={},a=Object.keys(e);for(o=0;o<a.length;o++)r=a[o],t.indexOf(r)>=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o<a.length;o++)r=a[o],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var c=o.createContext({}),l=function(e){var t=o.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):u(u({},t),e)),r},i=function(e){var t=l(e.components);return o.createElement(c.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},m=o.forwardRef((function(e,t){var r=e.components,n=e.mdxType,a=e.originalType,c=e.parentName,i=s(e,["components","mdxType","originalType","parentName"]),m=l(r),f=n,b=m["".concat(c,".").concat(f)]||m[f]||p[f]||a;return r?o.createElement(b,u(u({ref:t},i),{},{components:r})):o.createElement(b,u({ref:t},i))}));function f(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=r.length,u=new Array(a);u[0]=m;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:n,u[1]=s;for(var l=2;l<a;l++)u[l]=r[l];return o.createElement.apply(null,u)}return o.createElement.apply(null,r)}m.displayName="MDXCreateElement"},8642:function(e,t,r){r.r(t),r.d(t,{assets:function(){return c},contentTitle:function(){return u},default:function(){return p},frontMatter:function(){return a},metadata:function(){return s},toc:function(){return l}});var o=r(3117),n=(r(7294),r(3905));const a={slug:"mdx-blog-post",title:"MDX Blog Post",authors:["slorber"],tags:["docusaurus"]},u=void 0,s={permalink:"/threetwo-docs/blog/mdx-blog-post",editUrl:"https://github.com/facebook/docusaurus/edit/main/website/blog/blog/2021-08-01-mdx-blog-post.mdx",source:"@site/blog/2021-08-01-mdx-blog-post.mdx",title:"MDX Blog Post",description:"Blog posts support Docusaurus Markdown features, such as MDX.",date:"2021-08-01T00:00:00.000Z",formattedDate:"August 1, 2021",tags:[{label:"docusaurus",permalink:"/threetwo-docs/blog/tags/docusaurus"}],readingTime:.175,hasTruncateMarker:!1,authors:[{name:"S\xe9bastien Lorber",title:"Docusaurus maintainer",url:"https://sebastienlorber.com",imageURL:"https://github.com/slorber.png",key:"slorber"}],frontMatter:{slug:"mdx-blog-post",title:"MDX Blog Post",authors:["slorber"],tags:["docusaurus"]},prevItem:{title:"Welcome",permalink:"/threetwo-docs/blog/welcome"},nextItem:{title:"Long Blog Post",permalink:"/threetwo-docs/blog/long-blog-post"}},c={authorsImageUrls:[void 0]},l=[],i={toc:l};function p(e){let{components:t,...r}=e;return(0,n.kt)("wrapper",(0,o.Z)({},i,r,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("p",null,"Blog posts support ",(0,n.kt)("a",{parentName:"p",href:"https://docusaurus.io/docs/markdown-features"},"Docusaurus Markdown features"),", such as ",(0,n.kt)("a",{parentName:"p",href:"https://mdxjs.com/"},"MDX"),"."),(0,n.kt)("admonition",{type:"tip"},(0,n.kt)("p",{parentName:"admonition"},"Use the power of React to create interactive blog posts."),(0,n.kt)("pre",{parentName:"admonition"},(0,n.kt)("code",{parentName:"pre",className:"language-js"},"<button onClick={() => alert('button clicked!')}>Click me!</button>\n")),(0,n.kt)("button",{onClick:()=>alert("button clicked!")},"Click me!")))}p.isMDXComponent=!0}}]);
|
||||
1
assets/js/5946dff2.40a759c3.js
Normal file
1
assets/js/6875c492.636024cf.js
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkthreetwo_docs=self.webpackChunkthreetwo_docs||[]).push([[610],{9703:function(e,t,a){a.d(t,{Z:function(){return s}});var n=a(7294),l=a(5999),r=a(2244);function s(e){const{metadata:t}=e,{previousPage:a,nextPage:s}=t;return n.createElement("nav",{className:"pagination-nav","aria-label":(0,l.I)({id:"theme.blog.paginator.navAriaLabel",message:"Blog list page navigation",description:"The ARIA label for the blog pagination"})},a&&n.createElement(r.Z,{permalink:a,title:n.createElement(l.Z,{id:"theme.blog.paginator.newerEntries",description:"The label used to navigate to the newer blog posts page (previous page)"},"Newer Entries")}),s&&n.createElement(r.Z,{permalink:s,title:n.createElement(l.Z,{id:"theme.blog.paginator.olderEntries",description:"The label used to navigate to the older blog posts page (next page)"},"Older Entries"),isNext:!0}))}},9985:function(e,t,a){a.d(t,{Z:function(){return s}});var n=a(7294),l=a(9460),r=a(390);function s(e){let{items:t,component:a=r.Z}=e;return n.createElement(n.Fragment,null,t.map((e=>{let{content:t}=e;return n.createElement(l.n,{key:t.metadata.permalink,content:t},n.createElement(a,null,n.createElement(t,null)))})))}},1714:function(e,t,a){a.r(t),a.d(t,{default:function(){return E}});var n=a(7294),l=a(4334),r=a(5999),s=a(8824),o=a(1944),i=a(5281),c=a(9960),g=a(9058),m=a(9703),u=a(197),p=a(9985);function d(e){const t=function(){const{selectMessage:e}=(0,s.c)();return t=>e(t,(0,r.I)({id:"theme.blog.post.plurals",description:'Pluralized label for "{count} posts". Use as much plural forms (separated by "|") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)',message:"One post|{count} posts"},{count:t}))}();return(0,r.I)({id:"theme.blog.tagTitle",description:"The title of the page for a blog tag",message:'{nPosts} tagged with "{tagName}"'},{nPosts:t(e.count),tagName:e.label})}function h(e){let{tag:t}=e;const a=d(t);return n.createElement(n.Fragment,null,n.createElement(o.d,{title:a}),n.createElement(u.Z,{tag:"blog_tags_posts"}))}function b(e){let{tag:t,items:a,sidebar:l,listMetadata:s}=e;const o=d(t);return n.createElement(g.Z,{sidebar:l},n.createElement("header",{className:"margin-bottom--xl"},n.createElement("h1",null,o),n.createElement(c.Z,{href:t.allTagsPath},n.createElement(r.Z,{id:"theme.tags.tagsPageLink",description:"The label of the link targeting the tag list page"},"View All Tags"))),n.createElement(p.Z,{items:a}),n.createElement(m.Z,{metadata:s}))}function E(e){return n.createElement(o.FG,{className:(0,l.Z)(i.k.wrapper.blogPages,i.k.page.blogTagPostListPage)},n.createElement(h,e),n.createElement(b,e))}}}]);
|
||||
1
assets/js/73664a40.8a0c5940.js
Normal file
1
assets/js/7661071f.955697ac.js
Normal file
1
assets/js/76858a84.c157068c.js
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkthreetwo_docs=self.webpackChunkthreetwo_docs||[]).push([[633],{2401:function(e){e.exports=JSON.parse('{"permalink":"/threetwo-docs/blog/tags/hola","page":1,"postsPerPage":10,"totalPages":1,"totalCount":1,"blogDescription":"Blog","blogTitle":"Blog"}')}}]);
|
||||
1
assets/js/7b2682fd.179a6852.js
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkthreetwo_docs=self.webpackChunkthreetwo_docs||[]).push([[480],{4469:function(e){e.exports=JSON.parse('{"name":"docusaurus-plugin-content-blog","id":"default"}')}}]);
|
||||
1
assets/js/7d4e8ca2.18b2ee1c.js
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkthreetwo_docs=self.webpackChunkthreetwo_docs||[]).push([[999],{9431:function(e){e.exports=JSON.parse('{"permalink":"/threetwo-docs/blog/tags/docusaurus","page":1,"postsPerPage":10,"totalPages":1,"totalCount":4,"blogDescription":"Blog","blogTitle":"Blog"}')}}]);
|
||||
1
assets/js/7f190043.6fbe18b8.js
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkthreetwo_docs=self.webpackChunkthreetwo_docs||[]).push([[453],{3769:function(e){e.exports=JSON.parse('{"name":"docusaurus-plugin-content-docs","id":"default"}')}}]);
|
||||
1
assets/js/814f3328.dac5ec67.js
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkthreetwo_docs=self.webpackChunkthreetwo_docs||[]).push([[535],{5641:function(t){t.exports=JSON.parse('{"title":"Recent posts","items":[{"title":"Welcome","permalink":"/threetwo-docs/blog/welcome"},{"title":"MDX Blog Post","permalink":"/threetwo-docs/blog/mdx-blog-post"},{"title":"Long Blog Post","permalink":"/threetwo-docs/blog/long-blog-post"},{"title":"First Blog Post","permalink":"/threetwo-docs/blog/first-blog-post"}]}')}}]);
|
||||
1
assets/js/86a5cf17.29294142.js
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkthreetwo_docs=self.webpackChunkthreetwo_docs||[]).push([[32],{6237:function(e){e.exports=JSON.parse('{"label":"facebook","permalink":"/threetwo-docs/blog/tags/facebook","allTagsPath":"/threetwo-docs/blog/tags","count":1}')}}]);
|
||||
1
assets/js/8717b14a.db66babc.js
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkthreetwo_docs=self.webpackChunkthreetwo_docs||[]).push([[948],{3905:function(e,t,r){r.d(t,{Zo:function(){return s},kt:function(){return f}});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function l(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function a(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?l(Object(r),!0).forEach((function(t){o(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):l(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function i(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},l=Object.keys(e);for(n=0;n<l.length;n++)r=l[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n<l.length;n++)r=l[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var u=n.createContext({}),c=function(e){var t=n.useContext(u),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},s=function(e){var t=c(e.components);return n.createElement(u.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},g=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,l=e.originalType,u=e.parentName,s=i(e,["components","mdxType","originalType","parentName"]),g=c(r),f=o,m=g["".concat(u,".").concat(f)]||g[f]||p[f]||l;return r?n.createElement(m,a(a({ref:t},s),{},{components:r})):n.createElement(m,a({ref:t},s))}));function f(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var l=r.length,a=new Array(l);a[0]=g;var i={};for(var u in t)hasOwnProperty.call(t,u)&&(i[u]=t[u]);i.originalType=e,i.mdxType="string"==typeof e?e:o,a[1]=i;for(var c=2;c<l;c++)a[c]=r[c];return n.createElement.apply(null,a)}return n.createElement.apply(null,r)}g.displayName="MDXCreateElement"},3352:function(e,t,r){r.r(t),r.d(t,{assets:function(){return u},contentTitle:function(){return a},default:function(){return p},frontMatter:function(){return l},metadata:function(){return i},toc:function(){return c}});var n=r(3117),o=(r(7294),r(3905));const l={slug:"long-blog-post",title:"Long Blog Post",authors:"endi",tags:["hello","docusaurus"]},a=void 0,i={permalink:"/threetwo-docs/blog/long-blog-post",editUrl:"https://github.com/facebook/docusaurus/edit/main/website/blog/blog/2019-05-29-long-blog-post.md",source:"@site/blog/2019-05-29-long-blog-post.md",title:"Long Blog Post",description:"This is the summary of a very long blog post,",date:"2019-05-29T00:00:00.000Z",formattedDate:"May 29, 2019",tags:[{label:"hello",permalink:"/threetwo-docs/blog/tags/hello"},{label:"docusaurus",permalink:"/threetwo-docs/blog/tags/docusaurus"}],readingTime:2.05,hasTruncateMarker:!0,authors:[{name:"Endilie Yacop Sucipto",title:"Maintainer of Docusaurus",url:"https://github.com/endiliey",imageURL:"https://github.com/endiliey.png",key:"endi"}],frontMatter:{slug:"long-blog-post",title:"Long Blog Post",authors:"endi",tags:["hello","docusaurus"]},prevItem:{title:"MDX Blog Post",permalink:"/threetwo-docs/blog/mdx-blog-post"},nextItem:{title:"First Blog Post",permalink:"/threetwo-docs/blog/first-blog-post"}},u={authorsImageUrls:[void 0]},c=[],s={toc:c};function p(e){let{components:t,...r}=e;return(0,o.kt)("wrapper",(0,n.Z)({},s,r,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("p",null,"This is the summary of a very long blog post,"),(0,o.kt)("p",null,"Use a ",(0,o.kt)("inlineCode",{parentName:"p"},"\x3c!--")," ",(0,o.kt)("inlineCode",{parentName:"p"},"truncate")," ",(0,o.kt)("inlineCode",{parentName:"p"},"--\x3e")," comment to limit blog post size in the list view."))}p.isMDXComponent=!0}}]);
|
||||
1
assets/js/925b3f96.e60c0a6e.js
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkthreetwo_docs=self.webpackChunkthreetwo_docs||[]).push([[3],{3905:function(e,t,r){r.d(t,{Zo:function(){return l},kt:function(){return g}});var o=r(7294);function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,o)}return r}function i(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?a(Object(r),!0).forEach((function(t){n(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):a(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function u(e,t){if(null==e)return{};var r,o,n=function(e,t){if(null==e)return{};var r,o,n={},a=Object.keys(e);for(o=0;o<a.length;o++)r=a[o],t.indexOf(r)>=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o<a.length;o++)r=a[o],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var s=o.createContext({}),c=function(e){var t=o.useContext(s),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},l=function(e){var t=c(e.components);return o.createElement(s.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},m=o.forwardRef((function(e,t){var r=e.components,n=e.mdxType,a=e.originalType,s=e.parentName,l=u(e,["components","mdxType","originalType","parentName"]),m=c(r),g=n,f=m["".concat(s,".").concat(g)]||m[g]||p[g]||a;return r?o.createElement(f,i(i({ref:t},l),{},{components:r})):o.createElement(f,i({ref:t},l))}));function g(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=r.length,i=new Array(a);i[0]=m;var u={};for(var s in t)hasOwnProperty.call(t,s)&&(u[s]=t[s]);u.originalType=e,u.mdxType="string"==typeof e?e:n,i[1]=u;for(var c=2;c<a;c++)i[c]=r[c];return o.createElement.apply(null,i)}return o.createElement.apply(null,r)}m.displayName="MDXCreateElement"},8856:function(e,t,r){r.r(t),r.d(t,{assets:function(){return s},contentTitle:function(){return i},default:function(){return p},frontMatter:function(){return a},metadata:function(){return u},toc:function(){return c}});var o=r(3117),n=(r(7294),r(3905));const a={slug:"first-blog-post",title:"First Blog Post",authors:{name:"Gao Wei",title:"Docusaurus Core Team",url:"https://github.com/wgao19",image_url:"https://github.com/wgao19.png"},tags:["hola","docusaurus"]},i=void 0,u={permalink:"/threetwo-docs/blog/first-blog-post",editUrl:"https://github.com/facebook/docusaurus/edit/main/website/blog/blog/2019-05-28-first-blog-post.md",source:"@site/blog/2019-05-28-first-blog-post.md",title:"First Blog Post",description:"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet",date:"2019-05-28T00:00:00.000Z",formattedDate:"May 28, 2019",tags:[{label:"hola",permalink:"/threetwo-docs/blog/tags/hola"},{label:"docusaurus",permalink:"/threetwo-docs/blog/tags/docusaurus"}],readingTime:.12,hasTruncateMarker:!1,authors:[{name:"Gao Wei",title:"Docusaurus Core Team",url:"https://github.com/wgao19",image_url:"https://github.com/wgao19.png",imageURL:"https://github.com/wgao19.png"}],frontMatter:{slug:"first-blog-post",title:"First Blog Post",authors:{name:"Gao Wei",title:"Docusaurus Core Team",url:"https://github.com/wgao19",image_url:"https://github.com/wgao19.png",imageURL:"https://github.com/wgao19.png"},tags:["hola","docusaurus"]},prevItem:{title:"Long Blog Post",permalink:"/threetwo-docs/blog/long-blog-post"}},s={authorsImageUrls:[void 0]},c=[],l={toc:c};function p(e){let{components:t,...r}=e;return(0,n.kt)("wrapper",(0,o.Z)({},l,r,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"))}p.isMDXComponent=!0}}]);
|
||||
1
assets/js/935f2afb.ae2578cd.js
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkthreetwo_docs=self.webpackChunkthreetwo_docs||[]).push([[53],{1109:function(e){e.exports=JSON.parse('{"pluginId":"default","version":"current","label":"Next","banner":null,"badge":false,"noIndex":false,"className":"docs-version-current","isLast":true,"docsSidebars":{"tutorialSidebar":[{"type":"link","label":"Introduction","href":"/threetwo-docs/docs/intro","docId":"intro"},{"type":"link","label":"Install ThreeTwo! on unRAID with the docker-compose plugin","href":"/threetwo-docs/docs/unRAID_dockercompose","docId":"unRAID_dockercompose"},{"type":"link","label":"Install ThreeTwo! on unRaid","href":"/threetwo-docs/docs/unraid_install","docId":"unraid_install"},{"type":"link","label":"Resources & Help","href":"/threetwo-docs/docs/resources","docId":"resources"},{"type":"link","label":"Technical Architecture","href":"/threetwo-docs/docs/architecture","docId":"architecture"}]},"docs":{"architecture":{"id":"architecture","title":"Technical Architecture","description":"High-level Architecture","sidebar":"tutorialSidebar"},"intro":{"id":"intro","title":"Introduction","description":"ThreeTwo! is a comic book curation app.","sidebar":"tutorialSidebar"},"resources":{"id":"resources","title":"Resources & Help","description":"Quick Links","sidebar":"tutorialSidebar"},"unRAID_dockercompose":{"id":"unRAID_dockercompose","title":"Install ThreeTwo! on unRAID with the docker-compose plugin","description":"Notes","sidebar":"tutorialSidebar"},"unraid_install":{"id":"unraid_install","title":"Install ThreeTwo! on unRaid","description":"Notes","sidebar":"tutorialSidebar"}}}')}}]);
|
||||
1
assets/js/972.43c3e530.js
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkthreetwo_docs=self.webpackChunkthreetwo_docs||[]).push([[972],{4972:function(e,t,n){n.r(t),n.d(t,{default:function(){return c}});var a=n(7294),o=n(5999),l=n(1944),r=n(3285);function c(){return a.createElement(a.Fragment,null,a.createElement(l.d,{title:(0,o.I)({id:"theme.NotFound.title",message:"Page Not Found"})}),a.createElement(r.Z,null,a.createElement("main",{className:"container margin-vert--xl"},a.createElement("div",{className:"row"},a.createElement("div",{className:"col col--6 col--offset-3"},a.createElement("h1",{className:"hero__title"},a.createElement(o.Z,{id:"theme.NotFound.title",description:"The title of the 404 page"},"Page Not Found")),a.createElement("p",null,a.createElement(o.Z,{id:"theme.NotFound.p1",description:"The first paragraph of the 404 page"},"We could not find what you were looking for.")),a.createElement("p",null,a.createElement(o.Z,{id:"theme.NotFound.p2",description:"The 2nd paragraph of the 404 page"},"Please contact the owner of the site that linked you to the original URL and let them know their link is broken.")))))))}}}]);
|
||||
1
assets/js/9e4087bc.d6f18592.js
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkthreetwo_docs=self.webpackChunkthreetwo_docs||[]).push([[608],{3169:function(e,t,a){a.r(t),a.d(t,{default:function(){return o}});var r=a(7294),n=a(9960),l=a(5999),c=a(1944),i=a(3285);function m(e){let{year:t,posts:a}=e;return r.createElement(r.Fragment,null,r.createElement("h3",null,t),r.createElement("ul",null,a.map((e=>r.createElement("li",{key:e.metadata.date},r.createElement(n.Z,{to:e.metadata.permalink},e.metadata.formattedDate," - ",e.metadata.title))))))}function s(e){let{years:t}=e;return r.createElement("section",{className:"margin-vert--lg"},r.createElement("div",{className:"container"},r.createElement("div",{className:"row"},t.map(((e,t)=>r.createElement("div",{key:t,className:"col col--4 margin-vert--lg"},r.createElement(m,e)))))))}function o(e){let{archive:t}=e;const a=(0,l.I)({id:"theme.blog.archive.title",message:"Archive",description:"The page & hero title of the blog archive page"}),n=(0,l.I)({id:"theme.blog.archive.description",message:"Archive",description:"The page & hero description of the blog archive page"}),m=function(e){const t=e.reduceRight(((e,t)=>{const a=t.metadata.date.split("-")[0],r=e.get(a)??[];return e.set(a,[t,...r])}),new Map);return Array.from(t,(e=>{let[t,a]=e;return{year:t,posts:a}}))}(t.blogPosts);return r.createElement(r.Fragment,null,r.createElement(c.d,{title:a,description:n}),r.createElement(i.Z,null,r.createElement("header",{className:"hero hero--primary"},r.createElement("div",{className:"container"},r.createElement("h1",{className:"hero__title"},a),r.createElement("p",{className:"hero__subtitle"},n))),r.createElement("main",null,m.length>0&&r.createElement(s,{years:m}))))}}}]);
|
||||
1
assets/js/a6aa9e1f.5eeeb795.js
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkthreetwo_docs=self.webpackChunkthreetwo_docs||[]).push([[89],{46:function(e,t,n){n.r(t),n.d(t,{default:function(){return d}});var a=n(7294),r=n(4334),l=n(2263),i=n(1944),o=n(5281),c=n(9058),s=n(9703),m=n(197),g=n(9985);function u(e){const{metadata:t}=e,{siteConfig:{title:n}}=(0,l.Z)(),{blogDescription:r,blogTitle:o,permalink:c}=t,s="/"===c?n:o;return a.createElement(a.Fragment,null,a.createElement(i.d,{title:s,description:r}),a.createElement(m.Z,{tag:"blog_posts_list"}))}function p(e){const{metadata:t,items:n,sidebar:r}=e;return a.createElement(c.Z,{sidebar:r},a.createElement(g.Z,{items:n}),a.createElement(s.Z,{metadata:t}))}function d(e){return a.createElement(i.FG,{className:(0,r.Z)(o.k.wrapper.blogPages,o.k.page.blogListPage)},a.createElement(u,e),a.createElement(p,e))}},9703:function(e,t,n){n.d(t,{Z:function(){return i}});var a=n(7294),r=n(5999),l=n(2244);function i(e){const{metadata:t}=e,{previousPage:n,nextPage:i}=t;return a.createElement("nav",{className:"pagination-nav","aria-label":(0,r.I)({id:"theme.blog.paginator.navAriaLabel",message:"Blog list page navigation",description:"The ARIA label for the blog pagination"})},n&&a.createElement(l.Z,{permalink:n,title:a.createElement(r.Z,{id:"theme.blog.paginator.newerEntries",description:"The label used to navigate to the newer blog posts page (previous page)"},"Newer Entries")}),i&&a.createElement(l.Z,{permalink:i,title:a.createElement(r.Z,{id:"theme.blog.paginator.olderEntries",description:"The label used to navigate to the older blog posts page (next page)"},"Older Entries"),isNext:!0}))}},9985:function(e,t,n){n.d(t,{Z:function(){return i}});var a=n(7294),r=n(9460),l=n(390);function i(e){let{items:t,component:n=l.Z}=e;return a.createElement(a.Fragment,null,t.map((e=>{let{content:t}=e;return a.createElement(r.n,{key:t.metadata.permalink,content:t},a.createElement(n,null,a.createElement(t,null)))})))}}}]);
|
||||
1
assets/js/af04bd44.c8eebe36.js
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkthreetwo_docs=self.webpackChunkthreetwo_docs||[]).push([[737],{993:function(e){e.exports=JSON.parse('{"permalink":"/threetwo-docs/blog/tags/hello","page":1,"postsPerPage":10,"totalPages":1,"totalCount":2,"blogDescription":"Blog","blogTitle":"Blog"}')}}]);
|
||||
1
assets/js/c0248160.5fdee82f.js
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkthreetwo_docs=self.webpackChunkthreetwo_docs||[]).push([[830],{1996:function(e){e.exports=JSON.parse('{"permalink":"/threetwo-docs/blog","page":1,"postsPerPage":10,"totalPages":1,"totalCount":4,"blogDescription":"Blog","blogTitle":"Blog"}')}}]);
|
||||
1
assets/js/c0db966c.b77c9c86.js
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkthreetwo_docs=self.webpackChunkthreetwo_docs||[]).push([[45],{8980:function(e){e.exports=JSON.parse('{"label":"hello","permalink":"/threetwo-docs/blog/tags/hello","allTagsPath":"/threetwo-docs/blog/tags","count":2}')}}]);
|
||||
1
assets/js/ccc49370.f040c871.js
Normal file
1
assets/js/d214fa37.bab1e8fd.js
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkthreetwo_docs=self.webpackChunkthreetwo_docs||[]).push([[525],{8434:function(e){e.exports=JSON.parse('{"permalink":"/threetwo-docs/blog/tags/facebook","page":1,"postsPerPage":10,"totalPages":1,"totalCount":1,"blogDescription":"Blog","blogTitle":"Blog"}')}}]);
|
||||
1
assets/js/d92a3c43.694ec2c3.js
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkthreetwo_docs=self.webpackChunkthreetwo_docs||[]).push([[148],{3905:function(e,t,r){r.d(t,{Zo:function(){return l},kt:function(){return d}});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function c(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?i(Object(r),!0).forEach((function(t){o(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):i(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function s(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var a=n.createContext({}),u=function(e){var t=n.useContext(a),r=t;return e&&(r="function"==typeof e?e(t):c(c({},t),e)),r},l=function(e){var t=u(e.components);return n.createElement(a.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},f=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,i=e.originalType,a=e.parentName,l=s(e,["components","mdxType","originalType","parentName"]),f=u(r),d=o,h=f["".concat(a,".").concat(d)]||f[d]||p[d]||i;return r?n.createElement(h,c(c({ref:t},l),{},{components:r})):n.createElement(h,c({ref:t},l))}));function d(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var i=r.length,c=new Array(i);c[0]=f;var s={};for(var a in t)hasOwnProperty.call(t,a)&&(s[a]=t[a]);s.originalType=e,s.mdxType="string"==typeof e?e:o,c[1]=s;for(var u=2;u<i;u++)c[u]=r[u];return n.createElement.apply(null,c)}return n.createElement.apply(null,r)}f.displayName="MDXCreateElement"},8016:function(e,t,r){r.r(t),r.d(t,{assets:function(){return a},contentTitle:function(){return c},default:function(){return p},frontMatter:function(){return i},metadata:function(){return s},toc:function(){return u}});var n=r(3117),o=(r(7294),r(3905));const i={sidebar_position:3,id:"resources",title:"Resources & Help"},c=void 0,s={unversionedId:"resources",id:"resources",title:"Resources & Help",description:"Quick Links",source:"@site/docs/resources.md",sourceDirName:".",slug:"/resources",permalink:"/threetwo-docs/docs/resources",draft:!1,editUrl:"https://github.com/facebook/docusaurus/edit/main/website/docs/resources.md",tags:[],version:"current",sidebarPosition:3,frontMatter:{sidebar_position:3,id:"resources",title:"Resources & Help"},sidebar:"tutorialSidebar",previous:{title:"Install ThreeTwo! on unRaid",permalink:"/threetwo-docs/docs/unraid_install"},next:{title:"Technical Architecture",permalink:"/threetwo-docs/docs/architecture"}},a={},u=[{value:"Quick Links",id:"quick-links",level:3}],l={toc:u};function p(e){let{components:t,...r}=e;return(0,o.kt)("wrapper",(0,n.Z)({},l,r,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h3",{id:"quick-links"},"Quick Links"),(0,o.kt)("ul",null,(0,o.kt)("li",{parentName:"ul"},"The source code for ",(0,o.kt)("inlineCode",{parentName:"li"},"ThreeTwo!")," is located here: ",(0,o.kt)("a",{parentName:"li",href:"https://github.com/rishighan/threetwo"},"https://github.com/rishighan/threetwo")),(0,o.kt)("li",{parentName:"ul"},"The official ",(0,o.kt)("inlineCode",{parentName:"li"},"Discord")," server is here: ",(0,o.kt)("a",{parentName:"li",href:"https://discord.gg/DbpcSNuM"},"https://discord.gg/DbpcSNuM")),(0,o.kt)("li",{parentName:"ul"},"If you encounter problems, the best recourse to getting help is creating an issue on the repo, ",(0,o.kt)("a",{parentName:"li",href:"https://github.com/rishighan/threetwo/issues"},"https://github.com/rishighan/threetwo/issues")),(0,o.kt)("li",{parentName:"ul"},"For other questions just pop them into the Discord channel")))}p.isMDXComponent=!0}}]);
|
||||
1
assets/js/d9f32620.6f4564d1.js
Normal file
1
assets/js/e273c56f.25ec04c1.js
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkthreetwo_docs=self.webpackChunkthreetwo_docs||[]).push([[362],{3905:function(e,t,r){r.d(t,{Zo:function(){return l},kt:function(){return g}});var o=r(7294);function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,o)}return r}function i(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?a(Object(r),!0).forEach((function(t){n(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):a(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function u(e,t){if(null==e)return{};var r,o,n=function(e,t){if(null==e)return{};var r,o,n={},a=Object.keys(e);for(o=0;o<a.length;o++)r=a[o],t.indexOf(r)>=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o<a.length;o++)r=a[o],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var s=o.createContext({}),c=function(e){var t=o.useContext(s),r=t;return e&&(r="function"==typeof e?e(t):i(i({},t),e)),r},l=function(e){var t=c(e.components);return o.createElement(s.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},m=o.forwardRef((function(e,t){var r=e.components,n=e.mdxType,a=e.originalType,s=e.parentName,l=u(e,["components","mdxType","originalType","parentName"]),m=c(r),g=n,f=m["".concat(s,".").concat(g)]||m[g]||p[g]||a;return r?o.createElement(f,i(i({ref:t},l),{},{components:r})):o.createElement(f,i({ref:t},l))}));function g(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=r.length,i=new Array(a);i[0]=m;var u={};for(var s in t)hasOwnProperty.call(t,s)&&(u[s]=t[s]);u.originalType=e,u.mdxType="string"==typeof e?e:n,i[1]=u;for(var c=2;c<a;c++)i[c]=r[c];return o.createElement.apply(null,i)}return o.createElement.apply(null,r)}m.displayName="MDXCreateElement"},1947:function(e,t,r){r.r(t),r.d(t,{assets:function(){return s},contentTitle:function(){return i},default:function(){return p},frontMatter:function(){return a},metadata:function(){return u},toc:function(){return c}});var o=r(3117),n=(r(7294),r(3905));const a={slug:"first-blog-post",title:"First Blog Post",authors:{name:"Gao Wei",title:"Docusaurus Core Team",url:"https://github.com/wgao19",image_url:"https://github.com/wgao19.png"},tags:["hola","docusaurus"]},i=void 0,u={permalink:"/threetwo-docs/blog/first-blog-post",editUrl:"https://github.com/facebook/docusaurus/edit/main/website/blog/blog/2019-05-28-first-blog-post.md",source:"@site/blog/2019-05-28-first-blog-post.md",title:"First Blog Post",description:"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet",date:"2019-05-28T00:00:00.000Z",formattedDate:"May 28, 2019",tags:[{label:"hola",permalink:"/threetwo-docs/blog/tags/hola"},{label:"docusaurus",permalink:"/threetwo-docs/blog/tags/docusaurus"}],readingTime:.12,hasTruncateMarker:!1,authors:[{name:"Gao Wei",title:"Docusaurus Core Team",url:"https://github.com/wgao19",image_url:"https://github.com/wgao19.png",imageURL:"https://github.com/wgao19.png"}],frontMatter:{slug:"first-blog-post",title:"First Blog Post",authors:{name:"Gao Wei",title:"Docusaurus Core Team",url:"https://github.com/wgao19",image_url:"https://github.com/wgao19.png",imageURL:"https://github.com/wgao19.png"},tags:["hola","docusaurus"]},prevItem:{title:"Long Blog Post",permalink:"/threetwo-docs/blog/long-blog-post"}},s={authorsImageUrls:[void 0]},c=[],l={toc:c};function p(e){let{components:t,...r}=e;return(0,n.kt)("wrapper",(0,o.Z)({},l,r,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("p",null,"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet"))}p.isMDXComponent=!0}}]);
|
||||
1
assets/js/f4f34a3a.6687866f.js
Normal file
@@ -0,0 +1 @@
|
||||
"use strict";(self.webpackChunkthreetwo_docs=self.webpackChunkthreetwo_docs||[]).push([[636],{3905:function(e,t,r){r.d(t,{Zo:function(){return i},kt:function(){return f}});var o=r(7294);function n(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,o)}return r}function u(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?a(Object(r),!0).forEach((function(t){n(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):a(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}function s(e,t){if(null==e)return{};var r,o,n=function(e,t){if(null==e)return{};var r,o,n={},a=Object.keys(e);for(o=0;o<a.length;o++)r=a[o],t.indexOf(r)>=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o<a.length;o++)r=a[o],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}var c=o.createContext({}),l=function(e){var t=o.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):u(u({},t),e)),r},i=function(e){var t=l(e.components);return o.createElement(c.Provider,{value:t},e.children)},p={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},m=o.forwardRef((function(e,t){var r=e.components,n=e.mdxType,a=e.originalType,c=e.parentName,i=s(e,["components","mdxType","originalType","parentName"]),m=l(r),f=n,b=m["".concat(c,".").concat(f)]||m[f]||p[f]||a;return r?o.createElement(b,u(u({ref:t},i),{},{components:r})):o.createElement(b,u({ref:t},i))}));function f(e,t){var r=arguments,n=t&&t.mdxType;if("string"==typeof e||n){var a=r.length,u=new Array(a);u[0]=m;var s={};for(var c in t)hasOwnProperty.call(t,c)&&(s[c]=t[c]);s.originalType=e,s.mdxType="string"==typeof e?e:n,u[1]=s;for(var l=2;l<a;l++)u[l]=r[l];return o.createElement.apply(null,u)}return o.createElement.apply(null,r)}m.displayName="MDXCreateElement"},5145:function(e,t,r){r.r(t),r.d(t,{assets:function(){return c},contentTitle:function(){return u},default:function(){return p},frontMatter:function(){return a},metadata:function(){return s},toc:function(){return l}});var o=r(3117),n=(r(7294),r(3905));const a={slug:"mdx-blog-post",title:"MDX Blog Post",authors:["slorber"],tags:["docusaurus"]},u=void 0,s={permalink:"/threetwo-docs/blog/mdx-blog-post",editUrl:"https://github.com/facebook/docusaurus/edit/main/website/blog/blog/2021-08-01-mdx-blog-post.mdx",source:"@site/blog/2021-08-01-mdx-blog-post.mdx",title:"MDX Blog Post",description:"Blog posts support Docusaurus Markdown features, such as MDX.",date:"2021-08-01T00:00:00.000Z",formattedDate:"August 1, 2021",tags:[{label:"docusaurus",permalink:"/threetwo-docs/blog/tags/docusaurus"}],readingTime:.175,hasTruncateMarker:!1,authors:[{name:"S\xe9bastien Lorber",title:"Docusaurus maintainer",url:"https://sebastienlorber.com",imageURL:"https://github.com/slorber.png",key:"slorber"}],frontMatter:{slug:"mdx-blog-post",title:"MDX Blog Post",authors:["slorber"],tags:["docusaurus"]},prevItem:{title:"Welcome",permalink:"/threetwo-docs/blog/welcome"},nextItem:{title:"Long Blog Post",permalink:"/threetwo-docs/blog/long-blog-post"}},c={authorsImageUrls:[void 0]},l=[],i={toc:l};function p(e){let{components:t,...r}=e;return(0,n.kt)("wrapper",(0,o.Z)({},i,r,{components:t,mdxType:"MDXLayout"}),(0,n.kt)("p",null,"Blog posts support ",(0,n.kt)("a",{parentName:"p",href:"https://docusaurus.io/docs/markdown-features"},"Docusaurus Markdown features"),", such as ",(0,n.kt)("a",{parentName:"p",href:"https://mdxjs.com/"},"MDX"),"."),(0,n.kt)("admonition",{type:"tip"},(0,n.kt)("p",{parentName:"admonition"},"Use the power of React to create interactive blog posts."),(0,n.kt)("pre",{parentName:"admonition"},(0,n.kt)("code",{parentName:"pre",className:"language-js"},"<button onClick={() => alert('button clicked!')}>Click me!</button>\n")),(0,n.kt)("button",{onClick:()=>alert("button clicked!")},"Click me!")))}p.isMDXComponent=!0}}]);
|
||||
2
assets/js/main.77f40a88.js
Normal file
53
assets/js/main.77f40a88.js.LICENSE.txt
Normal file
@@ -0,0 +1,53 @@
|
||||
/*
|
||||
object-assign
|
||||
(c) Sindre Sorhus
|
||||
@license MIT
|
||||
*/
|
||||
|
||||
/* NProgress, (c) 2013, 2014 Rico Sta. Cruz - http://ricostacruz.com/nprogress
|
||||
* @license MIT */
|
||||
|
||||
/**
|
||||
* Prism: Lightweight, robust, elegant syntax highlighting
|
||||
*
|
||||
* @license MIT <https://opensource.org/licenses/MIT>
|
||||
* @author Lea Verou <https://lea.verou.me>
|
||||
* @namespace
|
||||
* @public
|
||||
*/
|
||||
|
||||
/** @license React v0.20.2
|
||||
* scheduler.production.min.js
|
||||
*
|
||||
* Copyright (c) Facebook, Inc. and its affiliates.
|
||||
*
|
||||
* This source code is licensed under the MIT license found in the
|
||||
* LICENSE file in the root directory of this source tree.
|
||||
*/
|
||||
|
||||
/** @license React v16.13.1
|
||||
* react-is.production.min.js
|
||||
*
|
||||
* Copyright (c) Facebook, Inc. and its affiliates.
|
||||
*
|
||||
* This source code is licensed under the MIT license found in the
|
||||
* LICENSE file in the root directory of this source tree.
|
||||
*/
|
||||
|
||||
/** @license React v17.0.2
|
||||
* react-dom.production.min.js
|
||||
*
|
||||
* Copyright (c) Facebook, Inc. and its affiliates.
|
||||
*
|
||||
* This source code is licensed under the MIT license found in the
|
||||
* LICENSE file in the root directory of this source tree.
|
||||
*/
|
||||
|
||||
/** @license React v17.0.2
|
||||
* react.production.min.js
|
||||
*
|
||||
* Copyright (c) Facebook, Inc. and its affiliates.
|
||||
*
|
||||
* This source code is licensed under the MIT license found in the
|
||||
* LICENSE file in the root directory of this source tree.
|
||||
*/
|
||||
1
assets/js/runtime~main.e5e6932c.js
Normal file
@@ -1,3 +0,0 @@
|
||||
module.exports = {
|
||||
presets: [require.resolve('@docusaurus/core/lib/babel/preset')],
|
||||
};
|
||||
@@ -1,12 +0,0 @@
|
||||
---
|
||||
slug: first-blog-post
|
||||
title: First Blog Post
|
||||
authors:
|
||||
name: Gao Wei
|
||||
title: Docusaurus Core Team
|
||||
url: https://github.com/wgao19
|
||||
image_url: https://github.com/wgao19.png
|
||||
tags: [hola, docusaurus]
|
||||
---
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
|
||||
@@ -1,44 +0,0 @@
|
||||
---
|
||||
slug: long-blog-post
|
||||
title: Long Blog Post
|
||||
authors: endi
|
||||
tags: [hello, docusaurus]
|
||||
---
|
||||
|
||||
This is the summary of a very long blog post,
|
||||
|
||||
Use a `<!--` `truncate` `-->` comment to limit blog post size in the list view.
|
||||
|
||||
<!--truncate-->
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
|
||||
|
||||
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
|
||||
@@ -1,20 +0,0 @@
|
||||
---
|
||||
slug: mdx-blog-post
|
||||
title: MDX Blog Post
|
||||
authors: [slorber]
|
||||
tags: [docusaurus]
|
||||
---
|
||||
|
||||
Blog posts support [Docusaurus Markdown features](https://docusaurus.io/docs/markdown-features), such as [MDX](https://mdxjs.com/).
|
||||
|
||||
:::tip
|
||||
|
||||
Use the power of React to create interactive blog posts.
|
||||
|
||||
```js
|
||||
<button onClick={() => alert('button clicked!')}>Click me!</button>
|
||||
```
|
||||
|
||||
<button onClick={() => alert('button clicked!')}>Click me!</button>
|
||||
|
||||
:::
|
||||
@@ -1,25 +0,0 @@
|
||||
---
|
||||
slug: welcome
|
||||
title: Welcome
|
||||
authors: [slorber, yangshun]
|
||||
tags: [facebook, hello, docusaurus]
|
||||
---
|
||||
|
||||
[Docusaurus blogging features](https://docusaurus.io/docs/blog) are powered by the [blog plugin](https://docusaurus.io/docs/api/plugins/@docusaurus/plugin-content-blog).
|
||||
|
||||
Simply add Markdown files (or folders) to the `blog` directory.
|
||||
|
||||
Regular blog authors can be added to `authors.yml`.
|
||||
|
||||
The blog post date can be extracted from filenames, such as:
|
||||
|
||||
- `2019-05-30-welcome.md`
|
||||
- `2019-05-30-welcome/index.md`
|
||||
|
||||
A blog post folder can be convenient to co-locate blog post images:
|
||||
|
||||

|
||||
|
||||
The blog supports tags as well!
|
||||
|
||||
**And if you don't want a blog**: just delete this directory, and use `blog: false` in your Docusaurus config.
|
||||
17
blog/archive/index.html
Normal file
@@ -0,0 +1,17 @@
|
||||
<!doctype html>
|
||||
<html lang="en" dir="ltr" class="plugin-blog plugin-id-default">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="generator" content="Docusaurus v2.2.0">
|
||||
<title data-rh="true">Archive | ThreeTwo!</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://rishighan.github.io/threetwo-docs/blog/archive"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docusaurus_tag" content="default"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" name="docsearch:docusaurus_tag" content="default"><meta data-rh="true" property="og:title" content="Archive | ThreeTwo!"><meta data-rh="true" name="description" content="Archive"><meta data-rh="true" property="og:description" content="Archive"><link data-rh="true" rel="icon" href="/threetwo-docs/img/favicon.ico"><link data-rh="true" rel="canonical" href="https://rishighan.github.io/threetwo-docs/blog/archive"><link data-rh="true" rel="alternate" href="https://rishighan.github.io/threetwo-docs/blog/archive" hreflang="en"><link data-rh="true" rel="alternate" href="https://rishighan.github.io/threetwo-docs/blog/archive" hreflang="x-default"><link rel="alternate" type="application/rss+xml" href="/threetwo-docs/blog/rss.xml" title="ThreeTwo! RSS Feed">
|
||||
<link rel="alternate" type="application/atom+xml" href="/threetwo-docs/blog/atom.xml" title="ThreeTwo! Atom Feed"><link rel="stylesheet" href="/threetwo-docs/assets/css/styles.e3d40972.css">
|
||||
<link rel="preload" href="/threetwo-docs/assets/js/runtime~main.e5e6932c.js" as="script">
|
||||
<link rel="preload" href="/threetwo-docs/assets/js/main.77f40a88.js" as="script">
|
||||
</head>
|
||||
<body class="navigation-with-keyboard">
|
||||
<script>!function(){function t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var t=null;try{t=localStorage.getItem("theme")}catch(t){}return t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
|
||||
<div role="region" aria-label="Skip to main content"><a class="skipToContent_fXgn" href="#docusaurus_skipToContent_fallback">Skip to main content</a></div><nav class="navbar navbar--fixed-top"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Toggle navigation bar" aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"></path></svg></button><a class="navbar__brand" href="/threetwo-docs/"><div class="navbar__logo"><img src="/threetwo-docs/img/threetwo.png" alt="My Site Logo" class="themedImage_ToTc themedImage--light_HNdA"><img src="/threetwo-docs/img/threetwo.png" alt="My Site Logo" class="themedImage_ToTc themedImage--dark_i4oU"></div><b class="navbar__title text--truncate">ThreeTwo!</b></a><a class="navbar__item navbar__link" href="/threetwo-docs/docs/intro">Quick Start</a><a aria-current="page" class="navbar__item navbar__link navbar__link--active" href="/threetwo-docs/blog">Blog</a></div><div class="navbar__items navbar__items--right"><a href="https://github.com/rishighan/threetwo" target="_blank" rel="noopener noreferrer" class="navbar__item navbar__link">GitHub<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a><div class="searchBox_ZlJk"></div></div></div><div role="presentation" class="navbar-sidebar__backdrop"></div></nav><div id="docusaurus_skipToContent_fallback" class="main-wrapper mainWrapper_z2l0"><header class="hero hero--primary"><div class="container"><h1 class="hero__title">Archive</h1><p class="hero__subtitle">Archive</p></div></header><main><section class="margin-vert--lg"><div class="container"><div class="row"><div class="col col--4 margin-vert--lg"><h3>2019</h3><ul><li><a href="/threetwo-docs/blog/long-blog-post">May 29, 2019<!-- --> - <!-- -->Long Blog Post</a></li><li><a href="/threetwo-docs/blog/first-blog-post">May 28, 2019<!-- --> - <!-- -->First Blog Post</a></li></ul></div><div class="col col--4 margin-vert--lg"><h3>2021</h3><ul><li><a href="/threetwo-docs/blog/welcome">August 26, 2021<!-- --> - <!-- -->Welcome</a></li><li><a href="/threetwo-docs/blog/mdx-blog-post">August 1, 2021<!-- --> - <!-- -->MDX Blog Post</a></li></ul></div></div></div></section></main></div><footer class="footer footer--dark"><div class="container container-fluid"><div class="row footer__links"><div class="col footer__col"><div class="footer__title">Docs</div><ul class="footer__items clean-list"><li class="footer__item"><a class="footer__link-item" href="/threetwo-docs/docs/intro">Tutorial</a></li></ul></div><div class="col footer__col"><div class="footer__title">Community</div><ul class="footer__items clean-list"><li class="footer__item"><a href="https://github.com/rishighan/threetwo" target="_blank" rel="noopener noreferrer" class="footer__link-item">Github<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li><li class="footer__item"><a href="https://discord.gg/n4HZ4j33uT" target="_blank" rel="noopener noreferrer" class="footer__link-item">Discord<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li></ul></div><div class="col footer__col"><div class="footer__title">More</div><ul class="footer__items clean-list"><li class="footer__item"><a class="footer__link-item" href="/threetwo-docs/blog">Blog</a></li><li class="footer__item"><a href="https://rishighan.com" target="_blank" rel="noopener noreferrer" class="footer__link-item">Rishi Ghan<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li></ul></div></div><div class="footer__bottom text--center"><div class="footer__copyright">Copyright © 2023 Quasar Software, LLC. Built with Docusaurus.</div></div></div></footer></div>
|
||||
<script src="/threetwo-docs/assets/js/runtime~main.e5e6932c.js"></script>
|
||||
<script src="/threetwo-docs/assets/js/main.77f40a88.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
70
blog/atom.xml
Normal file
@@ -0,0 +1,70 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<feed xmlns="http://www.w3.org/2005/Atom">
|
||||
<id>https://rishighan.github.io/threetwo-docs/blog</id>
|
||||
<title>ThreeTwo! Blog</title>
|
||||
<updated>2021-08-26T00:00:00.000Z</updated>
|
||||
<generator>https://github.com/jpmonette/feed</generator>
|
||||
<link rel="alternate" href="https://rishighan.github.io/threetwo-docs/blog"/>
|
||||
<subtitle>ThreeTwo! Blog</subtitle>
|
||||
<icon>https://rishighan.github.io/threetwo-docs/img/favicon.ico</icon>
|
||||
<entry>
|
||||
<title type="html"><![CDATA[Welcome]]></title>
|
||||
<id>welcome</id>
|
||||
<link href="https://rishighan.github.io/threetwo-docs/blog/welcome"/>
|
||||
<updated>2021-08-26T00:00:00.000Z</updated>
|
||||
<summary type="html"><![CDATA[Docusaurus blogging features are powered by the blog plugin.]]></summary>
|
||||
<content type="html"><![CDATA[<p><a href="https://docusaurus.io/docs/blog" target="_blank" rel="noopener noreferrer">Docusaurus blogging features</a> are powered by the <a href="https://docusaurus.io/docs/api/plugins/@docusaurus/plugin-content-blog" target="_blank" rel="noopener noreferrer">blog plugin</a>.</p><p>Simply add Markdown files (or folders) to the <code>blog</code> directory.</p><p>Regular blog authors can be added to <code>authors.yml</code>.</p><p>The blog post date can be extracted from filenames, such as:</p><ul><li><code>2019-05-30-welcome.md</code></li><li><code>2019-05-30-welcome/index.md</code></li></ul><p>A blog post folder can be convenient to co-locate blog post images:</p><p><img loading="lazy" alt="Docusaurus Plushie" src="/threetwo-docs/assets/images/docusaurus-plushie-banner-a60f7593abca1e3eef26a9afa244e4fb.jpeg" width="1500" height="500" class="img_ev3q"></p><p>The blog supports tags as well!</p><p><strong>And if you don't want a blog</strong>: just delete this directory, and use <code>blog: false</code> in your Docusaurus config.</p>]]></content>
|
||||
<author>
|
||||
<name>Sébastien Lorber</name>
|
||||
<uri>https://sebastienlorber.com</uri>
|
||||
</author>
|
||||
<author>
|
||||
<name>Yangshun Tay</name>
|
||||
<uri>https://github.com/yangshun</uri>
|
||||
</author>
|
||||
<category label="facebook" term="facebook"/>
|
||||
<category label="hello" term="hello"/>
|
||||
<category label="docusaurus" term="docusaurus"/>
|
||||
</entry>
|
||||
<entry>
|
||||
<title type="html"><![CDATA[MDX Blog Post]]></title>
|
||||
<id>mdx-blog-post</id>
|
||||
<link href="https://rishighan.github.io/threetwo-docs/blog/mdx-blog-post"/>
|
||||
<updated>2021-08-01T00:00:00.000Z</updated>
|
||||
<summary type="html"><![CDATA[Blog posts support Docusaurus Markdown features, such as MDX.]]></summary>
|
||||
<content type="html"><![CDATA[<p>Blog posts support <a href="https://docusaurus.io/docs/markdown-features" target="_blank" rel="noopener noreferrer">Docusaurus Markdown features</a>, such as <a href="https://mdxjs.com/" target="_blank" rel="noopener noreferrer">MDX</a>.</p><div class="theme-admonition theme-admonition-tip alert alert--success admonition_LlT9"><div class="admonitionHeading_tbUL"><span class="admonitionIcon_kALy"><svg viewBox="0 0 12 16"><path fill-rule="evenodd" d="M6.5 0C3.48 0 1 2.19 1 5c0 .92.55 2.25 1 3 1.34 2.25 1.78 2.78 2 4v1h5v-1c.22-1.22.66-1.75 2-4 .45-.75 1-2.08 1-3 0-2.81-2.48-5-5.5-5zm3.64 7.48c-.25.44-.47.8-.67 1.11-.86 1.41-1.25 2.06-1.45 3.23-.02.05-.02.11-.02.17H5c0-.06 0-.13-.02-.17-.2-1.17-.59-1.83-1.45-3.23-.2-.31-.42-.67-.67-1.11C2.44 6.78 2 5.65 2 5c0-2.2 2.02-4 4.5-4 1.22 0 2.36.42 3.22 1.19C10.55 2.94 11 3.94 11 5c0 .66-.44 1.78-.86 2.48zM4 14h5c-.23 1.14-1.3 2-2.5 2s-2.27-.86-2.5-2z"></path></svg></span>tip</div><div class="admonitionContent_S0QG"><p>Use the power of React to create interactive blog posts.</p><div class="language-js codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-js codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token operator" style="color:#393A34"><</span><span class="token plain">button onClick</span><span class="token operator" style="color:#393A34">=</span><span class="token punctuation" style="color:#393A34">{</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"> </span><span class="token arrow operator" style="color:#393A34">=></span><span class="token plain"> </span><span class="token function" style="color:#d73a49">alert</span><span class="token punctuation" style="color:#393A34">(</span><span class="token string" style="color:#e3116c">'button clicked!'</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">}</span><span class="token operator" style="color:#393A34">></span><span class="token maybe-class-name">Click</span><span class="token plain"> me</span><span class="token operator" style="color:#393A34">!</span><span class="token operator" style="color:#393A34"><</span><span class="token operator" style="color:#393A34">/</span><span class="token plain">button</span><span class="token operator" style="color:#393A34">></span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><button>Click me!</button></div></div>]]></content>
|
||||
<author>
|
||||
<name>Sébastien Lorber</name>
|
||||
<uri>https://sebastienlorber.com</uri>
|
||||
</author>
|
||||
<category label="docusaurus" term="docusaurus"/>
|
||||
</entry>
|
||||
<entry>
|
||||
<title type="html"><![CDATA[Long Blog Post]]></title>
|
||||
<id>long-blog-post</id>
|
||||
<link href="https://rishighan.github.io/threetwo-docs/blog/long-blog-post"/>
|
||||
<updated>2019-05-29T00:00:00.000Z</updated>
|
||||
<summary type="html"><![CDATA[This is the summary of a very long blog post,]]></summary>
|
||||
<content type="html"><![CDATA[<p>This is the summary of a very long blog post,</p><p>Use a <code><!--</code> <code>truncate</code> <code>--></code> comment to limit blog post size in the list view.</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p>]]></content>
|
||||
<author>
|
||||
<name>Endilie Yacop Sucipto</name>
|
||||
<uri>https://github.com/endiliey</uri>
|
||||
</author>
|
||||
<category label="hello" term="hello"/>
|
||||
<category label="docusaurus" term="docusaurus"/>
|
||||
</entry>
|
||||
<entry>
|
||||
<title type="html"><![CDATA[First Blog Post]]></title>
|
||||
<id>first-blog-post</id>
|
||||
<link href="https://rishighan.github.io/threetwo-docs/blog/first-blog-post"/>
|
||||
<updated>2019-05-28T00:00:00.000Z</updated>
|
||||
<summary type="html"><![CDATA[Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet]]></summary>
|
||||
<content type="html"><![CDATA[<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p>]]></content>
|
||||
<author>
|
||||
<name>Gao Wei</name>
|
||||
<uri>https://github.com/wgao19</uri>
|
||||
</author>
|
||||
<category label="hola" term="hola"/>
|
||||
<category label="docusaurus" term="docusaurus"/>
|
||||
</entry>
|
||||
</feed>
|
||||
@@ -1,17 +0,0 @@
|
||||
endi:
|
||||
name: Endilie Yacop Sucipto
|
||||
title: Maintainer of Docusaurus
|
||||
url: https://github.com/endiliey
|
||||
image_url: https://github.com/endiliey.png
|
||||
|
||||
yangshun:
|
||||
name: Yangshun Tay
|
||||
title: Front End Engineer @ Facebook
|
||||
url: https://github.com/yangshun
|
||||
image_url: https://github.com/yangshun.png
|
||||
|
||||
slorber:
|
||||
name: Sébastien Lorber
|
||||
title: Docusaurus maintainer
|
||||
url: https://sebastienlorber.com
|
||||
image_url: https://github.com/slorber.png
|
||||
17
blog/first-blog-post/index.html
Normal file
17
blog/index.html
Normal file
17
blog/long-blog-post/index.html
Normal file
17
blog/mdx-blog-post/index.html
Normal file
52
blog/rss.xml
Normal file
@@ -0,0 +1,52 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
|
||||
<channel>
|
||||
<title>ThreeTwo! Blog</title>
|
||||
<link>https://rishighan.github.io/threetwo-docs/blog</link>
|
||||
<description>ThreeTwo! Blog</description>
|
||||
<lastBuildDate>Thu, 26 Aug 2021 00:00:00 GMT</lastBuildDate>
|
||||
<docs>https://validator.w3.org/feed/docs/rss2.html</docs>
|
||||
<generator>https://github.com/jpmonette/feed</generator>
|
||||
<language>en</language>
|
||||
<item>
|
||||
<title><![CDATA[Welcome]]></title>
|
||||
<link>https://rishighan.github.io/threetwo-docs/blog/welcome</link>
|
||||
<guid>welcome</guid>
|
||||
<pubDate>Thu, 26 Aug 2021 00:00:00 GMT</pubDate>
|
||||
<description><![CDATA[Docusaurus blogging features are powered by the blog plugin.]]></description>
|
||||
<content:encoded><![CDATA[<p><a href="https://docusaurus.io/docs/blog" target="_blank" rel="noopener noreferrer">Docusaurus blogging features</a> are powered by the <a href="https://docusaurus.io/docs/api/plugins/@docusaurus/plugin-content-blog" target="_blank" rel="noopener noreferrer">blog plugin</a>.</p><p>Simply add Markdown files (or folders) to the <code>blog</code> directory.</p><p>Regular blog authors can be added to <code>authors.yml</code>.</p><p>The blog post date can be extracted from filenames, such as:</p><ul><li><code>2019-05-30-welcome.md</code></li><li><code>2019-05-30-welcome/index.md</code></li></ul><p>A blog post folder can be convenient to co-locate blog post images:</p><p><img loading="lazy" alt="Docusaurus Plushie" src="/threetwo-docs/assets/images/docusaurus-plushie-banner-a60f7593abca1e3eef26a9afa244e4fb.jpeg" width="1500" height="500" class="img_ev3q"></p><p>The blog supports tags as well!</p><p><strong>And if you don't want a blog</strong>: just delete this directory, and use <code>blog: false</code> in your Docusaurus config.</p>]]></content:encoded>
|
||||
<category>facebook</category>
|
||||
<category>hello</category>
|
||||
<category>docusaurus</category>
|
||||
</item>
|
||||
<item>
|
||||
<title><![CDATA[MDX Blog Post]]></title>
|
||||
<link>https://rishighan.github.io/threetwo-docs/blog/mdx-blog-post</link>
|
||||
<guid>mdx-blog-post</guid>
|
||||
<pubDate>Sun, 01 Aug 2021 00:00:00 GMT</pubDate>
|
||||
<description><![CDATA[Blog posts support Docusaurus Markdown features, such as MDX.]]></description>
|
||||
<content:encoded><![CDATA[<p>Blog posts support <a href="https://docusaurus.io/docs/markdown-features" target="_blank" rel="noopener noreferrer">Docusaurus Markdown features</a>, such as <a href="https://mdxjs.com/" target="_blank" rel="noopener noreferrer">MDX</a>.</p><div class="theme-admonition theme-admonition-tip alert alert--success admonition_LlT9"><div class="admonitionHeading_tbUL"><span class="admonitionIcon_kALy"><svg viewBox="0 0 12 16"><path fill-rule="evenodd" d="M6.5 0C3.48 0 1 2.19 1 5c0 .92.55 2.25 1 3 1.34 2.25 1.78 2.78 2 4v1h5v-1c.22-1.22.66-1.75 2-4 .45-.75 1-2.08 1-3 0-2.81-2.48-5-5.5-5zm3.64 7.48c-.25.44-.47.8-.67 1.11-.86 1.41-1.25 2.06-1.45 3.23-.02.05-.02.11-.02.17H5c0-.06 0-.13-.02-.17-.2-1.17-.59-1.83-1.45-3.23-.2-.31-.42-.67-.67-1.11C2.44 6.78 2 5.65 2 5c0-2.2 2.02-4 4.5-4 1.22 0 2.36.42 3.22 1.19C10.55 2.94 11 3.94 11 5c0 .66-.44 1.78-.86 2.48zM4 14h5c-.23 1.14-1.3 2-2.5 2s-2.27-.86-2.5-2z"></path></svg></span>tip</div><div class="admonitionContent_S0QG"><p>Use the power of React to create interactive blog posts.</p><div class="language-js codeBlockContainer_Ckt0 theme-code-block" style="--prism-color:#393A34;--prism-background-color:#f6f8fa"><div class="codeBlockContent_biex"><pre tabindex="0" class="prism-code language-js codeBlock_bY9V thin-scrollbar"><code class="codeBlockLines_e6Vv"><span class="token-line" style="color:#393A34"><span class="token operator" style="color:#393A34"><</span><span class="token plain">button onClick</span><span class="token operator" style="color:#393A34">=</span><span class="token punctuation" style="color:#393A34">{</span><span class="token punctuation" style="color:#393A34">(</span><span class="token punctuation" style="color:#393A34">)</span><span class="token plain"> </span><span class="token arrow operator" style="color:#393A34">=></span><span class="token plain"> </span><span class="token function" style="color:#d73a49">alert</span><span class="token punctuation" style="color:#393A34">(</span><span class="token string" style="color:#e3116c">'button clicked!'</span><span class="token punctuation" style="color:#393A34">)</span><span class="token punctuation" style="color:#393A34">}</span><span class="token operator" style="color:#393A34">></span><span class="token maybe-class-name">Click</span><span class="token plain"> me</span><span class="token operator" style="color:#393A34">!</span><span class="token operator" style="color:#393A34"><</span><span class="token operator" style="color:#393A34">/</span><span class="token plain">button</span><span class="token operator" style="color:#393A34">></span><br></span></code></pre><div class="buttonGroup__atx"><button type="button" aria-label="Copy code to clipboard" title="Copy" class="clean-btn"><span class="copyButtonIcons_eSgA" aria-hidden="true"><svg class="copyButtonIcon_y97N" viewBox="0 0 24 24"><path d="M19,21H8V7H19M19,5H8A2,2 0 0,0 6,7V21A2,2 0 0,0 8,23H19A2,2 0 0,0 21,21V7A2,2 0 0,0 19,5M16,1H4A2,2 0 0,0 2,3V17H4V3H16V1Z"></path></svg><svg class="copyButtonSuccessIcon_LjdS" viewBox="0 0 24 24"><path d="M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"></path></svg></span></button></div></div></div><button>Click me!</button></div></div>]]></content:encoded>
|
||||
<category>docusaurus</category>
|
||||
</item>
|
||||
<item>
|
||||
<title><![CDATA[Long Blog Post]]></title>
|
||||
<link>https://rishighan.github.io/threetwo-docs/blog/long-blog-post</link>
|
||||
<guid>long-blog-post</guid>
|
||||
<pubDate>Wed, 29 May 2019 00:00:00 GMT</pubDate>
|
||||
<description><![CDATA[This is the summary of a very long blog post,]]></description>
|
||||
<content:encoded><![CDATA[<p>This is the summary of a very long blog post,</p><p>Use a <code><!--</code> <code>truncate</code> <code>--></code> comment to limit blog post size in the list view.</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p>]]></content:encoded>
|
||||
<category>hello</category>
|
||||
<category>docusaurus</category>
|
||||
</item>
|
||||
<item>
|
||||
<title><![CDATA[First Blog Post]]></title>
|
||||
<link>https://rishighan.github.io/threetwo-docs/blog/first-blog-post</link>
|
||||
<guid>first-blog-post</guid>
|
||||
<pubDate>Tue, 28 May 2019 00:00:00 GMT</pubDate>
|
||||
<description><![CDATA[Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet]]></description>
|
||||
<content:encoded><![CDATA[<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet</p>]]></content:encoded>
|
||||
<category>hola</category>
|
||||
<category>docusaurus</category>
|
||||
</item>
|
||||
</channel>
|
||||
</rss>
|
||||
17
blog/tags/docusaurus/index.html
Normal file
17
blog/tags/facebook/index.html
Normal file
17
blog/tags/hello/index.html
Normal file
17
blog/tags/hola/index.html
Normal file
17
blog/tags/index.html
Normal file
17
blog/welcome/index.html
Normal file
@@ -1,33 +0,0 @@
|
||||
---
|
||||
sidebar_position: 4
|
||||
id: architecture
|
||||
title: Technical Architecture
|
||||
---
|
||||
|
||||
### High-level Architecture
|
||||
|
||||
`ThreeTwo!`, the app is built upon the microservice architecture. The UI is a standalone `node.js` app and the rest of the logic is broken into microservices.
|
||||
|
||||
The microservices deal with:
|
||||
|
||||
1. Library functions (model orchestration, CRUD ops on comics, metadata)
|
||||
2. Comic Vine (scraping issues, volumes and more)
|
||||
3. Grand Comics Database (scraping, aggregations and more)
|
||||
4. Helpers (image transformation, file-system ops, compression/uncompression)
|
||||
|
||||
### Technical stack
|
||||
|
||||
`ThreeTwo!` is written in `TypeScript` from UI to the services layer.
|
||||
|
||||
The technologies used are:
|
||||
|
||||
1. React
|
||||
2. Redux
|
||||
3. moleculer
|
||||
4. RabbitMQ
|
||||
5. socket.io
|
||||
6. node.js
|
||||
7. Express
|
||||
8. MongoDB
|
||||
9. mongoose
|
||||
|
||||
17
docs/architecture/index.html
Normal file
@@ -1,35 +0,0 @@
|
||||
---
|
||||
sidebar_position: 1
|
||||
id: intro
|
||||
title: Introduction
|
||||
---
|
||||
|
||||
# ThreeTwo!
|
||||
|
||||
`ThreeTwo!` is a comic book curation app. <br/><br/>
|
||||
|
||||
It aims to help you organize your comic book collection and automate various aspects of acquiring new comic books.<br/><br/>
|
||||
|
||||
It is a culmination of ideas I developed over the past couple of years using various pieces of software to achieve the stated goal of curating comic books. It borrows heavily from Mylar, Ubooquity, ComicRack, Calibre and many other software used to manage comic book collections.
|
||||
|
||||
## Philosophy
|
||||
|
||||
Curation is a disease of the mind, albeit a disease with a purpose. You want to be able to peruse your collection, and enjoy the process of doing so.
|
||||
|
||||
#### Discovery
|
||||
|
||||
The first tenet of `ThreeTwo!` is discovery–the act of importing comics from your OS, finding new comic to read or just searching through your collection for a comic that sparks nostalgia. Discovery is important, both from a technical perspective, so that `ThreeTwo!` can infer metadata from your collection, as well as from a curatorial standpoint, you want to keep track of what you are reading, or what you want to be reading.
|
||||
|
||||
#### Curation
|
||||
|
||||
`ThreeTwo!` takes curation seriously, and thusly offers ComicVine scraping, and other means of applying/extending the comic metadata. This is so that your collection can truly shine, and actually help in discovering or rediscovering comics.
|
||||
|
||||
|
||||
#### Acquisition
|
||||
|
||||
Once you have added to your list of _wanted_ comics, you can rely on `ThreeTwo!`'s first-class support for `DC++` via `AirDC++` to acquire them. Just configure your `AirDC++` host, hub information and you are golden.
|
||||
|
||||
|
||||
#### Consumption
|
||||
|
||||
You can access your massive comic collection via `OPDS` through apps on your mobile devices, like `Panels` on `iOS`
|
||||
17
docs/intro/index.html
Normal file
@@ -1,12 +0,0 @@
|
||||
---
|
||||
sidebar_position: 3
|
||||
id: resources
|
||||
title: Resources & Help
|
||||
---
|
||||
|
||||
### Quick Links
|
||||
|
||||
- The source code for `ThreeTwo!` is located here: https://github.com/rishighan/threetwo
|
||||
- The official `Discord` server is here: https://discord.gg/DbpcSNuM
|
||||
- If you encounter problems, the best recourse to getting help is creating an issue on the repo, https://github.com/rishighan/threetwo/issues
|
||||
- For other questions just pop them into the Discord channel
|
||||
17
docs/resources/index.html
Normal file
17
docs/unRAID_dockercompose/index.html
Normal file
@@ -1,203 +0,0 @@
|
||||
---
|
||||
sidebar_position: 2
|
||||
id: unRAID_dockercompose
|
||||
title: Install ThreeTwo! on unRAID with the docker-compose plugin
|
||||
---
|
||||
|
||||
### Notes
|
||||
|
||||
This guide goes over ThreeTwo! installation on unRAID using the [docker-compose manager](https://forums.unRAID.net/topic/114415-plugin-docker-compose-manager/) plugin. Currently, this is the recommended approach for unRAID users.
|
||||
|
||||
With the help of this plugin, you are able to pull the entire ThreeTwo! `docker-compose` stack up, down with the click of a button. It abstracts away a lot of complexity associated with writing out commands in the console.
|
||||
|
||||
That said, the plugin is still in beta, so you may experience strange behavior.
|
||||
|
||||
### Pre-requisites
|
||||
|
||||
First things first, let's go over what the pre-requisites are:
|
||||
|
||||
1. The `docker-compose` configuration for ThreeTwo! now resides in its own repo here: https://github.com/rishighan/threetwo-docker-compose You will be using this as reference.
|
||||
2. A working `AirDC++` install is necessary for `DC++` searching/downloading to work. You can install it through the unRAID via the CA store or via a [docker](https://airdcpp.net/download#linux-nas-docker-other)
|
||||
3. `comics` and `userdata` folders.
|
||||
1. The `comics` folder _must_ be the folder `AirDC++` downloads comics to.
|
||||
2. Create the `userdata` folder under `/mnt/user/appdata/threetwo`
|
||||
4. To get ComicVine to work for metadata scraping and other functions, you _must_ have a ComicVine API key. You can get one [here](https://comicvine.gamespot.com/api/). Metadata scraping will not work unless you supply an API key.
|
||||
5. Open an unRAID terminal and create an `.env` file:
|
||||
1. Run this command: `nano /boot/config/plugins/compose.manager/projects/ThreeTwo/.env`
|
||||
2. Paste this into the file, replacing anything within `<>` with actual values:
|
||||
```bash
|
||||
UNDERLYING_HOSTNAME=<UNRAID_HOSTNAME>
|
||||
COMICS_DIRECTORY=<PATH_TO_COMICS_DIRECTORY>
|
||||
USERDATA_DIRECTORY=/mnt/user/appdata/threetwo/userdata
|
||||
|
||||
COMICVINE_API_KEY=<YOUR_COMICVINE_API_KEY>
|
||||
|
||||
LOGGER=true
|
||||
LOGLEVEL=info
|
||||
SERVICEDIR=dist/services
|
||||
|
||||
CHOKIDAR_USEPOLLING=true
|
||||
|
||||
UNRAR_BIN_PATH=/usr/bin/unrar
|
||||
SEVENZ_BINARY_PATH=/usr/bin/7za
|
||||
MONGO_URI=mongodb://db:27017/threetwo
|
||||
ELASTICSEARCH_URI=http://elasticsearch:9200
|
||||
REDIS_URI=redis://redis:6379
|
||||
TRANSPORTER=redis://redis:6379
|
||||
CACHER=Memory
|
||||
```
|
||||
|
||||
### Installation
|
||||
|
||||
1. Install the `docker-compose manager` plugin from the unRAID CA store. After installation, you can find the plugin UI under the `Docker` tab.
|
||||
2. Create a new stack, give it a name.
|
||||
3. Hover over the gear next to it and click on `Edit Stack`.
|
||||
4. Copy-paste this into the textarea:
|
||||
```yaml
|
||||
version: "3.7"
|
||||
|
||||
x-userdata-volume: &userdata-volume
|
||||
type: bind
|
||||
source: ${USERDATA_DIRECTORY}
|
||||
target: /userdata
|
||||
|
||||
x-comics-volume: &comics-volume
|
||||
type: bind
|
||||
source: ${COMICS_DIRECTORY}
|
||||
target: /comics
|
||||
|
||||
services:
|
||||
threetwo:
|
||||
build:
|
||||
context: https://github.com/rishighan/threetwo.git
|
||||
dockerfile: Dockerfile
|
||||
image: frishi/threetwo
|
||||
container_name: threetwo-ui
|
||||
env_file: /boot/config/plugins/compose.manager/projects/ThreeTwo/.env
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- "8050:8050"
|
||||
- "3050:3050"
|
||||
links:
|
||||
- core-services
|
||||
depends_on:
|
||||
- db
|
||||
- elasticsearch
|
||||
- redis
|
||||
networks:
|
||||
- proxy
|
||||
|
||||
metadata-service:
|
||||
build:
|
||||
context: https://github.com/rishighan/threetwo-metadata-service.git
|
||||
image: frishi/threetwo-metadata-service
|
||||
container_name: metadata-service
|
||||
ports:
|
||||
- "3080:3080"
|
||||
environment:
|
||||
SERVICES: api,comicvine
|
||||
env_file: /boot/config/plugins/compose.manager/projects/ThreeTwo/.env
|
||||
depends_on:
|
||||
- redis
|
||||
volumes:
|
||||
- *comics-volume
|
||||
- *userdata-volume
|
||||
networks:
|
||||
- proxy
|
||||
|
||||
core-services:
|
||||
build:
|
||||
context: https://github.com/rishighan/threetwo-core-service.git
|
||||
image: frishi/threetwo-core-service
|
||||
container_name: core-services
|
||||
ports:
|
||||
- "3000:3000"
|
||||
- "3001:3001"
|
||||
depends_on:
|
||||
- db
|
||||
- redis
|
||||
- elasticsearch
|
||||
environment:
|
||||
name: core-services
|
||||
SERVICES: api,library,importqueue,settings,search,socket,imagetransformation,opds
|
||||
env_file: /boot/config/plugins/compose.manager/projects/ThreeTwo/.env
|
||||
volumes:
|
||||
- *comics-volume
|
||||
- *userdata-volume
|
||||
|
||||
networks:
|
||||
- proxy
|
||||
|
||||
db:
|
||||
image: "bitnami/mongodb:latest"
|
||||
container_name: database
|
||||
networks:
|
||||
- proxy
|
||||
ports:
|
||||
- "27017:27017"
|
||||
volumes:
|
||||
- "mongodb_data:/bitnami/mongodb"
|
||||
|
||||
redis:
|
||||
image: "bitnami/redis:latest"
|
||||
container_name: queue
|
||||
environment:
|
||||
ALLOW_EMPTY_PASSWORD: "yes"
|
||||
networks:
|
||||
- proxy
|
||||
ports:
|
||||
- "6379:6379"
|
||||
|
||||
elasticsearch:
|
||||
image: docker.elastic.co/elasticsearch/elasticsearch:7.16.2
|
||||
container_name: elasticsearch
|
||||
environment:
|
||||
- "discovery.type=single-node"
|
||||
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
|
||||
- "xpack.security.enabled=true"
|
||||
- "xpack.security.authc.api_key.enabled=true"
|
||||
- "ELASTIC_PASSWORD=password"
|
||||
ulimits:
|
||||
memlock:
|
||||
soft: -1
|
||||
hard: -1
|
||||
ports:
|
||||
- 9200:9200
|
||||
networks:
|
||||
- proxy
|
||||
|
||||
networks:
|
||||
proxy:
|
||||
external: true
|
||||
|
||||
volumes:
|
||||
mongodb_data:
|
||||
driver: local
|
||||
elastic:
|
||||
driver: local
|
||||
```
|
||||
|
||||
5. Click `Save Changes`
|
||||
6. Click `Compose Up` and check for errors.
|
||||
7. If all goes well, you should see the following containers appear as icons without images in the unRAID `Docker Containers` panel:
|
||||
1. `threetwo-ui`
|
||||
2. `core-services`
|
||||
3. `metadata-service`
|
||||
4. `elasticsearch`
|
||||
5. `database`
|
||||
6. `queue`
|
||||
8. You can look at the logs for these containers by clicking on their icons and then `Logs`
|
||||
|
||||
### Ports
|
||||
|
||||
1. `threetwo-ui`, runs on port 8050
|
||||
2. `threetwo-core-service` on 3000
|
||||
3. `threetwo-metadata-service` on 3080
|
||||
|
||||
### Getting Updates
|
||||
|
||||
Go to the `Docker Containers` tab from the unRAID web UI:
|
||||
|
||||
1. Click on `Compose Down`, and let the command finish running.
|
||||
2. Click on `Compose Pull`, and let it finish running.
|
||||
3. Click on `Compose Up` to bring up the stack.
|
||||
@@ -1,64 +0,0 @@
|
||||
---
|
||||
sidebar_position: 2
|
||||
id: unraid_install
|
||||
title: Install ThreeTwo! on unRaid
|
||||
---
|
||||
|
||||
### Notes
|
||||
|
||||
- Currently, `ThreeTwo!` is installed along with its dependencies using `docker-compose`. The easiest way to install it on `unRAID` is to use a VM.
|
||||
- Skip the VM creation steps, if you already have a Debian VM
|
||||
|
||||
### Pre-requisites
|
||||
|
||||
This guide assumes the following is installed or readily available:
|
||||
|
||||
- `unRaid 6.9.2` (this version was tested against `6.9.2`)
|
||||
- `Debian 10.x` (Grab the install `.iso` [here](https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-11.1.0-amd64-netinst.iso))
|
||||
|
||||
### Getting the VM up and running
|
||||
|
||||
1. Download the `Debian` install `.iso`
|
||||
2. Place it in a folder accessible by the VM
|
||||
3. Go to the `VM` tab in your `unRaid` navigation
|
||||
4. Click `Add VM`
|
||||
5. From the list presented to you, click `Debian` under `Linux`
|
||||
6. On the VM configration page, enter the desired options for memory, CPU cores, vdisk allocation
|
||||
7. Make sure that you have set the volume containing the comics correctly for `Unraid Share`
|
||||
8. Make sure that you have also set the `Unraid Mount tag` option
|
||||
9. Make sure that the network bridge is set to `br0`
|
||||
10. Set a password for `VNC` so you can follow through with a graphical install if you so wish
|
||||
|
||||
### Installing Debian on the VM
|
||||
|
||||
1. Launch the VM via `VNC Remote` option
|
||||
2. Follow the steps of the graphical installer
|
||||
3. Create a `root` user and a normal `user` and set the passwords for both
|
||||
|
||||
### Docker pre-requisites
|
||||
|
||||
1. [Make sure you have](https://unix.stackexchange.com/questions/354928/bash-sudo-command-not-found) `sudo`
|
||||
2. Make sure you have `ssh` access for the user you created earlier
|
||||
3. `ssh` into the VM as the non-root user
|
||||
4. Install [Docker Engine](https://docs.docker.com/engine/install/debian/)
|
||||
5. Install [docker-compose](https://docs.docker.com/compose/install/#install-compose-on-linux-systems)
|
||||
6. Verify that `docker` and `docker-compose` commands work
|
||||
|
||||
### Installation
|
||||
|
||||
1. Clone the repo: `git clone https://github.com/rishighan/threetwo.git`
|
||||
2. Change the directory: `cd threetwo`
|
||||
3. Create directories within `threetwo`
|
||||
```bash
|
||||
mkdir comics userdata
|
||||
|
||||
mkdir userdata/covers userdata/temporary userdata/expanded
|
||||
```
|
||||
4. Create an external docker network using `sudo docker network create proxy`
|
||||
5. Run `sudo docker-compose up --build -d`
|
||||
6. Wait for a hot minute
|
||||
|
||||
### Post-install checks
|
||||
|
||||
1. Once the `docker-compose up` command successfully completes, you can check the spun-up containers using `docker ps`
|
||||
2.
|
||||
17
docs/unraid_install/index.html
Normal file
@@ -1,119 +0,0 @@
|
||||
// @ts-check
|
||||
// Note: type annotations allow type checking and IDEs autocompletion
|
||||
|
||||
// const lightCodeTheme = require("prism-react-renderer/themes/github");
|
||||
// const darkCodeTheme = require("prism-react-renderer/themes/dracula");
|
||||
import { themes } from "prism-react-renderer";
|
||||
console.log("endha", themes);
|
||||
/** @type {import('@docusaurus/types').Config} */
|
||||
const config = {
|
||||
title: "ThreeTwo!",
|
||||
tagline: "Start Flipping!",
|
||||
url: "https://rishighan.github.io",
|
||||
baseUrl: "/threetwo-docs/",
|
||||
onBrokenLinks: "throw",
|
||||
onBrokenMarkdownLinks: "warn",
|
||||
favicon: "img/favicon.ico",
|
||||
organizationName: "rishighan", // Usually your GitHub org/user name.
|
||||
projectName: "threetwo-docs", // Usually your repo name.
|
||||
|
||||
presets: [
|
||||
[
|
||||
"@docusaurus/preset-classic",
|
||||
/** @type {import('@docusaurus/preset-classic').Options} */
|
||||
({
|
||||
docs: {
|
||||
sidebarPath: require.resolve("./sidebars.js"),
|
||||
// Please change this to your repo.
|
||||
editUrl: "https://github.com/facebook/docusaurus/edit/main/website/",
|
||||
},
|
||||
blog: {
|
||||
showReadingTime: true,
|
||||
// Please change this to your repo.
|
||||
editUrl:
|
||||
"https://github.com/facebook/docusaurus/edit/main/website/blog/",
|
||||
},
|
||||
theme: {
|
||||
customCss: require.resolve("./src/css/custom.css"),
|
||||
},
|
||||
}),
|
||||
],
|
||||
],
|
||||
|
||||
themeConfig:
|
||||
/** @type {import('@docusaurus/preset-classic').ThemeConfig} */
|
||||
({
|
||||
navbar: {
|
||||
title: "ThreeTwo!",
|
||||
logo: {
|
||||
alt: "My Site Logo",
|
||||
src: "img/threetwo.png",
|
||||
},
|
||||
items: [
|
||||
{
|
||||
type: "doc",
|
||||
docId: "intro",
|
||||
position: "left",
|
||||
label: "Quick Start",
|
||||
},
|
||||
{ to: "/blog", label: "Blog", position: "left" },
|
||||
{
|
||||
href: "https://github.com/rishighan/threetwo",
|
||||
label: "GitHub",
|
||||
position: "right",
|
||||
},
|
||||
],
|
||||
},
|
||||
footer: {
|
||||
style: "dark",
|
||||
links: [
|
||||
{
|
||||
title: "Docs",
|
||||
items: [
|
||||
{
|
||||
label: "Tutorial",
|
||||
to: "/docs/intro",
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "Community",
|
||||
items: [
|
||||
{
|
||||
label: "Github",
|
||||
href: "https://github.com/rishighan/threetwo",
|
||||
},
|
||||
{
|
||||
label: "Discord",
|
||||
href: "https://discord.gg/n4HZ4j33uT",
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
title: "More",
|
||||
items: [
|
||||
{
|
||||
label: "Blog",
|
||||
to: "/blog",
|
||||
},
|
||||
{
|
||||
label: "Rishi Ghan",
|
||||
href: "https://rishighan.com",
|
||||
},
|
||||
],
|
||||
},
|
||||
],
|
||||
copyright: `Copyright © ${new Date().getFullYear()} Quasar Software, LLC. Built with Docusaurus.`,
|
||||
},
|
||||
colorMode: {
|
||||
disableSwitch: false,
|
||||
respectPrefersColorScheme: false,
|
||||
},
|
||||
prism: {
|
||||
theme: themes.github,
|
||||
darkTheme: themes.dracula,
|
||||
},
|
||||
}),
|
||||
};
|
||||
|
||||
module.exports = config;
|
||||
|
Before Width: | Height: | Size: 274 KiB After Width: | Height: | Size: 274 KiB |
|
Before Width: | Height: | Size: 52 KiB After Width: | Height: | Size: 52 KiB |
|
Before Width: | Height: | Size: 72 KiB After Width: | Height: | Size: 72 KiB |
|
Before Width: | Height: | Size: 74 KiB After Width: | Height: | Size: 74 KiB |
|
Before Width: | Height: | Size: 5.0 KiB After Width: | Height: | Size: 5.0 KiB |
|
Before Width: | Height: | Size: 3.5 KiB After Width: | Height: | Size: 3.5 KiB |
|
Before Width: | Height: | Size: 6.3 KiB After Width: | Height: | Size: 6.3 KiB |
|
Before Width: | Height: | Size: 4.1 KiB After Width: | Height: | Size: 4.1 KiB |
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 29 KiB After Width: | Height: | Size: 29 KiB |
|
Before Width: | Height: | Size: 31 KiB After Width: | Height: | Size: 31 KiB |
|
Before Width: | Height: | Size: 35 KiB After Width: | Height: | Size: 35 KiB |
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
17
index.html
Normal file
17
markdown-page/index.html
Normal file
@@ -0,0 +1,17 @@
|
||||
<!doctype html>
|
||||
<html lang="en" dir="ltr" class="mdx-wrapper mdx-page plugin-pages plugin-id-default">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="generator" content="Docusaurus v2.2.0">
|
||||
<title data-rh="true">Markdown page example | ThreeTwo!</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://rishighan.github.io/threetwo-docs/markdown-page"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docusaurus_tag" content="default"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" name="docsearch:docusaurus_tag" content="default"><meta data-rh="true" property="og:title" content="Markdown page example | ThreeTwo!"><meta data-rh="true" name="description" content="You don't need React to write simple standalone pages."><meta data-rh="true" property="og:description" content="You don't need React to write simple standalone pages."><link data-rh="true" rel="icon" href="/threetwo-docs/img/favicon.ico"><link data-rh="true" rel="canonical" href="https://rishighan.github.io/threetwo-docs/markdown-page"><link data-rh="true" rel="alternate" href="https://rishighan.github.io/threetwo-docs/markdown-page" hreflang="en"><link data-rh="true" rel="alternate" href="https://rishighan.github.io/threetwo-docs/markdown-page" hreflang="x-default"><link rel="alternate" type="application/rss+xml" href="/threetwo-docs/blog/rss.xml" title="ThreeTwo! RSS Feed">
|
||||
<link rel="alternate" type="application/atom+xml" href="/threetwo-docs/blog/atom.xml" title="ThreeTwo! Atom Feed"><link rel="stylesheet" href="/threetwo-docs/assets/css/styles.e3d40972.css">
|
||||
<link rel="preload" href="/threetwo-docs/assets/js/runtime~main.e5e6932c.js" as="script">
|
||||
<link rel="preload" href="/threetwo-docs/assets/js/main.77f40a88.js" as="script">
|
||||
</head>
|
||||
<body class="navigation-with-keyboard">
|
||||
<script>!function(){function t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var t=null;try{t=localStorage.getItem("theme")}catch(t){}return t}();t(null!==e?e:"light")}()</script><div id="__docusaurus">
|
||||
<div role="region" aria-label="Skip to main content"><a class="skipToContent_fXgn" href="#docusaurus_skipToContent_fallback">Skip to main content</a></div><nav class="navbar navbar--fixed-top"><div class="navbar__inner"><div class="navbar__items"><button aria-label="Toggle navigation bar" aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"></path></svg></button><a class="navbar__brand" href="/threetwo-docs/"><div class="navbar__logo"><img src="/threetwo-docs/img/threetwo.png" alt="My Site Logo" class="themedImage_ToTc themedImage--light_HNdA"><img src="/threetwo-docs/img/threetwo.png" alt="My Site Logo" class="themedImage_ToTc themedImage--dark_i4oU"></div><b class="navbar__title text--truncate">ThreeTwo!</b></a><a class="navbar__item navbar__link" href="/threetwo-docs/docs/intro">Quick Start</a><a class="navbar__item navbar__link" href="/threetwo-docs/blog">Blog</a></div><div class="navbar__items navbar__items--right"><a href="https://github.com/rishighan/threetwo" target="_blank" rel="noopener noreferrer" class="navbar__item navbar__link">GitHub<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a><div class="searchBox_ZlJk"></div></div></div><div role="presentation" class="navbar-sidebar__backdrop"></div></nav><div id="docusaurus_skipToContent_fallback" class="main-wrapper mainWrapper_z2l0"><main class="container container--fluid margin-vert--lg"><div class="row mdxPageWrapper_j9I6"><div class="col col--8"><article><h1>Markdown page example</h1><p>You don't need React to write simple standalone pages.</p></article></div></div></main></div><footer class="footer footer--dark"><div class="container container-fluid"><div class="row footer__links"><div class="col footer__col"><div class="footer__title">Docs</div><ul class="footer__items clean-list"><li class="footer__item"><a class="footer__link-item" href="/threetwo-docs/docs/intro">Tutorial</a></li></ul></div><div class="col footer__col"><div class="footer__title">Community</div><ul class="footer__items clean-list"><li class="footer__item"><a href="https://github.com/rishighan/threetwo" target="_blank" rel="noopener noreferrer" class="footer__link-item">Github<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li><li class="footer__item"><a href="https://discord.gg/n4HZ4j33uT" target="_blank" rel="noopener noreferrer" class="footer__link-item">Discord<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li></ul></div><div class="col footer__col"><div class="footer__title">More</div><ul class="footer__items clean-list"><li class="footer__item"><a class="footer__link-item" href="/threetwo-docs/blog">Blog</a></li><li class="footer__item"><a href="https://rishighan.com" target="_blank" rel="noopener noreferrer" class="footer__link-item">Rishi Ghan<svg width="13.5" height="13.5" aria-hidden="true" viewBox="0 0 24 24" class="iconExternalLink_nPIU"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"></path></svg></a></li></ul></div></div><div class="footer__bottom text--center"><div class="footer__copyright">Copyright © 2023 Quasar Software, LLC. Built with Docusaurus.</div></div></div></footer></div>
|
||||
<script src="/threetwo-docs/assets/js/runtime~main.e5e6932c.js"></script>
|
||||
<script src="/threetwo-docs/assets/js/main.77f40a88.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
50
package.json
@@ -1,50 +0,0 @@
|
||||
{
|
||||
"name": "threetwo-docs",
|
||||
"version": "0.0.0",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"docusaurus": "docusaurus",
|
||||
"start": "docusaurus start",
|
||||
"build": "docusaurus build",
|
||||
"swizzle": "docusaurus swizzle",
|
||||
"deploy": "docusaurus deploy",
|
||||
"clear": "docusaurus clear",
|
||||
"serve": "docusaurus serve",
|
||||
"write-translations": "docusaurus write-translations",
|
||||
"write-heading-ids": "docusaurus write-heading-ids",
|
||||
"typecheck": "tsc"
|
||||
},
|
||||
"dependencies": {
|
||||
"@docusaurus/core": "^3.1.1",
|
||||
"@docusaurus/preset-classic": "^3.1.1",
|
||||
"@mdx-js/react": "^3.0.0",
|
||||
"@svgr/webpack": "^5.5.0",
|
||||
"clsx": "^1.1.1",
|
||||
"file-loader": "^6.2.0",
|
||||
"prism-react-renderer": "^2.3.1",
|
||||
"react": "^18.2.0",
|
||||
"react-dom": "^18.2.0",
|
||||
"url-loader": "^4.1.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@docusaurus/module-type-aliases": "^3.1.1",
|
||||
"@docusaurus/tsconfig": "^3.1.1",
|
||||
"@docusaurus/types": "^3.1.1",
|
||||
"@types/react": "^18.2.29"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=18.0"
|
||||
},
|
||||
"browserslist": {
|
||||
"production": [
|
||||
">0.5%",
|
||||
"not dead",
|
||||
"not op_mini all"
|
||||
],
|
||||
"development": [
|
||||
"last 1 chrome version",
|
||||
"last 1 firefox version",
|
||||
"last 1 safari version"
|
||||
]
|
||||
}
|
||||
}
|
||||
26
sidebars.js
@@ -1,26 +0,0 @@
|
||||
/**
|
||||
* Creating a sidebar enables you to:
|
||||
- create an ordered group of docs
|
||||
- render a sidebar for each doc of that group
|
||||
- provide next/previous navigation
|
||||
|
||||
The sidebars can be generated from the filesystem, or explicitly defined here.
|
||||
|
||||
Create as many sidebars as you want.
|
||||
*/
|
||||
|
||||
module.exports = {
|
||||
// By default, Docusaurus generates a sidebar from the docs folder structure
|
||||
tutorialSidebar: [{type: 'autogenerated', dirName: '.'}],
|
||||
|
||||
// But you can create a sidebar manually
|
||||
/*
|
||||
tutorialSidebar: [
|
||||
{
|
||||
type: 'category',
|
||||
label: 'Tutorial',
|
||||
items: ['hello'],
|
||||
},
|
||||
],
|
||||
*/
|
||||
};
|
||||
1
sitemap.xml
Normal file
@@ -0,0 +1 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:news="http://www.google.com/schemas/sitemap-news/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"><url><loc>https://rishighan.github.io/threetwo-docs/blog</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://rishighan.github.io/threetwo-docs/blog/archive</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://rishighan.github.io/threetwo-docs/blog/first-blog-post</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://rishighan.github.io/threetwo-docs/blog/long-blog-post</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://rishighan.github.io/threetwo-docs/blog/mdx-blog-post</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://rishighan.github.io/threetwo-docs/blog/tags</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://rishighan.github.io/threetwo-docs/blog/tags/docusaurus</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://rishighan.github.io/threetwo-docs/blog/tags/facebook</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://rishighan.github.io/threetwo-docs/blog/tags/hello</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://rishighan.github.io/threetwo-docs/blog/tags/hola</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://rishighan.github.io/threetwo-docs/blog/welcome</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://rishighan.github.io/threetwo-docs/markdown-page</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://rishighan.github.io/threetwo-docs/docs/architecture</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://rishighan.github.io/threetwo-docs/docs/intro</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://rishighan.github.io/threetwo-docs/docs/resources</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://rishighan.github.io/threetwo-docs/docs/unRAID_dockercompose</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://rishighan.github.io/threetwo-docs/docs/unraid_install</loc><changefreq>weekly</changefreq><priority>0.5</priority></url><url><loc>https://rishighan.github.io/threetwo-docs/</loc><changefreq>weekly</changefreq><priority>0.5</priority></url></urlset>
|
||||