Add social page with archived mastodon posts, move source to /site

This commit is contained in:
天クマ 2026-07-04 16:57:55 -03:00
commit 648869bf76
40 changed files with 58 additions and 2 deletions

6
site/misc/88x31/en.json Normal file
View file

@ -0,0 +1,6 @@
{
"pageDescription": "My collection of 88x31 GIFs and images.",
"intro": "This is the collection of 88x31 GIFs and images I've downloaded across the web.",
"others": "Others",
"me": "Made by me"
}

30
site/misc/88x31/index.njk Normal file
View file

@ -0,0 +1,30 @@
---
layout: base.njk
pagination:
data: languages
size: 1
alias: langKey
<!-- 88x31: WEBP.gif -->
pageTitle: 88x31
tags: misc
---
{% from "macros.njk" import i88x31 with context %}
<main class="misc88x31Page">
<div class="box pageHeaderBox">
<h1>88x31</h1>
<p>{{ t.intro }}</p>
</div>
<hr>
<h2>{{ t.me }}</h2>
<div class="homeBadgesBox">
{{ i88x31("tenkuma.gif") }}
{{ i88x31("mrnandokk.gif") }}
</div>
<h2>{{ t.others }}</h2>
<div class="homeBadgesBox">
{% for image in collections.88x31 %}
{{ i88x31(image.fileSlug) }}
{% endfor %}
</div>
</main>

6
site/misc/88x31/pt.json Normal file
View file

@ -0,0 +1,6 @@
{
"pageDescription": "Minha coleção de GIFs e imagens 88x31.",
"intro": "Essa é uma coleção de GIFs e imagens 88x31 que eu baixei pela internet.",
"others": "Outros",
"me": "Feitos por mim"
}

23
site/misc/about/en.json Normal file
View file

@ -0,0 +1,23 @@
{
"pageTitle": "About this website",
"pageDescription": "Information, attributions and credits about this website.",
"introText1": "This website and blog is a project of Adrian Victor, made using the Eleventy static website generator. It's source code is available ",
"introRepoLinkText": "on this repository",
"introText2": " under the ",
"introLicenseLinkText": "Apache license",
"privacyText1": "The scripts loaded inside the website do save the preferences you set in the settings page",
"privacyText2": "and the music player status",
"privacyText3": "in your browser's local storage. External servers are queried exclusively for loading content used to display the current page. JavaScript is only used to enhance the navigation experience and is totally optional.",
"attributionsHeading": "Attributions",
"bgImageLabel": "Background image (bear.png)",
"bgImageCredit": "Abenakis @ Pixbay",
"badges88x31Label": "88x31 images",
"neocitiesCommunity": "Neocities community",
"clickSoundLabel": "Click sound effect",
"thanksHeading": "Thanks",
"eleventyDesc": "Static website generator, used in this website.",
"githubPagesDesc": "For web hosting.",
"recentChangesPluginDesc": "Plugin for listing recent commits.",
"inlineFaviconPluginDesc": "Support for inline link icons.",
"poisonPluginDesc": "Hidden AI poisoning inside page source."
}

55
site/misc/about/index.njk Normal file
View file

