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. /Go
  3. /handles-server
prompt

handles-server

A Go SDK for Bluesky and AT Protocol by prompt

Bluesky handle verification server

GitHub Stats

17stars
2forks
2contributors
0open issues

Dates

Created:November 17, 2024
Last updated:August 21, 2025

README

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

Handles Server

A very simple server that verifies Bluesky (atproto) handles using the HTTPS well-known Method; an alternative to managing many DNS records.

Quickstart

sh -c "$(curl -Ls https://handles.run)"

...or download the latest release.

Railway

Deploy on Railway

One-click deploy is available using Railway.com1.

Implementation

A handle is a hostname (e.g: alice.example.com) which the server may or may not be able to provide a Decentralized ID for. A handle is made up of a domain (e.g: example.com) and a username (e.g: alice). A provider (ProvidesDecentralizedIDs) is responsible for getting a Decentralized ID from a handle.

Providers

  • Postgres
  • Memory
  • Google Sheets
  • Filesystem

Configuration

Environment VariableDescriptionExample
DID_PROVIDERRequired Name of a supported providerpostgres memory
REDIRECT_DID_TEMPLATEURL template for redirects when a DID is foundhttps://bsky.app/profile/{did}
REDIRECT_HANDLE_TEMPLATEURL template for redirects when a DID is not foundhttps://example.com/?handle={handle}
CHECK_DOMAIN_PARAMETERQuery parameter used by check domain endpoint (/domainz)handle hostname domain

memory provider

Environment VariableDescriptionExample
MEMORY_DIDSRequired Comma separated list of handle@did pairsalice.example.com@did:plc:001
MEMORY_DOMAINSRequired Comma separate list of supported domainsexample.com,example.net

postgres provider

Environment VariableDescriptionExample
DATABASE_URLRequired Postgres database URLpostgres://postgres@localhost:5432/handles
DATABASE_TABLE_DIDSTable containing handle + did rowsdids active_handles
DATABASE_TABLE_DOMAINSTable containing domain rowsdomains active_domains

URL templates

A string containing zero or more tokens which are replaced when rendering.

TokenValueExample(s)
{handle}Formatted handle from the requestalice.example.com
{did}Decentralized ID found for the request's handledid:plc:example001
{handle.domain}Top level domain from the handleexample.com
{handle.username}Username part of the handlealice bob
{request.scheme}Request's schemehttps http
{request.host}Request's hostalice.example.com
{request.path}Path included in the request/hello-world
{request.query}Query included in the requestgreeting=Hello+World

Footnotes

  1. Railway provide a 25% "Template Kickback" when you sign up using our link ↩

Topics

blueskybskyhandles

Related SDKs

bluesky-socialindigo

Go source code for Bluesky's atproto services.

1221•Go
vvakameatproto-vvvot

@vvvot.bsky.social bot implementation

4•Go
mattnbsky

A cli application for bluesky social

419•Go
jazwareatproto.tools

A looking glass for the AT Proto Firehose

23•Go
whtwndwhitewind-blog

The AT Protocol blogging platform

156•Go
bluesky-socialjetstream

A simplified JSON event stream for AT Proto

426•Go

Resources

GitHub RepositoryProject Website

License

MIT

Author

prompt
prompt
did:plc:001

Activity

Last commit: August 21, 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.