Getting Started

To work on xivanalysis, you’ll need git, and a “fork” of the xiva codebase. If not familiar, github’s instructions for creating a fork and its linked pages walk through the process of installing and configuring git, and creating a fork.

Following those instructions should result in a copy of the repository on your github account, and a local clone of the repository on your computer. Make sure you have used cd to go into the repository.

Installing development tools

There are a few ways to set up the required tools to work on xivanalysis. The recommended approach is to use mise, a configuration file for which is included in the repository.

Using mise

mise is a version manager for languages and toolchains, and can be used to set up and manage the environment required to work on xivanalysis.

  1. Install mise following the installation instructions
  2. run mise install
    if you are asked to trust mise.toml, select “yes”
    you can check the contents of mise.toml if concerned - it contains only a short list of required runtimes and tools.

Using corepack

If you have an existing setup or would otherwise prefer to not use mise, corepack can be used to used instead:

corepack is a tool bundled with Node.js that helps manage the package managers used in javascript projects.

  1. Install Node.js v22 using your preferred version manager, or from the Node.js website.
  2. run corepack install

Preparing environment

With the tools installed, you’ll need to download the project’s dependencies. Please do use pnpm for this - using yarn or npm will potentially result in untested updates that fail to compile.

$ pnpm install
Setup for local server development

If you are configuring the server locally, you can configure the xivanalysis client to use it for API requests.

To do so, create an .env.local file containing the following:

REACT_APP_FFLOGS_V1_BASE_URL=[server_url]/proxy/fflogs/

Making changes

NOTE: Drop past our Discord channel before you get too into it, have a chat! Duping up on implementations is never fun.

To start the development server, just run

$ pnpm run start

If you would like to compile a production copy of the assets (for example, to be served when testing the server), run

$ pnpm run build