[![Documentation Status](https://readthedocs.org/projects/onebone/badge/?version=latest)](https://onebone.readthedocs.io/?badge=latest)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black) [![All Contributors](https://img.shields.io/badge/all_contributors-9-orange.svg?style=flat-square)](#contributors-)
# Summary
`onebone` is an open-source software for signal analysis about predictive maintenance, being used for research activities at [ⓒ ONEPREDICT Corp.](https://onepredict.ai/). It includes modules for preprocessing, health feature, and more. If you need to analyze signals for industrial equipments like turbines, a rotary machinery or componets like gears, bearings, give onebone a try!
The directory is as follows:
```text
.
├── docs
├── onebone
│ ├── feature
│ ├── math
│ ├── preprocessing
│ ├── signal
│ └── utils
├── tests
├── tools
├── README.md
├── Makefile
└── pyproject.toml
```
## Documentation
This reference manual details functions included in onebone, describing what they are and what they do. For learning how to use onebone, see the complete [documentation](https://onebone.readthedocs.io/en/latest/).
# Contributors ✨
Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/docs/en/emoji-key)):
This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!
# Getting started
## Prerequisite
onebone requires Python 3.8+.
## Installation
onebone can be installed via pip from [PyPI](https://pypi.org/project/onebone/)
```bash
$ pip install onebone
```
It can be checked as follows whether the onebone has been installed.
```python
>>> import onebone
>>> onebone.__version__
```
## Usage
It assumes that the user has already installed the onebone package.
You can import directly the function, for example:
```python
>>> from onebone.feature import tacho_to_rpm
```
# Call for contribute
We appreciate and welcome contributions. Small improvements or fixes are always appreciated; issues labeled as "good first issue" may be a good starting point.
Writing code isn't the only way to contribute to onebone. You can also:
- triage issues
- review pull requests
- help with outreach and onboard new contributors
If you're unsure where to start or how your skills fit in, reach out! You can ask here, on GitHub, by leaving a comment on a relevant issue that is already open.
If you want to use an code for signal analysis, but it's not in onebone, make a issue.
Please follow [this guide](https://github.com/Onepredict/onebone/blob/main/wiki/development_guide.md) to contribute to onebone.
If you are new to contributing to open source, [this guide](https://opensource.guide/how-to-contribute/) helps explain why, what, and how to get involved.
# References
- [Numpy](https://numpy.org/)
- [Scipy](https://scipy.org/)
- [Matlab](https://www.mathworks.com/help/index.html?s_tid=CRUX_lftnav)