Monitor your PC like never before!
- Cross-platform and free
- CPU usage, flags and temperature
- GPU information, with support for multiple GPUs
- RAM usage
- Disk usage statistics and activity
- General system information such as hostname, operating system, program list with versions and more
- Network statistics with support for multiple network interfaces
Setup and running
To run the project you need Node.js installed (with npm).
The steps to do so, are different for every operating system,
and can be found on the Node.js website.
After that, simply run the following commands:
npm install npm start
Any errors that occur during the process can mean two things:
- You downloaded the latest source from an unstable branch
- Node.js, npm or you have configured something wrong
When the time is right we will generate builds with one of the following commands:
npm run buildall npm run buildlinux npm run buildmac npm run buildwin
In the root of the project, we store the README and LICENSE, among the other files that you would expect there. We have an app directory containing the core application parts. Another important folder is the components folder, which stores all the different parts of the application.
Inside the app folder the container for all components is stored. It starts with the index.js file, which loads the index.html file. From there, all the stylesheets and scripts are loaded. The core components like the settings are also created and managed there. Inside the index.html the sidebar shows a list of all the components. This list will be used to start the components as described below.
The first function that is called is the init function. This generates the charts and other things that should be available at all times. Aside from that, each module has a refresh function, which is called once every half a second (can be changed in the settings). This updates the data inside the charts and other places. This is one of the reasons why all components are loaded on startup. All components will be updated on the background using this refresh function, but this functionality can be disabled in the settings. Lastly, each module has an activate function, which is called when the user switches to this component. This is for example used to update the subtitle. There is no hard-coded list of components, instead a list is generated based on the sidebar menu. From there all the init, refresh and activate functions will be called for each component when needed. Each component exports only these three functions, unless there is other interaction required (such as refresh buttons).
We try to follow these suggestions when writing code:
- For CSS class and id names, use kebab-case-like-this
- Indentation settings are done with editorconfig
and fix them mostly automatically with:
eslint . --fix
We made use of the following software to create StatusPilatus:
- Electron (MIT)
- Bootstrap (MIT)
- JQuery (MIT)
- Chart.js (MIT)
- Systeminformation (MIT)
- ProgListr.js (MIT)
StatusPilatus is copyrighted software made by PilatusDevs in 2018. You can copy and modify it under the GNU GPL version 3 or later, see LICENSE for details.