Welcome to NutShell’s documentation!¶
NutShell is software for generating “file products”: image, data and text files. NutShell suits to generation of real time products as well as to regenerating products on-demand from archived data.
The product generation scheme resembles that of make
and
Makefile
: if a product needs inputs, they are generated first, recursively.
The applied product generators are organized systematically in a directory tree.
Each product has an ID of type my.good.product
that is associated with
path component my/good/product/
. Hence, a product generator can be
tracked to – and also identified with – a unique
subdirectory, which also contains a generator script with a fixed
name (generate.sh
).
Typically, command line invocations of programs have a form like:
command -i <input-file> -p <parameter> -o <output-file>
Essentially, a generator script is a wrapper for such commands.
Upon product request, NutShell finds and executes a respective product generator script,
communicating parameters – file paths and product parameters among others – as environment variables
to the script. This is the “amount of interface” a script is required to handle.
In addition, the product generator can query its desired inputs from NutShell using input
declaration script (input.sh
).
Otherwise product generators can be designed independently from NutShell. For example, no libraries or
other dependencies beyond production itself are required.
NutShell provides a platform for collecting programming efforts of developers and researchers using different languages and interfaces. It has been originally developed for generating weather radar products [Peura2008], but suits to product computation more generally.
- Installation: GitHub
Indices and tables¶
References¶
[Peura2008] | Markus Peura, On-demand processing architecture for radar image products, Proceedings of the fifth European Conference on Radar in Meteorology and Hydrology (ERAD2008), Helsinki, Finland, Finnish Meteorological Institute, June 2008 |