Allows monitoring of instrument PVs via a web page.
Frontend: NextJS using React, Tailwind CSS
Backend: pvws
Install NodeJS - we are using nvm-windows
for installing on windows, and the lts
version of node.
To install all dependencies, use:
npm install
This web dashboard relies on a PVWS instance to forward EPICS data via a websocket. https://github.com/ISISComputingGroup/WebDashboard/issues/30 should mean that there is a central instance running which will be used for production, but you may point your web dashboard at a local instance for dev work.
To start in dev mode, use:
npm run dev
To build and start in prod mode, use:
npm run build && npx serve@latest out
[!NOTE]
Images will not work properly here as a basePath has not been injected (as per the CI actions)
To run dev mode in containerd instead, run nerdctl compose -f compose.yaml up
. This will mount your current directory as a volume in the container which means any changes will make nextjs re-compile pages. This also means that anything in the dotenv
files are picked up, including the PVWS URL.
For a production build, run npm run build
. To start this build natively, use npm run start
.