allofphysicsgraph / proofofconcept

Physics Derivation Graph: mathematical connections among equations
https://derivationmap.net/
Other
20 stars 6 forks source link

current web-based input interface is depth first; make a new web interface that is breadth first #231

Open bhpayne opened 2 years ago

bhpayne commented 2 years ago

The current web input mechanism requires the user to enter

  1. the inference rule
  2. the latex for the expressions (novel Latex xor local-to-the-derivation xor global)
  3. verification of the SymPy equivalent implementations of each Latex representation
  4. verification of each symbol used in each step

This process is tedious for entering derivations and obscures the overview of the derivation. The page reloads and context changes are burdensome.

An alternative approach would be to have the user

  1. enter all the inference rules and associated latex in a linear sequence,
  2. review all symbols and assign PDG IDs
  3. review validity of each step

Proposal: a two-pane web interface (like Overleaf) with the left side for input and right side for display and review. The left side would prompt the user for the inference rule and then the latex expressions. The expressions would be automatically numbered on the right side, and these local numberings would be used for reference within the derivation.

bhpayne commented 2 years ago

This is the best introductory tutorial I've seen: https://iq.opengenus.org/single-page-application-with-flask-ajax/

I was able to get that to work, up to the point of addressing CSRF tokens.

Some of https://flask-security-too.readthedocs.io/en/stable/spa.html may be relevant, or perhaps https://testdriven.io/blog/flask-spa-auth/