/factorio-lab

Angular-based calculator for the games Factorio, Dyson Sphere Program, and Satisfactory

Primary LanguageTypeScriptMIT LicenseMIT

FactorioLab

build tests codecov Known Vulnerabilities

This is the repository for the FactorioLab project, a tool for calculating resource and factory requirements for the games Factorio, Dyson Sphere Program, and Satisfactory.
This project is intended to build on the features of the Kirk McDonald Factorio Calculator (GitHub). It is built from the ground up using Angular, Redux, and Typescript.

For instructions on how to use this tool, check out the wiki.

To submit suggestions or issues, please check out the issues page.

To discuss the calculator, join the Discord.

If you love FactorioLab, consider supporting it by buying me a ☕!

Running online

The calculator can be found at https://factoriolab.github.io.
The Factorio calculator can opened directly using the url https://factoriolab.github.io/factorio.
The Dyson Sphere Program calculator can opened directly using the url https://factoriolab.github.io/dsp.
The Satisfactory calculator can opened directly using the url https://factoriolab.github.io/satisfactory.
The staging environment, for testing pull requests, can be found at https://factoriolab.github.io/staging.

Running locally

To run this project locally:

  1. Install NodeJS
  2. Install Angular CLI, using npm install -g @angular/cli
  3. Install dependencies, using npm ci
  4. Build and serve the project, using npm start
  5. Open a browser at http://localhost:4200

The app will reload automatically if source code is changed.

Running tests

To run the automated unit tests:

  1. Install NodeJs and Angular CLI as described above
  2. Build and run the tests, using npm test

Currently, this project does not include any end-to-end tests, though the Angular CLI automatically includes a skeleton in the e2e folder.