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.
- Install mise following the installation instructions
- run
mise install
if you are asked to trustmise.toml
, select “yes”
you can check the contents ofmise.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.
- Install Node.js v22 using your preferred version manager, or from the Node.js website.
- 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