@ -0,0 +1,55 @@
---
layout: base.njk
pagination:
data: languages
size: 1
alias: langKey
tags: misc
backgroundOpacity: "0.28"
background: "bear3.jpg"
---
<main>
<h1>{{ t.pageTitle }}</h1>
<p>{{ t.introText1 }} <a href="https://github.com/adrianvic/adrianvic.github.io">{{ t.introRepoLinkText }}</a> {{ t.introText2 }} <a href="{{ ('/static/LICENSE.txt') | url }}">{{ t.introLicenseLinkText }}</a>.</p>
<p>{{ t.privacyText1 }} <span class="noWrap">(<img class="lineHeight invertedc" src="{{ ('/static/images/gears.svg') | url }}">)</span> {{ t.privacyText2 }} <span class="noWrap">(<img class="lineHeight invertedc" src="{{ ('/static/images/sound-on.png') | url }}">)</span> {{ t.privacyText3 }}</p>
<h2>{{ t.attributionsHeading }}</h2>
<dl>
<dt>{{ t.bgImageLabel }}</dt>
<dd>{{ t.bgImageCredit }}</dd>
<dt>{{ t.badges88x31Label }}</dt>
<dd><a href="https://88x31.nl/">88x31.nl</a></dd>
<dd><a href="https://cyber.dabamos.de/88x31/">dabamos.de</a></dd>
<dd><a href="https://neocities.org/browse">{{ t.neocitiesCommunity }}</a></dd>
<dt>{{ t.clickSoundLabel }}</dt>
<dd><a href="https://www.myinstants.com/en/instant/dog-clicker-7758/">lilypids @ Myinstants</a></dd>
</dl>
<h2>{{ t.thanksHeading }}</h2>
<dl>
<dt>Eleventy (11ty)</dt>
<dd>{{ t.eleventyDesc }}</dd>
<dt>GitHub Pages</dt>
<dd>{{ t.githubPagesDesc }}</dd>
<dt><a href="https://www.npmjs.com/package/eleventy-plugin-recent-changes">eleventy-plugin-recent-changes</a> {{ i18n[langKey].by }} workeffortwaste</dt>
<dd>{{ t.recentChangesPluginDesc }}</dd>
<dt><a href="https://www.npmjs.com/package/eleventy-plugin-inline-link-favicon">eleventy-plugin-inline-link-favicon</a> {{ i18n[langKey].by }} bmuenzenmeyer</dt>
<dd>{{ t.inlineFaviconPluginDesc }}</dd>
<dt><a href="https://www.npmjs.com/package/eleventy-plugin-poison">eleventy-plugin-poison</a> {{ i18n[langKey].by }} gingerchew</dt>
<dd>{{ t.poisonPluginDesc }}</dd>
</dl>
</main>
<aside>
<div id="aboutChangelog">
<div>
<h1 class="nomargin negativeMargin">{{ i18n[langKey].changes | smartTitle }}</h1>
<hr style="margin-bottom: .4em;">
</div>
<ul>
{%- for commit in collections.recentChanges %}
<li class="doubleLine"><a class="textColored" href="https://github.com/adrianvic/adrianvic.github.io/commit/{{ commit.hash }}"><b>{{ commit.abbrevHash }}</b> {{ commit.subject }}</a></li>
{%- endfor %}
</ul>
</div>
{% include 'widgets/internetometer-aside.html' %}
</aside>

23
site/misc/about/pt.json Normal file
View file

@ -0,0 +1,23 @@
{
"pageTitle": "Sobre o website",
"pageDescription": "Informações, atribuições e créditos sobre esse website.",
"introText1": "Esse website e blog é um projeto de Adrian Victor, feito com a tecnologia do gerador de sites estáticos Eleventy. O código fonte está disponível",
"introRepoLinkText": "nesse repositório",
"introText2": "sob",
"introLicenseLinkText": "a licensa de código aberto Apache",
"privacyText1": "Os scripts carregados dentro do website salvam suas preferências indicadas na área de configuração",
"privacyText2": "e status do player de música",
"privacyText3": "no armazenamento local do seu navegador. Servidores externos são acessados exclusivamente para carregar conteúdo utilizado na exibição da página. JavaScript é usado apenas para melhorar a experiência de navegação e é totalmente opcional.",
"attributionsHeading": "Atribuições",
"bgImageLabel": "Imagem de fundo (bear.png)",
"bgImageCredit": "Abenakis @ Pixbay",
"badges88x31Label": "Imagens 88x31",
"neocitiesCommunity": "Comunidade do Neocities",
"clickSoundLabel": "Efeito sonoro de clique",
"thanksHeading": "Agradecimentos",
"eleventyDesc": "Gerador de sites estáticos, usado neste website.",
"githubPagesDesc": "Pela hospedagem do website.",
"recentChangesPluginDesc": "Plugin para listagem de commits recentes.",
"inlineFaviconPluginDesc": "Suporte para icones em links.",
"poisonPluginDesc": "Envenenamento de IA dentro do código fonte das páginas."
}

