From 4e78fbba145ac7db7eb4df500033aa7c125a381a Mon Sep 17 00:00:00 2001
From: Ayo Ayco
Date: Fri, 3 Jan 2025 22:14:18 +0100
Subject: [PATCH] feat: new bsky - fedi page
---
public/favicon.svg | 13 ----
public/following_accounts.csv | 38 +++++++++
src/layouts/Layout.astro | 1 +
src/layouts/common.css | 4 +
src/pages/index.astro | 2 +-
src/pages/showcase.astro | 5 ++
src/pages/tech-bsky-fedi.astro | 138 +++++++++++++++++++++++++++++++++
7 files changed, 187 insertions(+), 14 deletions(-)
delete mode 100644 public/favicon.svg
create mode 100644 public/following_accounts.csv
create mode 100644 src/layouts/common.css
create mode 100644 src/pages/tech-bsky-fedi.astro
diff --git a/public/favicon.svg b/public/favicon.svg
deleted file mode 100644
index 0f39062..0000000
--- a/public/favicon.svg
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/public/following_accounts.csv b/public/following_accounts.csv
new file mode 100644
index 0000000..7f43816
--- /dev/null
+++ b/public/following_accounts.csv
@@ -0,0 +1,38 @@
+Account address, Show boosts, Notify on new posts, Languages
+sarahjeong.bsky.social@bsky.brid.gy, true, false,
+jay.bsky.team@bsky.brid.gy, true, false,
+b0rk.jvns.ca@bsky.brid.gy, true, false,
+seldo.com@bsky.brid.gy, true, false,
+nerdy.dev@bsky.brid.gy, true, false,
+wongmjane.com@bsky.brid.gy, true, false,
+samuel.bsky.team@bsky.brid.gy, true, false,
+garrywatters.bsky.social@bsky.brid.gy, true, false,
+laurenshof.online@bsky.brid.gy, true, false,
+bell.bz@bsky.brid.gy, true, false,
+matrix.org@bsky.brid.gy, true, false,
+timbl.bsky.social@bsky.brid.gy, true, false,
+cheeaun.com@bsky.brid.gy, true, false,
+edavis.dev@bsky.brid.gy, true, false,
+tylersticka.com@bsky.brid.gy, true, false,
+sjoy.lol@bsky.brid.gy, true, false,
+ohhelloana.blog@bsky.brid.gy, true, false,
+arathorn.net@bsky.brid.gy, true, false,
+jamesravey.me@bsky.brid.gy, true, false,
+edent.tel@bsky.brid.gy, true, false,
+nandi.dads.lol@bsky.brid.gy, true, false,
+jensimmons.bsky.social@bsky.brid.gy, true, false,
+gri.gs@bsky.brid.gy, true, false,
+btp.dev@bsky.brid.gy, true, false,
+jacobhands.com@bsky.brid.gy, true, false,
+malstrom.me@bsky.brid.gy, true, false,
+n4ze3m.com@bsky.brid.gy, true, false,
+shuuji3.xyz@bsky.brid.gy, true, false,
+intenttoship.dev@bsky.brid.gy, true, false,
+haoqun.dev@bsky.brid.gy, true, false,
+element.io@bsky.brid.gy, true, false,
+e18e.dev@bsky.brid.gy, true, false,
+danabra.mov@bsky.brid.gy, true, false,
+heydonworks.bsky.social@bsky.brid.gy, true, false,
+ayco.io@bsky.brid.gy, true, false,
+danielroe.dev@bsky.brid.gy, true, false,
+patak.dev@bsky.brid.gy, true, false,
diff --git a/src/layouts/Layout.astro b/src/layouts/Layout.astro
index 24a2845..c528997 100644
--- a/src/layouts/Layout.astro
+++ b/src/layouts/Layout.astro
@@ -1,6 +1,7 @@
---
import './variables.css'
import './reset.css'
+import './common.css'
import Head from '../components/Head.astro'
import Nav from '../components/Nav.astro'
import links from '../constants/links'
diff --git a/src/layouts/common.css b/src/layouts/common.css
new file mode 100644
index 0000000..9aed3ef
--- /dev/null
+++ b/src/layouts/common.css
@@ -0,0 +1,4 @@
+.astro-code {
+ padding: 1em;
+ border-radius: 1em;
+}
diff --git a/src/pages/index.astro b/src/pages/index.astro
index f05ffe5..fdcc328 100644
--- a/src/pages/index.astro
+++ b/src/pages/index.astro
@@ -56,8 +56,8 @@ import now from '../constants/now'
body="Download and peruse my skills and experience"
/>
-
+
diff --git a/src/pages/showcase.astro b/src/pages/showcase.astro
index b47318c..ffd0591 100644
--- a/src/pages/showcase.astro
+++ b/src/pages/showcase.astro
@@ -16,6 +16,11 @@ import Card from '../components/Card.astro'
>.
+
{
+ return content
+ .split('\n')
+ .slice(1)
+ .map((str) => str.split(',')[0])
+}
+
+const accounts = csvToArray(importedCode)
+
+const accountObjects = accounts
+ .map((account) => {
+ const bskyHandle = account?.replace('@bsky.brid.gy', '')
+ const url = `https://public.api.bsky.app/xrpc/app.bsky.actor.getProfile/?actor=${bskyHandle}`
+
+ return account
+ ? {
+ bskyHandle,
+ fediHandle: account,
+ url,
+ }
+ : null
+ })
+ .filter((acct) => !!acct)
+
+const urls = accountObjects.map((account) => account.url)
+const promises = urls.map((url) => fetch(url))
+const responses = await Promise.all(promises)
+const data = await Promise.all(responses.map((response) => response.json()))
+
+console.log(accountObjects)
+
+const title = 'Tech Bsky ↔ Fedi'
+const description =
+ 'Celebrating bsky folks who bridged their accounts to the fediverse!'
+---
+
+
+
+ {title}
+
+ {description}
+
+
+ A lot of tech accounts are now active in Bsky. Some of them opted to be
+ bridged to the Fediverse via fed.brid.gy
+ -- so we can also follow them from any ActivityPub powered social platforms.
+
+
+
+ On this page, I upload my handpicked tech Bsky accounts that are currently
+ bridged to the Fedi. Feel free send a mail to request adding accounts I missed.
+
+
+
+ If you are on bsky and want to be bridged too, please follow @ap.brid.gy .
+
+
+
+ If you are on fedi and want to follow the accounts here, scroll to the bottom of the page for a handy `.csv` file you can upload to your chosen fedi platform.
+
+
+ Accounts ({accountObjects.length})
+
+
+
+ Avatar
+ Bsky
+ Fedi
+
+ {
+ accountObjects.map((account, index) => (
+
+
+
+
+
+ {account.bskyHandle}
+
+
+ {account.fediHandle}
+
+
+ ))
+ }
+
+
+ How how how?
+
+
+ Download the .csv file or copy the content
+ below and save in a file. Then, upload to your fedi account provider.
+
+
+
+ If you're on Mastodon, this functionality is found in:Preferences -> Import and export -> Import
+
+
+ Full .csv
content
+
+
+
+
+
+
+
+