gitwtfhub

wtf is go-bluesky?

tailscale/go-bluesky — explained in plain English

Analysis updated 2026-07-25 · repo last pushed 2025-05-04

8GoAudience · developerComplexity · 2/5StaleSetup · easy

TL;DR

A Go toolkit that lets your applications log into Bluesky and read social data like profiles, followers, and the social graph. It handles authentication automatically and prioritizes security by requiring limited-access app keys instead of your main password.

Mindmap

mindmap
  root((repo))
    What it does
      Login to Bluesky
      Fetch profiles
      Browse social graph
      Stream followers
    Security
      App keys only
      Auto token refresh
      No main passwords
    Tech stack
      Go language
      Bluesky API
    Use cases
      Analytics tools
      Graph visualizers
      Monitoring bots
    Status
      Not pre-alpha
      Maintenance fork
      API may change

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Build a dashboard that tracks follower growth for brands on Bluesky

REASON 2

Create a social graph visualizer that maps connections between users

REASON 3

Develop a bot that reads and monitors Bluesky profile data programmatically

What's in the stack?

Go

How it stacks up

tailscale/go-blueskybeppetemp/cartographerd4l3k/turtle
Stars888
LanguageGoGoGo
Last pushed2025-05-042018-01-27
MaintenanceStaleDormant
Setup difficultyeasymoderatemoderate
Complexity2/54/52/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · easy Time to first run · 5min

Requires generating a Bluesky application key from your account settings since the library refuses to use main passwords.

Wtf does this do

Go-bluesky is a toolkit for programmers who want to build applications that interact with Bluesky, the social network. It lets your Go program log into a Bluesky account, look up user profiles, fetch follower lists, and browse the social graph, essentially giving your app the ability to read and navigate Bluesky data the way a logged-in user would. The library handles the behind-the-scenes work of connecting to Bluesky and staying logged in. It automatically refreshes authentication tokens before they expire, so your app doesn't get logged out mid-task. It also takes a security-first stance: it refuses to work with your main account password and instead requires an "application key," which is a limited-access password Bluesky lets you generate. This way, even if your app's credentials leak, nobody can take over your full account. For fetching data like follower lists on popular accounts, the library can stream results as they arrive rather than loading everything into memory at once. This would appeal to a developer building analytics tools, social graph visualizers, or bots that need to read Bluesky data. For example, someone building a dashboard that tracks follower growth for brands on Bluesky could use this library to pull profile stats and follower lists programmatically. It also includes an escape hatch for advanced users who need to call Bluesky API endpoints that the library doesn't explicitly wrap yet. A few things stand out about how this project is positioned. The author describes it as "highly opinionated," prioritizing simplicity and security over flexibility, meaning it may not cover every use case, but what it does cover should be clean and safe. It's explicitly labeled as not even pre-alpha, so the API could change at any time. It's also a maintenance fork, meaning it's a derivative of someone else's earlier work. Testing is notably unusual: since there's no local Bluesky server to test against, the tests actually run against the live Bluesky system, which means testing could potentially get your test account flagged for spam.

Yoink these prompts

Prompt 1
Write a Go program using go-bluesky that logs in with an app key, fetches a user's profile, and prints their follower count to the console
Prompt 2
Using go-bluesky, create a Go script that streams a popular Bluesky account's followers and writes each follower handle to a CSV file
Prompt 3
Build a Go utility with go-bluesky that looks up a Bluesky user by handle and retrieves their profile information including follower and following counts
Prompt 4
Using go-bluesky's escape hatch, write Go code to call a Bluesky API endpoint that isn't explicitly wrapped by the library yet

Frequently asked questions

wtf is go-bluesky?

A Go toolkit that lets your applications log into Bluesky and read social data like profiles, followers, and the social graph. It handles authentication automatically and prioritizes security by requiring limited-access app keys instead of your main password.

What language is go-bluesky written in?

Mainly Go. The stack also includes Go.

Is go-bluesky actively maintained?

Stale — no commits in 1-2 years (last push 2025-05-04).

How hard is go-bluesky to set up?

Setup difficulty is rated easy, with roughly 5min to a first successful run.

Who is go-bluesky for?

Mainly developer.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.