View file

@ -0,0 +1,158 @@
{
"links": {
"downloads": {
"88x31": [
"iglooftp.gif",
"eftpbutton.gif"
],
"links": [
{
"name": "MalwareWatch",
"link": "https://malwarewatch.org/",
"description": {
"pt": "Website do Enderman. Tem download de vários softwares úteis, imagens de sistemas operacionais e malware.",
"en": "Enderman's website. Provides download to various useful softwares, operating system images and malware."
}
},
{
"name": "Free Images",
"link": "https://free-images.com/",
"description": {
"pt": "Pesquise por milhões de imagens, artes e vetores. Todas as imagens são de domínio público ou sobre CC0. Livre para baixar e livre para usar.",
"en": "Search through millions of free stock photos, art and vector images. Every image is Public Domain or CC0. Free to Download and Free to Use."
}
},
{
"name": "88x31",
"link": "https://88x31.nl/",
"description": {
"pt": "Essa é uma coleção de mais de 6500 GIFs e PNGs no formato 88x31. No final dos anos 1990 e começo dos 2000 era muito comum usar essas imagens no seu site pessoal.",
"en": "This website is a collection with over 6500 GIF's and PNG's in 88x31 format. In the late 1990 and begin of the 2000's it was very common to use these pictures on your personal website."
},
"88x31": [
"WEBP.gif",
"blank.gif"
]
}
]
},
"profiles": {
"links": [
{
"name": "Mr. Nando",
"link": "https://www.youtube.com/@mrnandokk",
"description": {
"pt": "Meu amigo Fernando, ele faz músicas e vídeos de Minecraft e speedrun.",
"en": "My friend Fernando, he makes music and YouTube videos of Minecraft and speedrun."
}
},
{
"name": "Endermanch",
"link": "https://enderman.ch/",
"description": {
"pt": "Andrew é um engenheiro de software, entusiasta de malware e, mais importante, uma estranha e alta criatura. Cresci com os seus videos e ele é uma grande inspiração para mim.",
"en": "Andrew is a software engineer, a malware enthusiast and most importantly, a weird tall creature. I've grown up with his videos and he's a great inspiration for me."
}
}
]
},
"tools": {
"links": [
{
"name": "Excalidraw",
"link": "https://excalidraw.com/",
"description": {
"pt": "Quadro branco sem distrações.",
"en": "Whiteboard with no bloat."
}
},
{
"name": "Postimages",
"link": "https://postimages.org/",
"description": {
"pt": "Gere links permantes de suas imagens para forums, blogs e redes sociais.",
"en": "Get permanent links of your images for forums, blogs, and social media."
}
},
{
"name": "uBlock Origin",
"link": "https://github.com/gorhill/uBlock#ublock-origin",
"description": {
"pt": "Um bloqueador eficiente para Chromium e Firefox. Rápido e pequeno.",
"en": "An efficient blocker for Chromium and Firefox. Fast and lean."
},
"88x31": ["ublock-now.png"]
}
]
},
"games": {
"88x31": [
"gb.gif",
"amd_powered.gif"
],
"links": [
{
"name": "SteamGridDB",
"link": "https://www.steamgriddb.com/",
"description": {
"pt": "Baixe e compartilhe recursos visuais de jogos e personalize sua biblioteca de jogos.",
"en": "Download and share custom video game assets and personalize your gaming library."
}
}
]
},
"music": {
"88x31": [
"rave.gif",
"2014-rave.gif",
"wmpfree.gif",
"wmp.gif",
"wmp9.gif",
"wmp10.gif",
"wmp11.gif",
"ffmpeg.gif",
"ymusic.gif"
],
"links": [
{
"name": "CVGM Radio",
"link": "https://radio.cvgm.net/demovibes/",
"description": {
"pt": "Seu lar para música relacionada a video games, demo scene e computadores.",
"en": "Your home for video game, demo scene and computer related music."
}
}
]
},
"piracy": {
"88x31": ["piracy.png"],
"links": [
{
"name": "Nyaa",
"link": "https://nyaa.si/",
"description": {
"pt": "Um tracker de animes, mangás e coisas relacionadas.",
"en": "A tracker of animes, mangas and related stuff."
},
"88x31": ["rukia.gif"]
},
{
"name": "Lucida",
"link": "https://lucida.to/",
"description": {
"pt": "Com Lucida, você pode baixar musica diretamente de Qobuz, Tidal, Soundcloud, Deezer, Amazon Music, e Yandex Music em alta qualidade de graça. Sem pegadinhas, sem anúncios obrigatórios, sem enrolação. Como que funciona?",
"en": "With Lucida, you can download music directly from Qobuz, Tidal, Soundcloud, Deezer, Amazon Music, and Yandex Music in high quality for free. No catches, no mandatory ads, no BS. How does it work?"
}
},
{
"name": "DoubleDouble",
"link": "https://doubledouble.top/",
"description": {
"pt": "Baixe musica diretamente de Qobuz, Tidal, Soundcloud, Deezer, Amazon Music, e Yandex Music em alta qualidade de graça.",
"en": "Download music directly from Amazon Music, Soundcloud, Qobuz, Deezer and Tidal for free."
}
}
]
}
}
}

