A frontend for data logged by NodeBee. The data is plotted using Plotly.
This tool requires a dataset from NodeBee. Please follow the setup procedures there first as they are only referenced below.
- Clone this project to your server
git clone https://github.com/netbymatt/nodebee-frontend.git
- Open config.js
- Enter the database credentials, host name and database name in
username
,password
,host
andname
. Then uncomment each line. - Enter a port number to serve the application on.
- Start the server
npm start
The quick start routine is just that... a quick start. It has the following limitations:
- Stores your database credentials in a file on the system against current best practices.
- Ties up a terminal instance while running the server
Storing your credentials in a file within the project is not considered a best practice. Instead environment variables should be used store this information. Environment variables that are shared with Nodebee are noted below. Nodebee-frontend uses the following environment variables to store configuration details:
config.js | Environment variable | Shared with Nodebee | default |
---|---|---|---|
db.username | NODEBEE_DB_USERNAME | yes | |
db.password | NODEBEE_DB_PASSWORD | yes | |
db.host | NODEBEE_DB_HOST | yes | localhost |
db.name | NODEBEE_DB_NAME | yes | nodebee |
server.port | NODEBEE_SERVER_PORT | no | 8080 |
After creating the environment variables make sure to clear out any stored credentials from config.js, or just delete the file entirely.
PM2 is recommended to run the process in the background, and start it automatically at boot. Use these commands to install PM2 and configure the process. If you've configured nodebee you may have already installed PM2, in which case you'll only ned to run step 2 and 4
# 1. install pm2
npm install -g pm2
# 2. start the nodebee process
pm2 server/index.js --name nodebee-frontend
# 3. restart pm2 automatically
pm2 startup
# 4. follow the instructions that this command outputs
pm2 save