Skynet Plotting is a set of graphing tool designed to make data anlysis easy for the students taking the intro level astronony lab courses Our Place In Space! (OPIS!) and The Multi-Wavelength Universe (MWU!) curricula at UNC Chapel Hill and many other institutions. Developed under the guidance of Dr. Dan Reichart.
The Skynet Plotting project relies on Node.js. The installation varies
depending on your operating system. However, once Node.js is installed,
the project setup is independent of the operating system.
Install Fast Node Manager (fnm).
winget install Schniz.fnmYou may need to close and reopen your terminal before continuing.
Environment variables need to be setup before you can start using fnm. This is done by evaluating the output of fnm env.
eval "$(fnm env --use-on-cd)"Note: the above command assumes that you're using git bash. See the fnm repo for instruction with other terminals.
Download and install Node.js
fnm use --install-if-missing 20To verify that everything worked, run node -v. You should see the
version output.
Install Node Version Manager (nvm).
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bashDownload and install Node.js
nvm install 20To verify that everything worked, run node -v. You should see the
version output.
Clone the repository.
clone https://github.com/SkynetRTN/skynet-plotting.gitInstall the required Node.js packages.
$ npm installStart a testing server that will automatically reload as you make changes.
$ npm startBuild the site. This will place the bundled files in the ./dist directory.
$ npm run buildThe API urls are different for development and production. The switch is handled automatically by vite environment variable.
To use functionalities that require our backend server, for example in Cluster and Gravity, check out @RuideFu's skynet-plotting-server, forked from @finnsjames's skynet-plotting-server.
Note: npm start is a shortcut for npm run start. Any npm run <your-script-name> command (like the two we used here) is defined in the scripts section of package.json. Take a look by yourself! In other words, these are not some magic commands that npm has built-in, but rather some convenient "scripts" that we have defined.