View file

@ -0,0 +1,11 @@
{
"pageTitle": "Bookmarks",
"pageDescription": "My collection of interesting websites/pages.",
"intro": "A list of useful or cool websites/pages curated by me. Divided in sections for an easier navigation.",
"profiles": "Profiles",
"downloads": "Downloads",
"games": "Games",
"tools": "Tools",
"music": "Music",
"piracy": "Piracy"
}

View file

@ -0,0 +1,49 @@
---
layout: base.njk
pagination:
data: languages
size: 1
alias: langKey
tags: misc
background: towers.jpg
backgroundOpacity: .2
---
{% from "macros.njk" import i88x31 with context %}
<main>
<div class="box pageHeaderBox">
<h1>{{ t.pageTitle }}</h1>
<p>{{ t.intro }}</p>
{{ i88x31("BOOKMARKthispageNOW.png") }}
</div>
<hr>
{% for sectionName, section in c.links %}
<div>
<h2>{{ t[sectionName] }}</h2>
{% if section.88x31 %}
<div class="box favorites88x31Box">
{% for 88x31 in section.88x31 %}
{{ i88x31(88x31) }}
{% endfor %}
</div>
{% endif %}
<dl>
{% for link in section.links %}
<div class="favoritesDefinitionListItem">
<dt><a href="{{ link.link }}">{{ link.name }}</a></dt>
<hr class="favoritesDivider">
<dd>
{{ link.description[langKey] }}
<div class="favorite88x31Box">
{% if link.88x31 %}
{% for 88x31 in link.88x31 %}
{{ i88x31(88x31) }}
{% endfor %}
{% endif %}
</div>
</dd>
</div>
{% endfor %}
</dl>
{% endfor %}
</main>

View file

@ -0,0 +1,11 @@
{
"pageTitle": "Favoritos",
"pageDescription": "Minha coleção de sites e páginas interessantes.",
"intro": "Essa é a lista de links favoritos curada por mim, dividida em seções para facilitar a navegação ;-)",
"profiles": "Perfis",
"downloads": "Downloads",
"games": "Jogos",
"tools": "Ferramentas",
"music": "Música",
"piracy": "Pirataria"
}

View file

@ -0,0 +1,31 @@
const fs = require("fs");
const path = require("path");
module.exports = {
eleventyComputed: {
t: (data) => {
const dir = path.dirname(data.page.inputPath);
const file = path.join(dir, `${data.langKey}.json`);
if (fs.existsSync(file)) {
return JSON.parse(fs.readFileSync(file, "utf-8"));
}
return {};
},
c: (data) => {
const dir = path.dirname(data.page.inputPath);
const file = path.join(dir, `common.json`);
if (fs.existsSync(file)) {
return JSON.parse(fs.readFileSync(file, "utf-8"));
}
return {};
}
},
permalink: data => {
return `/${data.langKey}/misc/${data.page.fileSlug}/`;
},
tags: "misc"
};