openflexure-microscope-server/webapp
Richard Bowman 0e8340bb5b Relax dependency specifications and build on node v20
I've removed the patch version from the version specifiers (i.e.
I'm now only specifying the major version for most deps), and
it now builds OK using node v20 on WSL.
2024-01-03 17:15:29 +00:00
..
public Rename js directory to webapp 2021-09-16 15:13:19 +01:00
src Eliminate references to old extensions API 2024-01-03 14:28:31 +00:00
.env.development Rename js directory to webapp 2021-09-16 15:13:19 +01:00
.env.production Rename js directory to webapp 2021-09-16 15:13:19 +01:00
.eslintrc.js Rename js directory to webapp 2021-09-16 15:13:19 +01:00
.gitignore Rename js directory to webapp 2021-09-16 15:13:19 +01:00
babel.config.js Rename js directory to webapp 2021-09-16 15:13:19 +01:00
CONTRIBUTING.md Rename js directory to webapp 2021-09-16 15:13:19 +01:00
LICENSE Rename js directory to webapp 2021-09-16 15:13:19 +01:00
package-lock.json Relax dependency specifications and build on node v20 2024-01-03 17:15:29 +00:00
package.json Relax dependency specifications and build on node v20 2024-01-03 17:15:29 +00:00
README.md WIP: update webapp to use new backend 2023-09-04 22:00:56 +01:00
vue.config.js Linted 2023-11-02 20:30:54 +00:00

OpenFlexure Microscope JS Client

Key info

  • Vue.js web application providing a graphical interface for the OFM

  • Once built, will be served by the API server from the host root on port 5000

  • See openflexure-microscope-server/README.md for details on local installation and building

Developer guidelines

Creating releases

Installing

  • Install Node.js (and npm)
  • Install dependencies with npm install
  • Node v18 changes SSL, and so you need $env:NODE_OPTIONS = "--openssl-legacy-provider" on Windows or export NODE_OPTIONS=--openssl-legacy-provider on Linux/MacOS for compatibility.
  • Build the static web app with npm run build
  • Serve a development version with npm run serve

VS Code and ESLint

To prevent the editor from interfering with ESLint, add to your project settings.json:

{
    "editor.tabSize": 2,
    "cSpell.enabled": false,
    "eslint.validate": ["vue","javascript", "javascriptreact"],
    "editor.formatOnSave": false,
    "vetur.validation.template": false,
    "editor.codeActionsOnSave": {
        "source.fixAll.eslint": true
    }
}