OrderedSet86 / gtnh-flow

Factory Optimization Flowcharts for Gregtech: New Horizons
MIT License
84 stars 24 forks source link

Gather requirements for 2.0 release #10

Open OrderedSet86 opened 1 year ago

OrderedSet86 commented 1 year ago

Need to gather requirements so I know what it is needed for the implementation

OrderedSet86 commented 1 year ago

Requirements

  1. Able to handle any situation in GTNH in a correct manner with minimum end user input. See https://github.com/OrderedSet86/gtnh-flow/issues/7 for some tricky scenarios. Needs to handle petrochem and situations like HOG, or need to come up with a clear explanation for why it won't work in a linear programming context. Need to explore weird machines, like UCFE.
  2. In service of 1, a full test suite with any kind of tricky situation that can be thought of
  3. [Optional] Figure out some way to either get rid of the DAG or make it less confusing for the end user
  4. Explicitly separate the connection and balancing steps - this is important for displaying on the web
  5. Become charting tool agnostic - use something like networkx or similar to store graph data. Want to add modules for displaying in graphviz. or on the web, or in a command line interface without tight coupling.
  6. Remove source and sink nodes entirely from visualization - these contribute to lack of clarity, especially in layout engines like dot or dagre (used by Mermaid and D2js).
  7. Extensive documentation / practical walkthroughs
  8. A performant web interface for integration with webnei. Need to choose a good library and support some kind of user interfacing with the graph (like adding "number" or "target" arguments). Maybe take good design features from competing tools? https://discord.com/channels/181078474394566657/747707674053050408/1063503848230109184
  9. Linting
  10. Don't require manual splitting for recycling