mirror of
https://gitlab.com/octospacc/octospacc.gitlab.io
synced 2024-12-21 22:03:55 +01:00
187 lines
7.9 KiB
HTML
187 lines
7.9 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8"/>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
|
<title>OctoSpacc Place | Hub</title>
|
|
<meta name="description" content="Kinda empty :/"/>
|
|
<meta property="og:title" content="OctoSpacc Place | Hub"/>
|
|
<meta property="og:description" content="Kinda empty :/"/>
|
|
<meta property="og:image" content="RichPreview/index.jpg"/>
|
|
<meta property="og:url" content="https://hub.octt.eu.org/"/>
|
|
<link rel="canonical" href="https://hub.octt.eu.org/"/>
|
|
<link rel="shortcut icon" href="favicon.png" type="image/x-icon"/>
|
|
<script src="https://cdn.jsdelivr.net/npm/js-confetti@latest/dist/js-confetti.browser.js"></script>
|
|
<link href="./Assets/CSS/Dark.css" rel="stylesheet"/>
|
|
<script src="./Assets/JS/RandomGIF.js"></script>
|
|
<script src="./Assets/JS/CurrentAge.js"></script>
|
|
<script src="../shared/OctoHub-Global.js"></script>
|
|
</head>
|
|
<body>
|
|
<div id="ConfettiCanvas"></div>
|
|
<div class="Content" style="text-align: center;">
|
|
<div>
|
|
<h1>OctoSpacc Hub</h1><br/><br/>
|
|
<h3>Will this place ever be truly filled up?</h3>
|
|
<h5>At the moment, it's still kind of an humble hub...</h5>
|
|
<h6>(But every once in a while I do make a new link appear below!)</h6>
|
|
</div>
|
|
<br/><br/>
|
|
<div style="font-size: x-small">
|
|
<audio src="https://octospacc.gitlab.io/Web-ThirdParty-Unknown/Assets/Media/MightyFinalFightSlums.mp3" onloadstart="this.volume=0.5" controls muted loop autoplay></audio>
|
|
<p>Theme Song: <i><a target="_blank" href="https://www.youtube.com/watch?v=TwqutMIfc94">Spirit of Famiclone Selection Menu</a></i></p>
|
|
</div>
|
|
<br/><br/><br/>
|
|
<div id="Links"><div>
|
|
<h3><span data-lang-it="Siti e Contenuti">Sites and Content</span> 📚️</h3>
|
|
<h4><!--
|
|
--><small>[🇮🇹]</small>
|
|
<a rel="me" href="https://sitoctt.octt.eu.org">✨sitoctt✨</a>
|
|
<small>(personale long-form blog & wiki)</small><!--
|
|
--></h4>
|
|
<h4><!--
|
|
--><small>[🇮🇹]</small>
|
|
<a rel="me" href="https://octospacc.altervista.org">📓️ fritto misto di octospacc</a>
|
|
<small>(microblog)</small><!--
|
|
--></h4>
|
|
<h4><!--
|
|
--><a rel="me" href="https://memos.octt.eu.org">📝 Memocto</a>
|
|
<small>(public notes & knowledge base)</small><!--
|
|
--></h4>
|
|
<h4><del><!--
|
|
--><a rel="me" href="https://kb.octt.eu.org">📝 OcttKB</a>
|
|
<small>(knowledge base & personal wiki)</small><!--
|
|
--></del></h4>
|
|
<!--<h4><del><a href="https://octtspacc.gitlab.io/bachecoctt">🔖️ bachecoctt</a> (my WebPinBoard)</del></h4>-->
|
|
</div><br/><div>
|
|
<h3>Web Apps 🈸️</h3>
|
|
<h4><!--
|
|
--><a href="./HashyMagnet/">🧲 HashyMagnet</a>
|
|
<small>(BitTorrent Hash to Magnet)</small><!--
|
|
--></h4>
|
|
<h4><!--
|
|
--><a href="./FramesBrowser/">🪟️ Frames Browser</a>
|
|
<small>(<i>yo dawg, i heard you...</i>)</small><!--
|
|
--></h4>
|
|
<h4><a href="./MatrixStickerHelper/">🃏️ [Matrix] Sticker Helper</a></h4>
|
|
<h4><!--
|
|
--><a href="./TiVuOcto/">📺️ TiVuOcto</a>
|
|
<small>(Web IPTV Player)</small><!--
|
|
--></h4>
|
|
<h4><!--
|
|
--><a href="./SpiderADB/">🕷️ SpiderADB</a>
|
|
<small>(Android debugging for Web)</small><!--
|
|
--></h4>
|
|
<h4><!--
|
|
--><a href="./WuppiMini/">☘️ WuppìMini</a>
|
|
<small>(basic-HTML posting client)</small><!--
|
|
--></h4>
|
|
<h4><!--
|
|
--><a href="./MBViewer/">👁️🗨️️ MBViewer</a>
|
|
<small>(WordPress/RSS/... chat-like UI)</small><!--
|
|
--></h4>
|
|
<h4><!--
|
|
--><a href="./Ecoji/">🦜 Ecoji v1</a>
|
|
<small>(webapp fork)</small><!--
|
|
--></h4>
|
|
</div><br/><div>
|
|
<h3>??? 💖️</h3>
|
|
<h4><a href="https://octospacc.gitlab.io/FumoPrisms/">🔺️ <span data-lang-it="Fumo Prismi">Fumo Prisms</span> (!)</a></h4>
|
|
<h4><a href="./Collections/">🎀 <span data-lang-it="Mie Collezioni">My Collections</span></a> <small data-lang-it="(di post/pagine)">(of posts/pages)</small></h4>
|
|
<h4><a href="./Userscripts/">⚙️ <span data-lang-it="Miei Userscript">My Userscripts</span></a> <small data-lang-it="(per un web più bellino)">for a nicer web</small></h4>
|
|
<h4><span data-lang-it="Begli">Nice</span> <a href="https://addons.mozilla.org/firefox/collections/18049170/octollection/">🦊 <span data-lang-it="Add-on Firefox">Firefox Add-ons</span></a>
|
|
<small>(<a href="https://addons.mozilla.org/firefox/user/18049170/" data-lang-it="miei">mine</a> + <span data-lang-it="consigli">suggestions</span>)</small></h4>
|
|
<h4><a href="https://octospacc.altervista.org/contatti-%f0%9f%98%ba%ef%b8%8f/">😺️ <span data-lang-it="Contattami">Contact me</span></a></h4>
|
|
</div></div>
|
|
<br/><br/><br/>
|
|
<div id="OcttAgeView">
|
|
<p id="OcttCurrentAge"></p>
|
|
<noscript><p>There should be a ticking clock here, but your browser isn't loading the JavaScript.</p></noscript>
|
|
<br/>
|
|
</div>
|
|
<br/><br/>
|
|
</div>
|
|
<script src="./Assets/JS/CurrentAgeRenderIndex.js"></script>
|
|
<div class="Footer">
|
|
<span class="FlexItem FooterLeft">
|
|
<a href="https://gitlab.com/octospacc/octospacc.gitlab.io">📐 Sources <-</a>
|
|
</span>
|
|
<span> </span>
|
|
<span class="FlexItem FooterRight">
|
|
<a rel="me" href="https://gitlab.com/octospacc">-> GitLab 🦊</a>
|
|
<span> </span>
|
|
<a rel="me" href="https://github.com/andrigamerita">-> GitHub 🐙️</a>
|
|
<span> </span>
|
|
<a rel="me" href="https://octt.itch.io">-> Itch.io 🛍️</a>
|
|
<span> </span>
|
|
<a rel="me" href="https://mastodon.uno/@octo">-> Mastodon (<dfn title="inactive">💤️</dfn>) 🐘</a>
|
|
<!--<span> </span>
|
|
<a rel="me" href="https://botsin.space/@octtpz">-> pezziposting 🦜</a>-->
|
|
<span> </span>
|
|
<a href="https://bbs.spacc.eu.org">-> Forum 🏛️</a>
|
|
<span> </span>
|
|
<a href="https://spacc-inc.github.io">-> Spacc ⛏️</a>
|
|
</span>
|
|
</div>
|
|
<select id="LanguageSelect">
|
|
<option value="en">🇬🇧️ English</option>
|
|
<option value="it">🇮🇹️ Italiano</option>
|
|
</select>
|
|
<script>(function(){
|
|
function datasetLangKey (language) {
|
|
return ('lang' + language[0].toUpperCase() + language.slice(1));
|
|
}
|
|
var language = (localStorage.getItem('OctoSpaccHub-language') || (navigator.language || navigator.languages[0]).split('-')[0]);
|
|
var languages = Array.from(LanguageSelect.querySelectorAll('option')).map(function(option){ return option.value; });
|
|
LanguageSelect.onchange = function(){
|
|
var language = this.selectedOptions[0].value;
|
|
Array.from(document.querySelectorAll('[data-lang-'+language+']')).forEach(function(textEl){
|
|
var defaultKey = datasetLangKey(document.documentElement.lang);
|
|
if (!textEl.dataset[defaultKey]) {
|
|
textEl.dataset[defaultKey] = textEl.innerHTML;
|
|
}
|
|
textEl.innerHTML = textEl.dataset[datasetLangKey(language)];
|
|
});
|
|
localStorage.setItem('OctoSpaccHub-language', language);
|
|
};
|
|
if (languages.includes(language)) {
|
|
LanguageSelect.querySelector('option[value="'+language+'"]').selected = true;
|
|
LanguageSelect.onchange();
|
|
}
|
|
})();</script>
|
|
<script>(function(){
|
|
var footerElem = document.querySelector('div.Footer');
|
|
var footerScrollLast;
|
|
var footerScrollDirection = 1;
|
|
var footerShouldScroll = true;
|
|
footerElem.onclick = footerElem.ontouch = footerElem.ontouchstart = footerElem.onmouseover = footerElem.onmouseenter = stopFooterScroll;
|
|
footerElem.onmouseleave = footerElem.ontouchend = restartFooterScroll;
|
|
var footerScrollIndex;
|
|
function serviceFooterScroll () {
|
|
footerScrollIndex = setInterval(function(){
|
|
if (footerElem.scrollLeft === footerScrollLast) {
|
|
reverseScrollDirection();
|
|
}
|
|
footerScrollLast = footerElem.scrollLeft;
|
|
footerElem.scrollLeft += footerScrollDirection;
|
|
}, 25);
|
|
}
|
|
function reverseScrollDirection () {
|
|
footerScrollDirection *= -1;
|
|
stopFooterScroll();
|
|
restartFooterScroll(1250);
|
|
}
|
|
function restartFooterScroll (delay) {
|
|
if (!footerScrollIndex) {
|
|
footerScrollIndex = setTimeout(serviceFooterScroll, (delay || 2000));
|
|
}
|
|
}
|
|
function stopFooterScroll () {
|
|
clearInterval(footerScrollIndex);
|
|
footerScrollIndex = null;
|
|
}
|
|
serviceFooterScroll();
|
|
})();</script>
|
|
</body>
|
|
</html>
|