Skip to content

Commit f4233e6

Browse files
committed
Added documentation about the project.
1 parent fe3c7a6 commit f4233e6

File tree

15 files changed

+885
-54
lines changed

15 files changed

+885
-54
lines changed

LICENSE

Lines changed: 674 additions & 0 deletions
Large diffs are not rendered by default.

README.md

Lines changed: 180 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -1,76 +1,213 @@
1-
**Note**: React and Electron were setup following this guide:
2-
1. [Github](https://github.com/willjw3/react-electron/blob/master/package.json)
3-
2. [Youtube](https://www.youtube.com/watch?v=Cdu2O6o2DCg)
1+
<br />
2+
<p align="center">
3+
<a href="https://powir.slapbot.me">
4+
<img src="public/icon.ico" alt="Logo" width="80" height="80">
5+
</a>
6+
<h3 align="center">Powir</h3>
7+
<p align="center">
8+
Windows 10 based tool to monitor and analyze your system's power and battery usage
9+
<br />
10+
<a href="https://powir.slapbot.me"><strong>Explore the website »</strong></a>
11+
<br />
12+
<br />
13+
<a href="https://join.slack.com/t/powir/shared_invite/zt-ezy7sf5d-Tt1MmP_bcf_gdGLEJSEfzw">Join Slack</a>
14+
·
15+
<a href="https://github.com/slapbot/powir/issues">Report Bug</a>
16+
·
17+
<a href="https://github.com/slapbot/powir/issues">Request Feature</a>
18+
·
19+
<a href="https://twitter.com/ugupta41">Give Feedback</a>
20+
</p>
21+
</p>
422

5-
Give credits:
6-
1. <a href="https://icons8.com/icon/64452/heart">Heart icon by Icons8</a>
23+
<hr>
724

8-
---
9-
This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app).
25+
![](demos/gifs/powir-main.gif)
1026

11-
## Available Scripts
27+
<!-- TABLE OF CONTENTS -->
28+
## Table of Contents
1229

13-
In the project directory, you can run:
30+
* [About the Project](#about-the-project)
31+
* [What is it?](#what-is-it)
32+
* [Installation](#installation)
33+
* [Features](#features)
34+
* [What it does?](#what-it-does)
35+
* [Why build it?](#why-build-it)
36+
* [Actions?](#actions)
37+
* [Gallery](#gallery)
38+
* [Battery Information](#battery-information)
39+
* [System Information](#system-information)
40+
* [Power & Battery Usage](#power-battery-usage)
41+
* [Installation](#installation)
42+
* [FAQs](#faqs)
43+
* [Developer](#developer)
44+
* [Prerequisites](#prerequisites)
45+
* [Setup](#setup)
46+
* [Build](#build)
47+
* [Usage](#usage)
48+
* [Contributing](#contributing)
49+
* [License](#license)
50+
* [Contact](#contact)
51+
* [Acknowledgement](#acknowledgement)
1452

15-
### `yarn start`
53+
<hr>
1654

17-
Runs the app in the development mode.<br />
18-
Open [http://localhost:3000](http://localhost:3000) to view it in the browser.
55+
## About The Project
1956

20-
The page will reload if you make edits.<br />
21-
You will also see any lint errors in the console.
57+
### What is it?
2258

23-
### `yarn test`
59+
Powir is a Windows 10 based tool to monitor and analyze your system's power and battery usage.
2460

25-
Launches the test runner in the interactive watch mode.<br />
26-
See the section about [running tests](https://facebook.github.io/create-react-app/docs/running-tests) for more information.
61+
It provides you with various information and statistics about the current and overall history of the power and battery usage of your system.
2762

28-
### `yarn build`
63+
### Installation
2964

30-
Builds the app for production to the `build` folder.<br />
31-
It correctly bundles React in production mode and optimizes the build for the best performance.
65+
Installation is as quick as simply downloading the executable and running it.
66+
The App is completely portable meaning you don't have to go through an installation wizard,
67+
and it can be copied from system to system seamlessly.
3268

33-
The build is minified and the filenames include the hashes.<br />
34-
Your app is ready to be deployed!
69+
Simply go to [Releases](https://github.com/SlapBot/powir/releases) and pick the latest version to download.
3570

36-
See the section about [deployment](https://facebook.github.io/create-react-app/docs/deployment) for more information.
3771

38-
### `yarn eject`
72+
## Features
73+
![](demos/processed-screenshots/about.png)
3974

40-
**Note: this is a one-way operation. Once you `eject`, you can’t go back!**
75+
### What it does?
76+
- Provides you with a simple and clean UI to list your battery and system information.
77+
- Shows you the change in battery capacity since the OS was installed.
78+
- Analyzes the current and overall estimated battery life of your system.
79+
- Computes various statistics to give a better understanding of your power usage.
80+
- Ability to export all the data via various formats: PDF (app), JSON (processed), HTML (original report).
81+
- 100% free and completely open-source for an absolute transparency.
82+
- Completely portable app with no installation required, ready to use out of the box.
4183

42-
If you aren’t satisfied with the build tool and configuration choices, you can `eject` at any time. This command will remove the single build dependency from your project.
4384

44-
Instead, it will copy all the configuration files and the transitive dependencies (webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except `eject` will still work, but they will point to the copied scripts so you can tweak them. At this point you’re on your own.
85+
### Why build it?
86+
- Complete lack of any such power/battery monitoring analyzing tool available in the market.
87+
- Obscure documentation over how to find battery statuses on the Internet.
88+
- Required to use terminal in order to run a command showing information about the system.
89+
- Devoid of any simple and understandable metrics from the underlying API or report.
4590

46-
You don’t have to ever use `eject`. The curated feature set is suitable for small and middle deployments, and you shouldn’t feel obligated to use this feature. However we understand that this tool wouldn’t be useful if you couldn’t customize it when you are ready for it.
4791

48-
## Learn More
92+
### Actions
4993

50-
You can learn more in the [Create React App documentation](https://facebook.github.io/create-react-app/docs/getting-started).
94+
![](demos/processed-screenshots/actions.png)
5195

52-
To learn React, check out the [React documentation](https://reactjs.org/).
96+
- Export the current report of your system from Powir in PDF format
97+
- Export the parsed and processed data of your system from Powir in JSON format
98+
- Shows original report generated by Windows using the command:powercfg /batteryreport in the terminal
5399

54-
### Code Splitting
55100

56-
This section has moved here: https://facebook.github.io/create-react-app/docs/code-splitting
57101

58-
### Analyzing the Bundle Size
102+
## Gallery
59103

60-
This section has moved here: https://facebook.github.io/create-react-app/docs/analyzing-the-bundle-size
104+
### Battery Information
61105

62-
### Making a Progressive Web App
106+
![](demos/processed-screenshots/battery-information.png)
63107

64-
This section has moved here: https://facebook.github.io/create-react-app/docs/making-a-progressive-web-app
65108

66-
### Advanced Configuration
109+
### System Information
67110

68-
This section has moved here: https://facebook.github.io/create-react-app/docs/advanced-configuration
111+
![](demos/processed-screenshots/system-information.png)
69112

70-
### Deployment
71113

72-
This section has moved here: https://facebook.github.io/create-react-app/docs/deployment
114+
### Power & Battery Usage
73115

74-
### `yarn build` fails to minify
116+
![](demos/processed-screenshots/recent-usage.png)
75117

76-
This section has moved here: https://facebook.github.io/create-react-app/docs/troubleshooting#npm-run-build-fails-to-minify
118+
119+
## FAQs
120+
121+
![](demos/processed-screenshots/FAQs.png)
122+
123+
<strong>Is it completely free?</strong>
124+
125+
Yes, Powir is 100% free to download and use.
126+
127+
<strong>Are the numbers displayed 100% correct?</strong>
128+
129+
Depends, Powir parses the raw reports generated from Windows and does the computations of the various statistics and render the charts.
130+
131+
<strong>What tooling was used to build the app?</strong>
132+
133+
Powir runs as an electron app (chromium web engine embedded) while using React to facilitate the UI and data workflow.
134+
135+
<strong>Does it share my data anywhere?</strong>
136+
137+
No, Powir will never share your data anywhere outside your local system, the entire source code of the app is online for anyone to check. Infact, it never makes any request to a server since there is none. Its simply a client sided app.
138+
139+
<hr>
140+
141+
## Developer
142+
If you're looking to build it from the source or inspect the app, its extremely simply and you only have to follow few instructions as listed below:
143+
144+
### Prerequisites
145+
- Node
146+
- NPM
147+
148+
### Setup
149+
150+
- Clone the repository: `git clone https://github.com/SlapBot/powir.git`
151+
- Cd into the directory: `cd powir` and run: `npm install`
152+
153+
### Build
154+
155+
- Run `npm run build` which will package the app at `dist/` folder.
156+
157+
### Usage
158+
159+
- Run these two commands in two separate sessions when you are developing in order to use HMR (hot module reloading):
160+
- Run react server: `npm run react-start`
161+
- Run electron app: `npm run electron-start`
162+
- All of the server code is located at: `public/server` directory.
163+
- Entrypoint of the electron app is at`public/electron.js`.
164+
- Everything related to rendering is done at: `src` directory.
165+
- Any of the changes you make at src directory will reflect instantly in the app.
166+
- Any of the changes made for server requires the app to be restarted using: `npm run electron-start`
167+
168+
169+
## Contributing
170+
171+
Contributions are what make the open source community such an amazing place to be learn, inspire, and create.
172+
Any contributions you make are **greatly appreciated**.
173+
174+
1. Fork the Project
175+
2. Create your Feature Branch (`git checkout -b feature/AmazingFeature`)
176+
3. Commit your Changes (`git commit -m 'Add some AmazingFeature'`)
177+
4. Push to the Branch (`git push origin feature/AmazingFeature`)
178+
5. Open a Pull Request
179+
180+
Feel free to join our slack chat group to get more help: [Slack](https://join.slack.com/t/powir/shared_invite/zt-ezy7sf5d-Tt1MmP_bcf_gdGLEJSEfzw)
181+
182+
183+
<!-- LICENSE -->
184+
## License
185+
186+
Distributed under the GPU General Public License. See `LICENSE` for more information.
187+
188+
<!-- CONTACT -->
189+
## Contact
190+
191+
Hey there! I'm [Ujjwal](https://twitter.com/ugupta41) who goes around with the name Slapbot in open source communities, You'd often find me blabbering my completely biased opinions in /r/soccer or busy building new things.
192+
193+
I'm most accessible via Twitter and tend to update about whatever I'm working there, so feel free to follow or send a dm there. :)
194+
195+
196+
## Acknowledgement
197+
Many thanks to these amazing frameworks/libraries/tools/arts without which none of this had been possible! <3
198+
199+
#### Major Libraries
200+
- [ElectronJS](https://www.electronjs.org/)
201+
- [NodeJS](https://nodejs.org/en/)
202+
- [ReactJS](https://reactjs.org/)
203+
- [Tailwind](https://tailwindcss.com/)
204+
- [PaperCSS](https://www.getpapercss.com/)
205+
- [ChartJS](https://www.chartjs.org/)
206+
207+
#### Minor Libraries
208+
- [Lodash](https://lodash.com/)
209+
- [JSSoup](https://github.com/chishui/JSSoup)
210+
- [JSSoup](https://github.com/chishui/JSSoup)
211+
212+
#### Icons
213+
- [Icons8](https://icons8.com/)

demos/gifs/powir-main.gif

5 MB
Loading

demos/logos/icon.ico

7.84 KB
Binary file not shown.

demos/logos/logo.png

9.12 KB
Loading
133 KB
Loading
319 KB
Loading
127 KB
Loading
174 KB
Loading
232 KB
Loading

0 commit comments

Comments
 (0)