quick commit so i can get out of this branch lmao
This commit is contained in:
parent
1ad588a9d7
commit
9850fd2db5
3 changed files with 50 additions and 11 deletions
|
@ -48,6 +48,44 @@
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"note": "For a very cute throwback, check out the old-web version of the site at http://legacy.sominemo.com"
|
"note": "For a very cute throwback, check out the old-web version of the site at http://legacy.sominemo.com"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"author": "Maffsie",
|
||||||
|
"url": "https://maff.scot",
|
||||||
|
"rank": 0,
|
||||||
|
"socials": [
|
||||||
|
{
|
||||||
|
"site": "bsky",
|
||||||
|
"url": "https://bsky.app/profile/maff.scot"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"site": "fedi",
|
||||||
|
"url": "https://queer.party/@Maffsie"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"note": "Runs one of the only furry tech chats I haven't left yet lmao, they must be doing something right"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"author": "522",
|
||||||
|
"url": "https://www.5snb.club/",
|
||||||
|
"rank": 0,
|
||||||
|
"socials": [
|
||||||
|
{
|
||||||
|
"site": "fedi",
|
||||||
|
"url": "https://furry.engineer/@5225225"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"site": "github",
|
||||||
|
"url": "https://github.com/5225225"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"note": "remind me to make a 88x31 button for the robot :3"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"author": "Micah",
|
||||||
|
"url": "https://alveus.dev",
|
||||||
|
"rank": 0,
|
||||||
|
"note": "The main reason why this site is currently (as of 1/26/25) running in Docker and with a brand-new fancy CI thingey built off of Forgejo Actions :o"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
|
@ -8,7 +8,7 @@ export type SocialEntry = {
|
||||||
export type ShareFeedEntry = {
|
export type ShareFeedEntry = {
|
||||||
url: string, // url of article
|
url: string, // url of article
|
||||||
author?: string, // author of article
|
author?: string, // author of article
|
||||||
socials?: [SocialEntry], // social links for author
|
socials?: SocialEntry[], // social links for author
|
||||||
originalUrl?: string, // if `url` is an archive link, put original URL here
|
originalUrl?: string, // if `url` is an archive link, put original URL here
|
||||||
date: string, // date in which the entry was **added to the sharefeed**
|
date: string, // date in which the entry was **added to the sharefeed**
|
||||||
pubDate?: string, // date in which the entry was **published online**
|
pubDate?: string, // date in which the entry was **published online**
|
||||||
|
@ -22,7 +22,7 @@ export type BlogRollEntry = {
|
||||||
url: string, // url of the website
|
url: string, // url of the website
|
||||||
rank: number, // 0 = friends, 1 = following, 2 = strangers
|
rank: number, // 0 = friends, 1 = following, 2 = strangers
|
||||||
siteName?: string, // name of the website itself
|
siteName?: string, // name of the website itself
|
||||||
socials?: [SocialEntry], // social links for the author
|
socials?: SocialEntry[], // social links for the author
|
||||||
note?: string, // editorial note to attach to this entry
|
note?: string, // editorial note to attach to this entry
|
||||||
draft?: boolean // hide this entry from the main list
|
draft?: boolean // hide this entry from the main list
|
||||||
}
|
}
|
||||||
|
|
|
@ -11,21 +11,22 @@ import MDXCallout from '../components/mdx/MDXCallout.astro';
|
||||||
import brjson from "../data/blogroll.json";
|
import brjson from "../data/blogroll.json";
|
||||||
import type { BlogRollEntry } from "../lib/utils";
|
import type { BlogRollEntry } from "../lib/utils";
|
||||||
import MDXAccordion from '../components/mdx/MDXAccordion.astro';
|
import MDXAccordion from '../components/mdx/MDXAccordion.astro';
|
||||||
|
import MDXLink from '../components/mdx/MDXLink.astro';
|
||||||
|
|
||||||
const entries = brjson.blogroll
|
const entries = brjson.blogroll
|
||||||
.sort((a,b) => {
|
.sort((a: BlogRollEntry,b: BlogRollEntry) => {
|
||||||
if (a.author < b.author) return -1;
|
if (a.author < b.author) return -1;
|
||||||
if (a.author > b.author) return 1;
|
if (a.author > b.author) return 1;
|
||||||
return 0;
|
return 0;
|
||||||
})
|
})
|
||||||
.filter((entry) => !(entry.draft))
|
.filter((entry: BlogRollEntry) => !(entry.draft))
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
<BaseLayout title="cool">
|
<BaseLayout title="cool">
|
||||||
<h1 class="font-serif text-3xl my-2">Cool Stuff</h2>
|
<h1 class="font-serif text-3xl my-2">Cool Stuff</h2>
|
||||||
|
|
||||||
<p>If [/me](/me) was a page for everything I think is neat about myself, this page is a page for everything
|
<p>If <MDXLink href="/me" class="font-serif text-sm text-subtitle hover:underline">/me</MDXLink> was a page for everything I think is neat about myself, this page is a page for everything
|
||||||
I think is neat about the smallweb and indie tech enthusiast space at large.</p>
|
I think is neat about the smallweb and indie tech enthusiast space at large.</p>
|
||||||
|
|
||||||
<HR/>
|
<HR/>
|
||||||
|
@ -41,13 +42,13 @@ const entries = brjson.blogroll
|
||||||
<span class="text-yellow-600 dark:text-yellow-400">Gold</span>, for people that I do not personally know
|
<span class="text-yellow-600 dark:text-yellow-400">Gold</span>, for people that I do not personally know
|
||||||
*nor* follow myself, but I saw at least one of their works and think they deserve a shout-out.</p>
|
*nor* follow myself, but I saw at least one of their works and think they deserve a shout-out.</p>
|
||||||
|
|
||||||
<MDXAccordion title="disclaimer"><p class="mb-2">This ranking convention is *not* necessarily me saying "this person's stuff is better than this other person's
|
<MDXAccordion title="disclaimer"><p class="mb-2">This ranking convention is <em>not</em>necessarily me saying "this person's stuff is better than this other person's
|
||||||
stuff"... It's more me saying "I am more confident that this person won't say something stupid than I am with
|
stuff"... It's more me saying "I am more confident that this person won't say something stupid than I am with
|
||||||
this other person". I have more confidence in people I personally know, and in people that I actively follow,
|
this other person". I have more confidence in people I personally know, and in people that I actively follow,
|
||||||
than some random person that popped up on the orange site that made something I think is neat. If it turns out
|
than some random person that popped up on the orange site that made something I think is neat. If it turns out
|
||||||
that random person later decides to make an article shilling a shitcoin or some unnecessary LLM madness, I'll
|
that random person later decides to make an article shilling a shitcoin or some unnecessary LLM madness, I'll
|
||||||
feel less bad about including them on here (and then *removing them* from here) if I made it clear from the
|
feel less bad about including them on here (and then <em>removing them</em> from here) if I made it clear from the
|
||||||
beginning that I don't guarantee that they *won't*. Thus: this silly ranking scheme.</p></MDXAccordion>
|
beginning that I don't guarantee that they <em>won't</em>. Thus: this silly ranking scheme.</p></MDXAccordion>
|
||||||
|
|
||||||
<p class="mb-2">If you can figure out what this ranking convention is based on, send me an email and the first person to do so
|
<p class="mb-2">If you can figure out what this ranking convention is based on, send me an email and the first person to do so
|
||||||
will get a $19 Fortnite card.</p>
|
will get a $19 Fortnite card.</p>
|
||||||
|
@ -57,7 +58,7 @@ const entries = brjson.blogroll
|
||||||
<h3 class="font-serif text-xl my-2 text-purple-600 dark:text-purple-400">Damascus</h3>
|
<h3 class="font-serif text-xl my-2 text-purple-600 dark:text-purple-400">Damascus</h3>
|
||||||
|
|
||||||
<ul class="space-y-2">
|
<ul class="space-y-2">
|
||||||
{entries.filter((entry) => entry.rank === 0).map((entry: BlogRollEntry) => (
|
{entries.filter((entry: BlogRollEntry) => entry.rank === 0).map((entry: BlogRollEntry) => (
|
||||||
<li class="mb-2">
|
<li class="mb-2">
|
||||||
<a href={entry.url} class="font-serif text-lg text-crusta-400 dark:text-night-300 hover:underline">
|
<a href={entry.url} class="font-serif text-lg text-crusta-400 dark:text-night-300 hover:underline">
|
||||||
{entry.author}
|
{entry.author}
|
||||||
|
@ -74,7 +75,7 @@ const entries = brjson.blogroll
|
||||||
<h3 class="font-serif text-xl my-2 text-slate-600 dark:text-slate-400">Platinum</h3>
|
<h3 class="font-serif text-xl my-2 text-slate-600 dark:text-slate-400">Platinum</h3>
|
||||||
|
|
||||||
<ul class="space-y-2">
|
<ul class="space-y-2">
|
||||||
{entries.filter((entry) => entry.rank === 1).map((entry: BlogRollEntry) => (
|
{entries.filter((entry: BlogRollEntry) => entry.rank === 1).map((entry: BlogRollEntry) => (
|
||||||
<li class="mb-2">
|
<li class="mb-2">
|
||||||
<a href={entry.url} class="font-serif text-lg text-crusta-400 dark:text-night-300 hover:underline">
|
<a href={entry.url} class="font-serif text-lg text-crusta-400 dark:text-night-300 hover:underline">
|
||||||
{entry.author}
|
{entry.author}
|
||||||
|
@ -91,7 +92,7 @@ const entries = brjson.blogroll
|
||||||
<h3 class="font-serif text-xl my-2 text-yellow-600 dark:text-yellow-400">Gold</h3>
|
<h3 class="font-serif text-xl my-2 text-yellow-600 dark:text-yellow-400">Gold</h3>
|
||||||
|
|
||||||
<ul class="space-y-2">
|
<ul class="space-y-2">
|
||||||
{entries.filter((entry) => entry.rank === 2).map((entry: BlogRollEntry) => (
|
{entries.filter((entry: BlogRollEntry) => entry.rank === 2).map((entry: BlogRollEntry) => (
|
||||||
<li class="mb-2">
|
<li class="mb-2">
|
||||||
<a href={entry.url} class="font-serif text-lg text-crusta-400 dark:text-night-300 hover:underline">
|
<a href={entry.url} class="font-serif text-lg text-crusta-400 dark:text-night-300 hover:underline">
|
||||||
{entry.author}
|
{entry.author}
|
||||||
|
|
Loading…
Add table
Reference in a new issue