492 lines
9.1 KiB
HTML
492 lines
9.1 KiB
HTML
<!doctype html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<link rel="icon" type="image/x-icon" href="/favicon.ico">
|
|
|
|
|
|
|
|
|
|
<title>April 29th, 2026 | FediLearns</title>
|
|
<meta name="description" content="Learning together, by and for the fediverse">
|
|
|
|
<meta property="og:title" content="April 29th, 2026 | FediLearns">
|
|
<meta property="og:type" content="website">
|
|
<meta property="og:description" content="Learning together, by and for the fediverse">
|
|
<meta property="og:site_name" content="FediLearns">
|
|
|
|
<meta name="generator" content="Eleventy v3.1.5">
|
|
|
|
|
|
|
|
|
|
|
|
<style>#listings {
|
|
columns: 3;
|
|
}
|
|
|
|
@media (max-width: 1200px) {
|
|
#listings {
|
|
columns: 2;
|
|
}
|
|
}
|
|
|
|
@media (max-width: 650px) {
|
|
#listings {
|
|
columns: 1;
|
|
}
|
|
}
|
|
|
|
/* jump links */
|
|
#jump-links {
|
|
padding-bottom: 1rem;
|
|
margin-bottom: 1rem;
|
|
border-bottom: solid var(--color-pink);
|
|
}
|
|
|
|
#jump-links h2,
|
|
#jump-links li {
|
|
font-family: "Bebas Neue";
|
|
font-size: 1.3rem;
|
|
font-weight: normal;
|
|
}
|
|
|
|
#jump-links * {
|
|
display: inline;
|
|
}
|
|
|
|
#jump-links a {
|
|
text-decoration: none;
|
|
}
|
|
|
|
#jump-links li {
|
|
list-style: none;
|
|
margin: 0;
|
|
}
|
|
|
|
#jump-links li:not(:last-child)::after {
|
|
content: "..." / "";
|
|
}
|
|
|
|
/* categories */
|
|
|
|
.category {
|
|
break-inside: avoid;
|
|
}
|
|
|
|
.category-title {
|
|
background-color: var(--color-gray);
|
|
padding: .25rem;
|
|
margin-bottom: .5rem;
|
|
}
|
|
|
|
/* references highlighting */
|
|
/* drawn from https://aarontgrogg.com/blog/2012/05/18/pure-css-highlight-for-link-target/ */
|
|
.category-title:has(h2:target) {
|
|
animation: hilite 2.5s;
|
|
}
|
|
|
|
@keyframes hilite {
|
|
0% {background-color: var(--color-gray);}
|
|
10% {background-color: var(--color-cyan-flipped);}
|
|
100% {background-color: var(--color-gray);}
|
|
}
|
|
|
|
/* remove animation for reduced motion viewers */
|
|
@media (prefers-reduced-motion: reduce) {
|
|
.category-title:has(h2:target) {
|
|
animation: none;
|
|
color: var(--color-cyan);
|
|
}
|
|
}
|
|
|
|
.category-title h2 {
|
|
scroll-margin-top: 4rem;
|
|
font-family: "Bebas Neue";
|
|
margin: 0;
|
|
}
|
|
|
|
.category-title p {
|
|
text-align: right;
|
|
font-weight: bold;
|
|
margin: 0;
|
|
}
|
|
|
|
/* individual listings */
|
|
|
|
.listing {
|
|
margin-bottom: 1rem;
|
|
}
|
|
|
|
.listing strong {
|
|
font-weight: bold;
|
|
}
|
|
|
|
.blurb {
|
|
margin-bottom: .5rem;
|
|
}
|
|
|
|
.listed-on {
|
|
font-size: .85rem;
|
|
text-align: right;
|
|
}
|
|
:root {
|
|
color-scheme: light dark;
|
|
|
|
--color-dark: #2e303e;
|
|
--color-dark-alt: #3c3f52;
|
|
--color-light: #ebeeef;
|
|
--color-light-alt: #dbe1e3;
|
|
--color-cyan-dark: #18737b;
|
|
--color-cyan-light: #25b0bc;
|
|
--color-pink-dark: #94195d;
|
|
--color-pink-light: #ee9fcb;
|
|
|
|
--color-text: light-dark(var(--color-dark), var(--color-light));
|
|
--color-bg: light-dark(var(--color-light), var(--color-dark));
|
|
--color-gray: light-dark(var(--color-light-alt), var(--color-dark-alt));
|
|
--color-cyan: light-dark(var(--color-cyan-dark), var(--color-cyan-light));
|
|
--color-cyan-flipped: light-dark(var(--color-cyan-light), var(--color-cyan-dark));
|
|
--color-pink: light-dark(var(--color-pink-dark), var(--color-pink-light));
|
|
}
|
|
|
|
* {
|
|
box-sizing: border-box;
|
|
margin: 0;
|
|
padding: 0;
|
|
}
|
|
|
|
body {
|
|
color: var(--color-text);
|
|
background-color: var(--color-bg);
|
|
width: 65%;
|
|
max-width: 1400px;
|
|
margin: 0 auto;
|
|
font-family: "Fraunces";
|
|
font-weight: 300;
|
|
}
|
|
|
|
main {
|
|
padding-bottom: 2rem;
|
|
}
|
|
|
|
@media (max-width: 1050px) {
|
|
body {
|
|
width: 85%
|
|
}
|
|
}
|
|
|
|
@media (max-width: 650px) {
|
|
body {
|
|
width: 92%;
|
|
}
|
|
}
|
|
|
|
h1, h3 {
|
|
font-weight: 400;
|
|
}
|
|
|
|
h1 {
|
|
text-align: center;
|
|
font-size: 3rem;
|
|
margin: 3rem auto;
|
|
}
|
|
|
|
@media (max-width: 650px) {
|
|
h1 {
|
|
font-size: 2.4rem;
|
|
margin-top: 1rem;
|
|
}
|
|
}
|
|
|
|
h2 {
|
|
margin-bottom: 1rem;
|
|
}
|
|
|
|
h3 {
|
|
text-transform: capitalize;
|
|
margin-bottom: .5rem;
|
|
}
|
|
|
|
p {
|
|
margin-bottom: 1rem;
|
|
}
|
|
|
|
a {
|
|
color: var(--color-cyan);
|
|
text-decoration-thickness: .1rem;
|
|
transition: text-decoration-thickness .5s;
|
|
border-radius: .05rem;
|
|
}
|
|
|
|
a:visited {
|
|
color: var(--color-pink);
|
|
}
|
|
|
|
@media (any-hover: hover) {
|
|
a:hover {
|
|
text-decoration-thickness: .2rem;
|
|
}
|
|
}
|
|
|
|
a:focus-visible {
|
|
outline: solid var(--color-pink);
|
|
}
|
|
|
|
a:visited:focus-visible {
|
|
outline-color: var(--color-cyan);
|
|
}
|
|
|
|
main ul {
|
|
margin-left: 1rem;
|
|
margin-bottom: 1rem;
|
|
}
|
|
|
|
main li {
|
|
margin-left: 1rem;
|
|
}
|
|
|
|
/* iframe is on submission page */
|
|
iframe {
|
|
margin: 2rem 0;
|
|
}
|
|
nav {
|
|
padding: .25rem 0 1rem;
|
|
}
|
|
|
|
footer {
|
|
padding: 1rem 0;
|
|
}
|
|
|
|
nav ul,
|
|
footer ul {
|
|
list-style: none;
|
|
display: flex;
|
|
flex-flow: column;
|
|
text-align: center;
|
|
gap: .2rem;
|
|
}
|
|
|
|
header,
|
|
nav li,
|
|
footer li {
|
|
font-family: "Bebas Neue";
|
|
font-size: 1.3rem;
|
|
}
|
|
|
|
header {
|
|
border-bottom: solid var(--color-pink);
|
|
}
|
|
|
|
footer {
|
|
border-top: solid var(--color-pink);
|
|
}
|
|
|
|
a[aria-current="page"] {
|
|
text-decoration: line-through;
|
|
color: rgb(from var(--color-pink) r g b / 65%);
|
|
}
|
|
|
|
/* Skip link */
|
|
#skip {
|
|
-webkit-clip-path: polygon(0 0, 0 0, 0 0, 0 0);
|
|
clip-path: polygon(0 0, 0 0, 0 0, 0 0);
|
|
}
|
|
|
|
#skip:focus-visible {
|
|
-webkit-clip-path: none;
|
|
clip-path: none;
|
|
}</style>
|
|
|
|
|
|
<script type="module"></script>
|
|
|
|
|
|
<link rel="preconnect" href="https://fonts.googleapis.com">
|
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin="">
|
|
<link href="https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Fraunces:opsz,wght@9..144,100..900&display=swap" rel="stylesheet">
|
|
</head>
|
|
<body>
|
|
<header>
|
|
<nav>
|
|
<ul>
|
|
<li><a id="skip" href="#main">skip to content</a></li>
|
|
<li><a href="/">home page</a></li>
|
|
<li><a href="/about/">about this site</a></li>
|
|
<li><a href="/submit/">submit a listing</a></li>
|
|
</ul>
|
|
</nav>
|
|
</header>
|
|
|
|
|
|
<main id="main">
|
|
<h1 id="april-29th-2026">April 29th, 2026</h1>
|
|
|
|
|
|
|
|
|
|
<div id="listings">
|
|
|
|
<div class="category">
|
|
<div class="category-title">
|
|
<h2 id="animals-and-the-outdoors">animals and the outdoors</h2>
|
|
<p>touchin' grass</p>
|
|
</div>
|
|
|
|
<p>No listings.</p>
|
|
|
|
|
|
</div>
|
|
|
|
<div class="category">
|
|
<div class="category-title">
|
|
<h2 id="art-and-crafts">art and crafts</h2>
|
|
<p>makin' stuff</p>
|
|
</div>
|
|
|
|
<p>No listings.</p>
|
|
|
|
|
|
</div>
|
|
|
|
<div class="category">
|
|
<div class="category-title">
|
|
<h2 id="beauty-and-health">beauty and health</h2>
|
|
<p>feelin' good</p>
|
|
</div>
|
|
|
|
<p>No listings.</p>
|
|
|
|
|
|
</div>
|
|
|
|
<div class="category">
|
|
<div class="category-title">
|
|
<h2 id="business">business</h2>
|
|
<p>makin' money</p>
|
|
</div>
|
|
|
|
<p>No listings.</p>
|
|
|
|
|
|
</div>
|
|
|
|
<div class="category">
|
|
<div class="category-title">
|
|
<h2 id="food-and-drink">food and drink</h2>
|
|
<p>good eatin'</p>
|
|
</div>
|
|
|
|
<p>No listings.</p>
|
|
|
|
|
|
</div>
|
|
|
|
<div class="category">
|
|
<div class="category-title">
|
|
<h2 id="history-and-science">history and science</h2>
|
|
<p>book learnin'</p>
|
|
</div>
|
|
|
|
<p>No listings.</p>
|
|
|
|
|
|
</div>
|
|
|
|
<div class="category">
|
|
<div class="category-title">
|
|
<h2 id="interpersonal-and-life">interpersonal and life</h2>
|
|
<p>better livin'</p>
|
|
</div>
|
|
|
|
<p>No listings.</p>
|
|
|
|
|
|
</div>
|
|
|
|
<div class="category">
|
|
<div class="category-title">
|
|
<h2 id="miscellany-and-more">miscellany and more</h2>
|
|
<p>leaves me guessin'</p>
|
|
</div>
|
|
|
|
<p>No listings.</p>
|
|
|
|
|
|
</div>
|
|
|
|
<div class="category">
|
|
<div class="category-title">
|
|
<h2 id="repair-and-diy">repair and diy</h2>
|
|
<p>fixin' stuff</p>
|
|
</div>
|
|
|
|
<p>No listings.</p>
|
|
|
|
|
|
</div>
|
|
|
|
<div class="category">
|
|
<div class="category-title">
|
|
<h2 id="technology">technology</h2>
|
|
<p>computer touchin'</p>
|
|
</div>
|
|
|
|
|
|
<div class="listing">
|
|
<h3 id="introductory-web-development-and-terminal-basics">introductory web development and terminal basics</h3>
|
|
<p class="blurb">
|
|
<strong>
|
|
<a href="https://flipping.rocks/@inherentlee" target="_blank">@inherentlee@flipping.rocks</a>
|
|
offers:</strong> I'm happy to help you set up a personal or hobby site with HTML, CSS, and JS basics, or maybe a static site generator! Alternately, I'll talk about git and the terminal.
|
|
</p>
|
|
|
|
<p><strong>Suggested rate:</strong> free or skill swap</p>
|
|
|
|
<p class="listed-on">
|
|
listed on <time datetime="2026-04-29">April 29, 2026</time>
|
|
</p>
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
|
<div class="category">
|
|
<div class="category-title">
|
|
<h2 id="writing-editing-and-literature">writing editing and literature</h2>
|
|
<p>wordsmithin'</p>
|
|
</div>
|
|
|
|
<p>No listings.</p>
|
|
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
</main>
|
|
|
|
<footer>
|
|
<ul>
|
|
<li>
|
|
maintained by <a href="https://leecat.art" target="_blank">lee</a>
|
|
</li>
|
|
<li>
|
|
<a href="/daily/">Listings by day</a>
|
|
</li>
|
|
<li>
|
|
<a href="/feed.xml">RSS</a>
|
|
</li>
|
|
<li>
|
|
<a href="https://heckin.technology/inherentlee/fedi-classifieds" target="_blank">source code</a>
|
|
</li>
|
|
</ul>
|
|
</footer>
|
|
|
|
|
|
<!-- This page `/daily/2026-04-29/` was built on 2026-05-05T19:40:01.317Z -->
|
|
</body>
|
|
</html>
|