/hearth

Cross-platform async library for system information fetching 🦀

Primary LanguageRustApache License 2.0Apache-2.0

heim

Project banner

Latest Version Latest Version User guide Gitter
Coverage Status Financial Contributors on Open Collective Apache 2.0 OR MIT licensed

Cross-platform library for system information fetching

heim is an ongoing attempt to create the best tool for system information fetching (ex., CPU, memory, disks or processes stats) in the Rust crates ecosystem.
It targets to have at least the same functionality as psutil, gopsutil or oshi eventually.

Check user guide to get more information on the heim goals, integrations and showcases.

Why should I use heim instead of {crate-name}? See the comparison page.

Examples can be found here.

Background

heim has a few key goals which define its development and public interface:

  1. Async-first with tokio and async-std support.
    Bundled polyfill option could be used for other use cases, see documentation for more details.
  2. Cross-platform with platform-specific extensions.
  3. Modular design.
  4. Idiomatic and easy to use.

Technical notes

heim requires Rust 1.45 or higher; this version is explicitly tested in CI and may be bumped in any major or minor release as needed.
Any changes to the supported minimum version will be called out in the release notes.

Platform support

Right now heim support Tier 1 platforms (Linux, macOS, and Windows for i686 and x86_64). You can check the GitHub projects page for more information.

License

Licensed under either of Apache License 2.0 or MIT license at your option.

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this crate by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Donations

If you appreciate my work and want to support me or speed up the project development, you can do it here or support this project at Open Collective.

Contributors

Code Contributors

This project exists thanks to all the people who contribute.

Financial Contributors

Become a financial contributor and help us sustain our community.

Individuals

Organizations

Support this project with your organization. Your logo will show up here with a link to your website.