Skip to content

FAST-HEP/fasthep-carpenter

Repository files navigation

fasthep-carpenter

Actions Status Documentation Status

PyPI version PyPI platforms

GitHub Discussion

fasthep

Introduction

Note

fasthep-carpenter is still in early development, which means it is incomplete and the API is not yet stable. Please report any issues you find on the GitHub issue tracker.

fasthep-carpenter is a Python package that provides a set of components for building data processing pipelines. It is designed to work with the fasthep-flow library, which provides a framework for declaring and creating data processing workflows. Historically, fasthep-carpenter was limited to ROOT Trees as input and Pandas DataFrames as output. However, it has now been extended to support many data formats.

Documentation

his project is in early development. The documentation is available at fasthep-carpenter.readthedocs.io and contains mostly fictional features. The most useful information can be found in the FAST-HEP documentation. It describes the current status and plans for the FAST-HEP projects, including fasthep-carpenter (see Developer's Corner).

Installation

You can install fasthep-carpenter using pip:

pip install fasthep-carpenter[io-root, io-parquet, workflow-extras, plotting]

Contributing

You had a look and are interested to contribute? That's great! There are three main ways to contribute to this project:

  1. Head to the issues tab and see if there is anything you can help with.
  2. If you have a new feature in mind, please open an issue first to discuss it. This way we can ensure that your work is not in vain.
  3. You can also help by improving the documentation or fixing typos.

Once you have something to work on, you can have a look at the contributing guidelines. It contains recommendations for setting up your development environment, testing, and more (compiled by the Scientific Python Community).

Important

How you customise your development environment is up to you. You like uv? Be our guest. You prefer nox? That's fine too. You want to use ? Go ahead. We are happy as long as you are happy. Ideally you should be able to run pylint, pytest, and the pre-commit hooks. If you can do that, you are good to go.

License

This project is licensed under the terms of the Apache 2.0 license. See LICENSE for more details.

Acknowledgements

Special thanks to the gracious help of FAST-HEP contributors:

kreczko
Luke Kreczko

Previous iterations of this software

This software is a continuation of the work done in the fasthep-carpenter and fast-carpenter repositories. The original code was developed by Ben Krikler and has been adapted and improved by various collaborators. The new version of the software is designed to be more flexible and extensible, allowing users to easily create custom data processing pipelines.

Part of the development of this software was funded by the IRIS Digital Assets grant.

About

Helping turn your trees into tables (ie. reads ROOT TTrees, writes summary Pandas DataFrames)

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages