A javascript / typescript http and websocket client and type system for Lemmy.
Find a file
SleeplessOne1917 40dfb4c3ac
Make script for adding types to index (#118)
* Make script for adding types to index

* Add semicolons to export lines
2023-05-11 13:10:28 -04:00
.husky
src Make script for adding types to index (#118) 2023-05-11 13:10:28 -04:00
.eslintrc.json Make script for adding types to index (#118) 2023-05-11 13:10:28 -04:00
.gitignore
.prettierrc.json
.woodpecker.yml
copy_generated_types_from_lemmy.sh Make script for adding types to index (#118) 2023-05-11 13:10:28 -04:00
deploy.sh
LICENSE
package.json
putTypesInIndex.js Make script for adding types to index (#118) 2023-05-11 13:10:28 -04:00
README.md
tsconfig.json
yarn.lock

GitHub tag (latest SemVer) GitHub issues License GitHub stars

lemmy-js-client

A javascript / typescript http and websocket client and type system for Lemmy.

Installation

yarn add lemmy-js-client

Usage

Websocket Client

LemmyWebsocket docs

import { Login, LemmyWebsocket } from "lemmy-js-client";

let client: LemmyWebsocket = new LemmyWebsocket();

let form: Login = {
  username_or_email: "my_email@email.tld",
  password: "my_pass",
};

this.ws.send(client.login(form));

HTTP Client

LemmyHttp docs

import { LemmyHttp } from 'lemmy-js-client';

let baseUrl = 'https://lemmy.ml';
let client: LemmyHttp = new LemmyHttp(baseUrl, headers?);
let jwt = await client.login(loginForm).jwt;

Development

You can use yalc to develop and test changes locally:

yarn global add yalc

# Go to lemmy-js-client dir
yalc publish --push

# Go to your client dir
yalc add lemmy-js-client

# To do updates, go back to the lemmy-js-client dir
# This also updates it, in every dir you've added it.
yalc publish --push