ESI-FAR / INA-tool

A tool for visualising and analysing Institutional Statements
MIT License
2 stars 0 forks source link

Remove PHP as dependency #21

Open sjvrijn opened 6 months ago

sjvrijn commented 6 months ago

Since the current plan is to have this as a front-end only application anyway, we should remove the server-side PHP dependency. This simplifies the tech stack of the project, making it easier to work on and run.

As an added bonus, it means we should be able to host the application on GitHub pages until definitive hosting is arranged.

Steps:

sjvrijn commented 5 months ago

This turns out to be more tricky than I initially thought for two reasons:

  1. replacing PHP session management by javascript session management is not too hard, but resetting/clearing is implicitly done by redirecting to the same page Javascript session storage works differently however, so clearing (probably?) needs to be done more explicitly, i.e.,

    • clearing storage (easy)
    • clearing SVG area (doable)
    • resetting table to empty (less clear to me how to do this correctly)
  2. PHP is also used to include the header/footer HTML sections, which HTML/JS itself does not have a 1-to-1 replacement functionality. To replace this functionality, we would either have to move to a JS framework like React/Angular and use components, or switch to a static site generator like Jekyll. Which option is easiest to maintain and matches best with our development direction, I don't know, so we should talk to people with more experience.

For now, I'm taking this issue out of the MVP milestone and replacing it with a more generic 'arrange hosting' issue.