/fsuipc.js

FSUIPC client implementation for NodeJS.

Primary LanguageTypeScriptMIT LicenseMIT

fsuipc.js

npm version ts release

FSUIPC / XPUIPC client implementation for NodeJS.

Packages

  • ✈️ fsuipc.js - Core package that allows you to use the single-minimal version of fsuipc.js.
  • 🚀 @fsuipc.js/api - An API wrapper with +800 predefined offsets.

Prerequisites

to execute fsuipc.js correctly you must meet the following requirements:

  • Windows 10 64bits
  • Node 18.20.3+
  • FSUIPC or XPUIPC installed as flight simulator plugin
  • Install necessary development tools (Python, Visual Studio) here

Quick start

Installation

yarn add fsuipc.js
const fsuipcModule = require('fsuipc.js');

const simulator = new fsuipcModule.FSUIPC();

simulator
  .open()
  .then((request) => {
    /* Offset name, value in hexadecimal and data type. */
    request.add('clockHour', 0x238, fsuipcModule.Type.Byte);

    return request.process();
  })
  .then((result) => {
    console.log(JSON.stringify(result));

    return simulator.close();
  })
  .catch((err) => {
    console.error(err);

    return simulator.close();
  });

Motivation

I found on the internet several libraries made by simmers and i found that there are several very good libraries but everything was scattered between different repositories. With this package I wanted to mix the best of the community with a monorepo, so we can continue contribute to a single repository and have the best possible library 🥳.

fsuipc.js is based on the following repositories:

Special thanks ✨ to these repositories and their creators, without them fsuipc.js would not be possible. 🚀🥳

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you want contribute, follow contribution guidelines here: Contribution Guideline.

License

Distributed under the MIT License. See LICENSE for more information.