Version 0.01
- README boilerplate added
- Basic project structure created
- Initialised basic dependencies
- React with electron integrated
- Added UI waves
- Icon designed and added
- Added application grid and some dummy data
Version 0.02
- Project structure optimised
- Added OpenWeatherMap API
- Implemented ability to pass Location data as props
- Obtained API Keys, Stored and Secured
- Added ability to read API from pc data
Version 0.03
- Project structure and size reduced
- Added ability for front-end to communicate with backend
- Added Bat script to read the temperature on Windows (need admin rights)
- Added Custom Menu, submenu options
- Added Shortcuts for menu items
- Added Ability to package the application for production
- Added Openhardwaremonitor https://github.com/openhardwaremonitor/openhardwaremonitor
Version 0.04
- CPU Temperature Monitoring function added
- Added Start and Stop auto-monitoring from the main menu
- Added ability to stop monitoring from app
- Add ability to identify and quit running processes
Things to do
- [-] Add ability to identify processors cores
- [-] Add ability to Change town or get location data (store in config)
- [-] Add support for React dev tools
- [-] Optimise for different OS (MacOS, Linux)
- [-] Collected data need to be pushed to db (or on users machine as app logs)
- [-] Load and Display collected data side by side for (visual representation)
- [-] Add Notifications for CPU Temperature Warnings, Errors
- Copy project to your directory (
git clone https://github.com/ibnzUK/weather-vs-cpu
) - If you are Running a Windows Subsystem for Linux (WSL), it is recommended to install the project using PowerShell, GitBash or Command Prompt terminal (Concurrently dependency related)
- Make sure to have Node.js Version >= 12.13.0. For Electron Forge
- Install project packages (
npm install
) - Get your API key from https://openweathermap.org/api
- create .env file in root directory and store your API key:
BROWSER=none
REACT_APP_API_KEY=Your_OpenWeatherMap_API_Key
-
BROWSER=none option is for not opening the application in a browser window
-
To Start electron application project (
npm run dev
) -
Default weather location is set to UK London, you can change it in
src/components/UI/Card.js ln:10 myTown = 'London'
-
To Package application for distribution (
npm run make
) (NOTE: Make sure to rename application and lose '-' dash symbols, because of File Naming Conventions)
- Not optimised for Mac or Linux OS (feel free to contribute)
- OpenHardwareMonitor software requires Administrator rights
- If CPU temperature is not displayed, check current date log file saved in
scripts/OpenHardwareMonitorLog-XXXX-XX-XX.csv
and get required column name for cpu temperature stats, for example column for 'CPU Package' has a name of '/intelcpu/0/temperature/4' this value is than imported inscripts/tempChecker.js ln:7 optionFromCSV = '/intelcpu/0/temperature/4';
- If Log File is open, OpenHardwareMonitor software throws an error for not being able to update logs
- If OpenWeatherMap application is not killed after the process is stopped, change
scripts/stop.js ln:40 'TSKILL' to 'TASKKILL /PID'
- Open Weather Map API - https://openweathermap.org/api
- OpenHardwareMonitor (Windows) - https://github.com/openhardwaremonitor/openhardwaremonitor