Skip to content

seankao31/ffxiv-rowenas-secret

Repository files navigation

ffxiv-rowenas-secret

A personal dashboard for cross-world market board arbitrage in Final Fantasy XIV. It scans all worlds in the 陸行鳥 Data Center, finds items cheaper elsewhere than on 利維坦 (home world), and ranks them by expected daily profit.

Data is sourced from the Universalis API and refreshed continuously (each full scan cycle takes ~2.5 minutes).

Prerequisites

Getting started

# Install dependencies
bun install

# Build the app
bun run build

# Start the server
bun start

Then open http://localhost:3000 in your browser. The first scan takes about 1.5 minutes before results appear (the per-world strategy scans all 8 worlds sequentially — see ADR-005). A progress bar shows the current phase and completion percentage during the initial scan.

Development

# Start the dev server
bun run dev

# Start with pre-seeded cache data (skips Universalis scanner)
FIXTURE_DATA=true bun run dev

Tests

bun run test        # unit tests (vitest)
bun run test:e2e    # E2E tests (Playwright, requires Chromium)

Deployment

The app is containerized via Docker. See the Dockerfile and .github/workflows/ for details.

Contributing

Branching model, feature-shipping recipe, and useful git commands are in docs/git-workflow.md. The short version:

  • Feature work happens on feat/<ticket>-<slug> branches off main.
  • Merge to main with --no-ff and a handcrafted merge commit subject describing the feature.
  • Release to prod with ./scripts/release.sh [-M | -m | -p | X.Y.Z] — bumps the version, tags, pushes.
  • Use git log main --first-parent to read the release log.

About

Finally giving Rowena some competition

Topics

Resources

Stars

Watchers

Forks

Sponsor this project

Packages

 
 
 

Contributors