Prairie was created in 2018 as an experiment and is no longer being developed. For a proper Python-friendly workflow manager, have a look at orchest (visual), or general options like Apache workflow and snakemake
Prairie is a visual programming environment aimed at scientists and engineers. It's an experiment that tries to provide a natural and intuitive interface for visualizing and interacting with complex data processing pipelines developed in Python.
Prairie is neither meant to replace traditional IDEs nor develop pipelines from scratch. Instead, it is designed as a functional tool that goes on top of your libraries, class, functions and complement your pipelines with rich and extendable interactive widgets.
Main features include:
- Dragging and dropping your existing class/functions directly from your python files
- Using interactive widgets to interact with your data :
- and much more (Prairie would provide an API to create custom blocks - not included in the current version) ...
note: Libraries extension features are not included in the current git version
Prairie would come with out-of-the-box block libraries that can be extended with custom and community-made libraries and blocks. Libraries could be installed like python packages:
pip install prairie-<library-name>
# or
pipenv install prairie-<library-name>
and then become available on the interface, loaded with your python interpreter (pipenv/ virtualenv are advised).
See the features list and the prairie blocks icons files to learn more about default blocks included when installing Prairie
some Prairie block icons
Prairie provides notebook-like functionalities (see Jupyter lab) in a functional block-diagram interface. As it is, Prairie does not bring unique enough features compared to Jupyter notebooks - developer opinion - which is the main reason why its development has been stopped. Nonetheless, it is a good starting point for anyone that would like to develop such an interface for a specific use (e.g. similar to LabView, Simulink or any block-diagram GUI). Contact, through github issues or mail, is open for any kind of initiative or support.