AD
Launch on Firsto—Launch your project today — get a DR57 backlink instantly.
BSkyInfo LogoBskyInfo
All ToolsCategoriesCollectionsFeed DirectoryLabeler DirectoryArticlesGuidesGlossaryBluesky SDKsSponsor
Submit
All ToolsCategoriesCollectionsFeed DirectoryLabeler DirectoryGuidesGlossaryArticlesBluesky SDKsSponsorSubmit
  1. SDKs
  2. /Swift
  3. /ATResolve
mattmassicotte

ATResolve

A Swift SDK for Bluesky and AT Protocol by mattmassicotte

AT Protocol PLC Resolver

GitHub Stats

14stars
1forks
2contributors
2open issues

Dates

Created:February 5, 2025
Last updated:July 22, 2025

README

The following content is from ATResolve's GitHub repository. All rights reserved by the original author.

Build Status Platforms Documentation Matrix

ATResolve

AT Protocol PLC/DID/Whatever Resolver

I just want to resolve a handle to a DID and PDS. There's more to do, but this is a start. This could be a good reference.

Integration

dependencies: [
    .package(url: "https://github.com/mattmassicotte/ATResolve", branch: "main")
]

Usage

import ATResolve

let resolver = ATResolver(provider: URLSession.shared)

let data = try await resolver.resolveHandle("massicotte.org")

print(data.did)
print(data.serviceEndpoint)

The ATResolver type also supports custom HTTP loading for compatibility with server frameworks that don't use URLSession.

struct CustomProvider: ResponseProviding {
    func decodeJSON<T>(at urlString: String, queryItems: [(String, String)]) async throws -> T where T : Decodable {
        // your custom code that loads and decodes JSON goes here
    }
}

let resolver = ATResolver(provider: CustomProvider())

Contributing and Collaboration

I would love to hear from you! Issues or pull requests work great. Both a Matrix space and Discord are available for live help, but I have a strong bias towards answering in the form of documentation. You can also find me on the web.

I prefer collaboration, and would love to find ways to work together if you have a similar project.

I prefer indentation with tabs for improved accessibility. But, I'd rather you use the system you want and make a PR than hesitate because of whitespace.

By participating in this project you agree to abide by the Contributor Code of Conduct.

Topics

atprotoatprotocolbluesky

Related SDKs

MasterJ93ATProtoKit

A straightforward solution for using the AT Protocol and Bluesky, written in Swift.

197•Swift
DimillianIcySky

A BlueSky Client. TBD.

509•Swift
jcsalteregoSky.app

Sky.app is a great way to use Bluesky Social on MacOS, featuring keyboard shortcuts, Dark Mode Sync, and notification badges.

292•Swift
mattmassicotteATAT

Little library for working with the AT Protocol

9•Swift
kphrxplc-handle-tracker

did:plc & atproto handle tracker

29•Swift
ChimeHQOAuthenticator

OAuth 2.1 request authentication

90•Swift

Resources

GitHub Repository

License

BSD-3-Clause

Author

mattmassicotte
mattmassicotte

Activity

Last commit: July 22, 2025
Commit frequency: Unknown

Our Sponsors

Your Brand Here!

50K+ engaged viewers every month

Limited spots available!

📧 Contact us via email🦋 Contact us on Bluesky
BSkyInfo LogoBskyInfo

The Most Comprehensive Bluesky Tools Directory

Stay updated with the latest Bluesky tools and ecosystem news 🦋

Bluesky butterfly logo
Quick LinksSubmit a ToolSponsorAboutLegal Information
ToolsFeed DirectoryLabeler DirectorySchedulingAnalyticsAll ToolsCategoriesCollectionsTags
ResourcesArticlesBluesky GuidesBluesky GlossaryBluesky SDKsBluesky ResourcesSkyRaffleMeida Coverage
Our ProductsRaffleBlueAiTeach ToolsLaiewAI affiliate listFirstoCoast Fire CalculatorAsphalt CalculatorDog Names World

This website may contain affiliate links

© 2025 BskyInfo. All rights reserved.