Skip to content

akarras/XIVCraftingOptimizer-rs

 
 

Repository files navigation

FFXIV Crafting Optimizer Website

This project contains the source for the FFXIV Crafting Optimizer Website. It uses AngularJS, AngularUI Bootstrap, and Bootstrap.

Updating item and food databases

For the notranged.github.io version of this tool, I have written a new Python scraper that pulls recipe data from xivapi.com. Whenever FFXIV gets updated with new crafting recpes, run main_scraper.py found in scripts/ranged-python-xivapi-extractor/. It will create new .json files for each job in the /out/ folder. Use these to replace the old .json files in app/data/recipedb/

Food and Medicine

I haven't made this script work for food and medicine buffs yet, though. You will have to use the old lodestone scraper for that. Run it with argument --buffs, e.g. 'python main.py --buffs'

At some point I made an updated version of that script but idk what i changed about it anymore i forgor 💀

Development (old readme)

Running the app during development

You can pick one of these options:

  • serve the app subdirectory in this repository with your webserver
  • install node.js and run:
    • npm install
    • npm start
  • install browser-sync and run:
    • browser-sync start --port 8001 --server app --files app
  • install Docker and run:
    • docker build --tag ffxiv-craft-opt-web-dev .
    • docker run -d --rm -it -p 8001:8001 ffxiv-craft-opt-web-dev

The node.js, browser-sync and Docker methods options will serve the website on port 8001. Browser-sync should automatically launch your default browser and load the app.

Note that if you're using Docker on Windows or OS X via VirtualBox, you'll have to use the IP address of the Linux VM (usually 192.168.99.100) that is hosting Docker, instead of localhost. The Dockerfile.dev method will mount the app source as a volume so changes will be reflected when the browser is refreshed.

Translations

Localization files can be found in app/locale. The app/locale/en.json file is purposefully missing because the English strings are used as the translation keys. Strings which require interpolation are defined in app.js so that they can be displayed immediately as a fallback until the actual locale json file finishes loading.

About

Web frontend for FFXIV Crafting Optimizer service. Fork of a fork of a fork, with parts rewritten in Rust to make it better. Kind of.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 63.5%
  • Rust 17.7%
  • HTML 14.3%
  • SCSS 3.4%
  • Python 1.0%
  • Makefile 0.1%