···11- | |
22- | |
33- | |
44-+---#---------------------#---+
55-| [Used Car Salesman voice] |
66-| Open Your |
77-| __ ___ _ _ ___ |
88-| | \ / \| \| |/ __| |
99-| _ | - || - || || | | |
1010-| |_||__/ \___/|_|\_|\___| |
1111-| ___ _ _ ___ |
1212-| | __|| || | | __| |
1313-| | _| | || |_ | _| |
1414-| |_| |_||___||___| |
1515-| |
1616-| At dong.vielle.dev TODAY |
1717-| for a chance to win £50 off |
1818-| a purchase of 3 |
1919-| or more potatoes!! |
2020-+-----------------------------+
2121-2222-Welcome to my PDS!
2323-It's running off a pi on my floor
2424-and isnt always online at the time of writing.
11+ __ ___ _ _ ___
22+ | \ / \| \| |/ __|
33+ _ | - || - || || | |
44+|_||__/ \___/|_|\_|\___|
55+ ___ _ _ ___
66+| __|| || | | __|
77+| _| | || |_ | _|
88+|_| |_||___||___|
2592626-Invite codes are required
2727-DM me if you somehow trust this enough
1010+Runs off a pi on my desk :3
28112929- PDS Source: https://github.com/bluesky-social/atproto
3030-Setup Guide: https://vielle.dev/blog/pds-on-a-pi
3131- Protocol: https://atproto.com
1212+ PDS Source: https://github.com/bluesky-social/atproto/
1313+Setup Guide: https://vielle.dev/blog/pds-on-a-pi/
1414+ Protocol: https://atproto.com/
1515+ .dong file: https://dongs.zip/
+1-5
landing/landing.ts
···2626 // type cast because no point validating for smthn like this
2727 // real type has more info; not needed here
2828 .then((res) => res.json() as Promise<{ repos: { did: string }[] }>)
2929- .then((res) => {
3030- console.log(res);
3131- return res;
3232- })
3329 .then((res) =>
3430 // get display name, handle, and did for each user
3531 res.repos.map((repo) => ({
···3733 `http://pi:8000/xrpc/com.atproto.repo.getRecord?repo=${repo.did}&collection=app.bsky.actor.profile&rkey=self`
3834 )
3935 .then((res) => res.json())
4040- .then((profile) => profile?.value?.displayName ?? repo),
3636+ .then((profile) => profile?.value?.displayName ?? repo.did),
4137 // dont validate handles because I'm Lazy + trust myself
4238 handle: fetch(
4339 repo.did.startsWith("did:plc")