Skip to content

tsky-dev/tsky

Repository files navigation

tsky

A lightweight, fast, universal and typed Bluesky API wrapper for Apps & Bots.

⚠️ tsky is still in development and is not ready for production use

tsky is still in active development and is not ready for production use. If you want to contribute to the project, please read the CONTRIBUTING.md file or join our Discord Server.

tsky is a lightweight, fast, universal and typed Bluesky API wrapper for Apps & Bots. It's designed to be easy to use, lightweight and straightforward to use. It's built with TypeScript and has full type support.

It was primarily built for the Nimbus Client but can be used in any other project that requires Bluesky API integration.

Installation

# NPM
npm install tsky

# Yarn
yarn add tsky

# PNPM
pnpm add tsky

# Bun
bun add tsky

Usage

Using a Public Agent

import { createAgent } from '@tsky/client';

const agent = await createAgent({
  options: {
    service: 'https://public.api.bsky.app',
  },
});

// Getting a user from their handle
// First, we need to get the user's DID
const did = await agent.resolveDIDFromHandle(handle);
// Then, we can get the user's profile
const profile = await agent.actor(did);

Using an Authenticated Agent

import { createAgent } from '@tsky/client';

const agent = await createAgent({
  credentials: {
    identifier: "handle",
      password: "password"
  }
});

// Getting the profile of the authenticated user
const user_profile = await agent.user.profile();

Links

Contributing

If you want to contribute to this project, please read the CONTRIBUTING.md file.

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

Bluesky API client for nimble apps and tools ☁️

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project