About Data & Portability Blog Featured Instances

AT Proto tools and Bluesky clients

Repository browsing, Bluesky analytics, content exports, video downloads, advanced search, screenshot tools and more.

Cover image for AT Proto tools and Bluesky clients

These vibe coded projects are part of my journey with LLMs. I'm not a professional developer yet, but I'm learning. So if you find any bugs or errors, please let me know.

Overview

I started above project with the intention of rebuilding my old Bluesky tools in Next.js. When I started with Bluesky experiments, I used to build everything using vanilla JS and HTML.

Explore simple Bluesky clients

But as LLMs and their ability grew, I became familiar with Next.js and started building my projects in it. So recently, when I checked my Google Search Console, I saw that there is traffic to my tools. So I decided to rebuild everything in Next.js, and here I'm with this.

Initially, I planned to build only the export tool, but later I got the idea of creating a full suite designed to feel like a Windows 11 experience. And one by one, I migrated most of the tools to this project and fixed a few bugs and errors and added a few new features.

Disclaimer

Please note that all projects are client-side only, and I don't have any server-side code. So it's possible that the app may feel heavy or stuck if your Atmosphere repository is heavy or if your system doesn't have enough memory.

This mainly applies when you try to work with a CAR file or the User Statistics tab and a profile with a lot of records. As you know, every action you do on this network is a record, and some platforms might have platform-only data that's not stored on the PDS. To view what's on your repository, use the repo explorer.

I tested with big accounts, and there was a CAR file with 70 MB, and it became around 150 MB in JSON conversion - just giving you an idea. And the speed of downloading totally depends on your network speed, and if you're on a limited plan, I advise you not to use it. Please try to view this on a laptop or desktop. Still you can view this on a mobile device, but it might not be smooth.

For most uses, you don't need to sign in to this client. But to perform some actions on your account, like bulk exporting or deleting your bookmarks, blocks, mutes, likes, etc., you need to sign in. But please make sure to use only the app password and make absolutely sure to delete the app password once its use ends.

Source code?

This project isn't open source because it was built almost entirely with LLM generated code based on my specific requirements. Only the styling and core logic are mine. Most of the JavaScript comes from LLMs, so the codebase is predictably messy (so for now it's a headache to even create a handoff). But I'm actively improving my understanding and learning through the process. I'm happy with the output now, but I'm always open to suggestions and feedback. And one day I'll make it open.

I cross checked the results with actual data and they are correct. but it's still possible that some of my logics might be wrong. So if you notice anything, please let me know.

Below are the dependencies of atproto explorer project:

  • @ipld/car
  • @phosphor-icons/react
  • cbor-x
  • html2canvas
  • jszip
  • wsrv.nl
  • multiformats
  • next
  • react
  • react-dom

Key Features

  • Repository ExplorerDeep dive into your atproto repository, view collections and raw records, and export them in multiple formats. If your profile fingerprint is detected on other apps on Atmosphere, you can see the tags too. Be careful when deleting records, as it may break certain things.
  • SearchSearch profiles on the Atmosphere network, find trending apps on the Atmosphere, links, and your recent search history.
  • User StatisticsFind statistics about any profile on the Atmosphere network. You can also export CAR and JSON files. In addition, you can export your posts and replies in Markdown, and your interaction details in both CSV and JSON. Different types of graphical representation are available about your activity on the Atmosphere network. Because only you can write to your PDS.
  • Post AnalyzerDetailed analysis of individual posts, including engagement trends and reach analysis. In addition, there's an option to download post replies and quotes as Markdown files for detailed analytics using any LLMs or for future reference.
  • Custom FeedsDownload posts from any public feed. If you are logged in, you can also export posts from feeds that need authentication, and they are available to download as JSON and CSV.
  • List FeedsDownload posts from a list. Complete control over how many you need to download, and available to download as JSON and CSV. Also includes an option to download all the profiles in a list.
  • Full ThreadsDownload the entire conversation thread of any post, and available to download as JSON and CSV.
  • Quote PostsDownload the quotes of any post, and available to download as JSON and CSV.
  • Screenshot MakerCreate shareable post cards and download in any quality (1x to 4x) as PNG, JPEG, or WebP, in white or dark theme. Identifiable data such as AT URI, CID, links, snapshot taken time, etc., are added for trustworthiness.
  • Advanced SearchSearch Bluesky posts, users, tags, etc., using advanced filters. Fill in the fields and it will open a new tab with the formatted search query. Based on tips from the Bluesky blog.
  • Video DownloadDownload Bluesky videos in available resolutions or get the playlist URL to stream. You can also play the video in VLC: copy the playlist URL, go to VLC, then Media → Stream → Network → Play.
  • Post InspectorInspect any post on Atmosphere in JSON, extract DIDs/CIDs, etc. You can use it to get the AT URI and CID of any post.
  • Bulk DownloadYou can download posts or profiles in bulk using their AT URI, Bluesky URL, or DID. Download as JSON or CSV. Inisghts will be generated for reference.

Privacy & Security

Again, these are completely client-side projects. In addition, I haven't included any kind of analytics or trackers. So you can browse freely. My only repeated suggestion is that if you are using the signed-in features, make sure to delete the app password after use. And remember that only you can make changes to your repository, so be careful what you are doing with it when deleting posts, likes, blocks, mutes, and bookmarks. Make sure to back them up before deleting.

None of your data is stored on my server, because I don’t have a server as of now. This site is completely static, and everything happens only in your browser. The entire point of this tool is to give the general public a way to view insights, download and parse their data in a user friendly way, and use it for downloading references such as post JSON/CSV or screenshots.

While atproto data is public, you should take care to respect the rights, intents, and expectations of others. This goes beyond following copyright law, and includes respecting content deletions and block relationships. Images and other media content does not come with any reuse rights, unless explicitly noted by the account holder. Read more here

Loading comments...