This is the client component single-page application written in React and served by a Node.js server hosted on a Raspberry Pi. This web application needs the server component in order to function properly.
The respository and setup instruction for the server can be found here
System Information Page
- Install and setup the server component on the Raspberry Pi. (Instruction here)
- Clone this repository, run
npm install
to install the dependencies. - Create a production build with
npm run build
. - Deploy the app into the
public
directory on the server.
Start the server and the application can be viewed at raspberrypi.local:3000
- Located at
/systems
. This page displays system information (i.e. uptime, core temperature, as well as CPU, memory, network, and storage usage information), which are periodically updated in real time. - This page is auth protected. The user must be logged in to view it.
- Located at
/gpio
. This page allows the user to view and control the state of the GPIO pins on the Raspberry Pi. Changes made to the state of one or more GPIO pins (e.g. by pressing a button) are displayed in real time on this page. - This page is auth protected. The user must be logged in to view it.
- The login page is self-explanatory and is located at
/login
- The register page (
/register
) creates a new user account needed to view the system information and gpio status pages.