lemmy-js-client
    Preparing search index...

    lemmy-js-client

    GitHub tag (latest SemVer) GitHub issues License GitHub stars

    lemmy-js-client

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

    pnpm install lemmy-js-client

    LemmyHttp docs

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

    // Build the client
    const baseUrl = "https://lemmy.ml";
    const client: LemmyHttp = new LemmyHttp(baseUrl);

    // Build the login form
    const loginForm: Login = {
    username_or_email: "my_name",
    password: "my_pass",
    };

    // Login and set the client headers with your jwt
    const { jwt } = await client.login(loginForm);
    client.setHeaders({ Authorization: `Bearer ${jwt}` });

    // Fetch top posts for the day
    const getPostsForm: GetPosts = {
    sort: "TopDay",
    type_: "Local",
    };
    const posts = await client.getPosts(getPostsForm);

    Use pnpm add to develop and test changes locally:

    pnpm add path/to/lemmy-js-client

    To generate OpenAPI docs, run pnpm tsoa

    This creates two files:

    • redoc-static.html - A static html rendering of the OpenAPI docs.
    • tsoa_build/swagger.json - An OpenAPI / Swagger json file.

    To contribute, check out the tsoa docs.