Skip to content

An open-source handbook of applied guidance and tools for sustainable software development and maintenance.

License

Notifications You must be signed in to change notification settings

software-gardening/almanack

The Software Gardening Almanack

PyPI - Version Build Status Coverage Status

The Software Gardening Almanack is an open-source handbook of applied guidance and tools for sustainable software development and maintenance. The Almanack is available both as a handbook and a Python package.

Handbook

Package

You can install the Almanack with the following:

# install from pypi
pip install almanack

# install directly from source
pip install git+https://github.com/software-gardening/almanack.git

Once installed, the Almanack can be used to analyze repositories for sustainable development practices. Output from the Almanack includes metrics which are defined through metrics.yml as a Python dictionary (JSON-compatible) record structure.

For example:

import almanack
import pandas as pd

# gather the almanack table using the almanack repo as a reference
almanack_table = almanack.metrics.data.get_table("path/to/repository")

# show the almanack table as a Pandas DataFrame
pd.DataFrame(almanack_table)

Alternatively, you can use the Almanack package as a command-line interface (CLI):

almanack path/to/repository

Contributing

Please see our CONTRIBUTING.md document for more information on how to contribute to this project.

Acknowledgements

This work was supported by the Better Scientific Software Fellowship Program, a collaborative effort of the U.S. Department of Energy (DOE), Office of Advanced Scientific Research via ANL under Contract DE-AC02-06CH11357 and the National Nuclear Security Administration Advanced Simulation and Computing Program via LLNL under Contract DE-AC52-07NA27344; and by the National Science Foundation (NSF) via SHI under Grant No. 2327079.

About

An open-source handbook of applied guidance and tools for sustainable software development and maintenance.

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages