A general-purpose client library for communicating with Archipelago. Supports all major browsers and runtimes.
  • TypeScript 99%
  • JavaScript 0.7%
  • CSS 0.3%
Find a file
Phar 53270502dd
Some checks failed
Run Unittests / test (pull_request) Failing after 9s
Run Unittests / test (push) Failing after 9s
remove testing elements
2026-04-19 16:31:34 -05:00
.forgejo/workflows remove testing elements 2026-04-19 16:31:34 -05:00
.idea updates to toolchain, dependencies, and removing old and unnecessary files 2026-04-19 15:39:43 -05:00
assets Update some icons 2024-11-15 07:26:50 -06:00
guides Some more docs again 2024-11-15 08:11:56 -06:00
src remove testing elements 2026-04-19 16:31:34 -05:00
.gitignore updates to toolchain, dependencies, and removing old and unnecessary files 2026-04-19 15:39:43 -05:00
.npmignore Forgot to add newly added folders to .npmignore, good job me 2024-11-20 22:32:24 -06:00
bun.lock initial tests for unit tests 2026-04-19 16:10:47 -05:00
eslint.config.mjs updates to toolchain, dependencies, and removing old and unnecessary files 2026-04-19 15:39:43 -05:00
LICENSE updates to toolchain, dependencies, and removing old and unnecessary files 2026-04-19 15:39:43 -05:00
package.json initial tests for unit tests 2026-04-19 16:10:47 -05:00
README.md Update README.md for newest version and fix a broken link 2026-04-11 11:37:28 -05:00
tsconfig.json updates to toolchain, dependencies, and removing old and unnecessary files 2026-04-19 15:39:43 -05:00
typedoc.json updates to toolchain, dependencies, and removing old and unnecessary files 2026-04-19 15:39:43 -05:00

archipelago.js Icon archipelago.js

GitHub License Types NPM Version NPM Downloads Static Badge

A runtime-agnostic and zero dependency TypeScript/JavaScript library for communicating with Archipelago servers.

Targeted to work on all major desktop and mobile browsers (Firefox, Chromium, and Safari) and server-side runtimes such as Node.js, Bun, and Deno.

Installation

Install via npm install archipelago.js (or via your preferred package manager's flavor).

Starting Guide

Check out the intro documentation here!

API Documentation

The full API documentation is located here. Please be sure to reference it while you are developing your JavaScript-based clients.

This library supports 100% of the Archipelago network protocol referenced here as of 2026-04-11 (0.6.7). See more information about Archipelago at their website.

Contribution

Archipelago.js is built using TypeScript and the Bun bundler. You can set up your development environment by cloning this repository to a desired location on your computer and installing its devDependencies.

git clone https://github.com/ThePhar/archipelago.js
cd archipelago.js
npm install # or pnpm install

Then to build, have Bun installed and run npm run build (or pnpm build).

Archipelago.js is written in TypeScript and includes a strong ESLint config file to ensure code consistency. Be sure to follow the code standards of this repository and check your work with npm run lint.

Disclaimer / Call for Help

Currently, there are no automated tests for this library, so all testing in browser, Node, Deno, and Bun are done manually. This is certainly one area that can be expanded upon.

Alternatively, expanding upon the documentation (either through the JSDoc or tutorial-like guides) would be appreciated.