Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/distatus/battery
cross-platform, normalized battery information library
https://github.com/distatus/battery
battery cross-platform go
Last synced: about 1 month ago
JSON representation
cross-platform, normalized battery information library
- Host: GitHub
- URL: https://github.com/distatus/battery
- Owner: distatus
- License: mit
- Created: 2016-03-12T23:03:40.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2023-09-27T07:39:30.000Z (8 months ago)
- Last Synced: 2024-03-16T02:22:56.344Z (3 months ago)
- Topics: battery, cross-platform, go
- Language: Go
- Homepage:
- Size: 78.1 KB
- Stars: 237
- Watchers: 5
- Forks: 35
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE.md
Lists
- awesome-go - battery - Cross-platform, normalized battery information library. (Miscellaneous / Uncategorized)
- awesome-go - battery - Cross-platform, normalized battery information library. (Miscellaneous / Uncategorized)
- awesome-go-extra - battery - platform, normalized battery information library|208|29|7|2016-03-12T23:03:40Z|2022-01-15T13:52:54Z| (Microsoft Office / Uncategorized)
- awesome-stars - distatus/battery - cross-platform, normalized battery information library (Go)
- awesome-go-zh - battery
- awesome-go - battery - Cross-platform, normalized battery information library. (Miscellaneous / Uncategorized)
- awesome-go-cn - battery
- awesome-go - battery - platform, normalized battery information library. | - | - | - | (Miscellaneous / Strings)
- awesome-go - battery - Cross-platform, normalized battery information library. (Miscellaneous / Uncategorized)
- awesome-go-projects - battery - Cross-platform, normalized battery information library. (Miscellaneous / Uncategorized)
- awesome-go - battery - Cross-platform, normalized battery information library. (Miscellaneous / Uncategorized)
- awesome-go - battery - Cross-platform, normalized battery information library. (Miscellaneous / Advanced Console UIs)
- awesome-go-with-framework - battery - Cross-platform, normalized battery information library. (Miscellaneous / Strings)
- awesome-go - battery - Cross-platform, normalized battery information library. (Miscellaneous / Uncategorized)
- awesome-go-cn - battery
- zero-alloc-awesome-go - battery - Cross-platform, normalized battery information library. (Miscellaneous / Uncategorized)
- awesome-go - battery - Cross-platform, normalized battery information library. (Miscellaneous / Strings)
- awesome-go. - battery - Cross-platform, normalized battery information library. (Miscellaneous / Advanced Console UIs)
- awesome-go - battery - Cross-platform, normalized battery information library. (<span id="其他-miscellaneous">其他 Miscellaneous</span> / <span id="高级控制台用户界面-advanced-console-uis">高级控制台用户界面 Advanced Console UIs</span>)
- awesome-go-cn - battery - 跨平台电源信息库 (杂项 / 高级控制台界面)
- awesome-go-with-stars - battery - Cross-platform, normalized battery information library. (Miscellaneous / Uncategorized)
- awesome-go - battery - Cross-platform, normalized battery information library. (Miscellaneous / Uncategorized)
- repo-1316-awesome-go-cn - battery
- repo-1211-awesome-go-cn - battery
- awesome-Char - battery - Cross-platform, normalized battery information library. (Miscellaneous / Uncategorized)
- awesome-reader - battery - Cross-platform, normalized battery information library. (Miscellaneous / Strings)
- awesome-go - battery - Cross-platform, normalized battery information library. (Miscellaneous / Strings)
- Go-awesome - battery - Cross-platform, normalized battery information library. (Miscellaneous / Uncategorized)
- awesome-go-cn - battery - platform, normalized battery information library.) (杂项 / Advanced Console UIs)
- go-awesome-cn-star - battery
- awesome-go - battery - A cross-platform, normalized battery information library. (Miscellaneous / Advanced Console UIs)
- awesome-go-cn - battery
- awesome-go - battery - 跨平台電源信息庫 (雜項 / 高級控制台界面)
- awesome-go-handwritten - battery - Cross-platform, normalized battery information library. (Miscellaneous / Advanced Console UIs)
- awesome-go2 - battery - Cross-platform, normalized battery information library. (Miscellaneous / Advanced Console UIs)
- awesome-go - battery - Cross-platform, normalized battery information library. (Miscellaneous / Uncategorized)
- awesome-go - battery - Cross-platform, normalized battery information library. - :arrow_down:6 - :star:63 (Miscellaneous / Strings)
- awesome-go - battery - Cross-platform, normalized battery information library. (Miscellaneous / Uncategorized)
- awesome-go - battery - A cross-platform, normalized battery information library. (Miscellaneous / Advanced Console UIs)
- awesome-go - battery - Cross-platform, normalized battery information library. (Miscellaneous / Uncategorized)
- awesome-go-stars - battery - Cross-platform, normalized battery information library. (Miscellaneous / Uncategorized)
- awesome-go-zh - battery
- awesome-stars - battery - platform, normalized battery information library | distatus | 240 | (Go)
- awesome-go-cn - battery
- awesome-go - battery - Cross-platform, normalized battery information library. (Miscellaneous / Uncategorized)
- awesome-go - battery - Cross-platform, normalized battery information library. (Miscellaneous / Uncategorized)
- awesome-go - battery - cross-platform, normalized battery information library - ★ 106 (Miscellaneous)
README
battery [![Build Status](https://github.com/distatus/battery/actions/workflows/tests.yml/badge.svg?branch=master)](https://github.com/distatus/battery/actions/workflows/tests.yml) [![Go Report Card](https://goreportcard.com/badge/github.com/distatus/battery)](https://goreportcard.com/report/github.com/distatus/battery) [![GoDoc](https://pkg.go.dev/badge/github.com/distatus/battery)](https://pkg.go.dev/github.com/distatus/battery)
=======Cross-platform, normalized battery information library.
Gives access to a system independent, typed battery state, capacity, charge and voltage values recalculated as necessary to be returned in mW, mWh or V units.
Currently supported systems:
* Linux 2.6.39+
* OS X 10.10+
* Windows XP+
* FreeBSD
* DragonFlyBSD
* NetBSD
* OpenBSD
* SolarisInstallation
------------```bash
$ go get -u github.com/distatus/battery
```Code Example
------------```go
package mainimport (
"fmt""github.com/distatus/battery"
)func main() {
batteries, err := battery.GetAll()
if err != nil {
fmt.Println("Could not get battery info!")
return
}
for i, battery := range batteries {
fmt.Printf("Bat%d: ", i)
fmt.Printf("state: %s, ", battery.State.String())
fmt.Printf("current capacity: %f mWh, ", battery.Current)
fmt.Printf("last full capacity: %f mWh, ", battery.Full)
fmt.Printf("design capacity: %f mWh, ", battery.Design)
fmt.Printf("charge rate: %f mW, ", battery.ChargeRate)
fmt.Printf("voltage: %f V, ", battery.Voltage)
fmt.Printf("design voltage: %f V\n", battery.DesignVoltage)
}
}
```CLI
---There is also a little utility which - more or less - mimicks the GNU/Linux `acpi -b` command.
*Installation*
```bash
$ go install github.com/distatus/battery/cmd/battery@latest
```*Usage*
```bash
$ battery
BAT0: Full, 95.61% [Voltage: 12.15V (design: 12.15V)]
```