diff --git a/README.md b/README.md index 7a21c62..b3144cf 100644 --- a/README.md +++ b/README.md @@ -1,75 +1,101 @@ -# echoflow +## Echoflow: Streamlined Data Pipeline Orchestration -**NOTE: This project is currently under heavy development, -and has not been tested or deployed on the cloud** +Welcome to **Echoflow**! Echoflow is a powerful data pipeline orchestration tool designed to simplify and enhance the execution of data processing tasks. Leveraging the capabilities of [Prefect 2.0](https://www.prefect.io/) and YAML configuration files, Echoflow caters to the needs of scientific research and data analysis. It provides an efficient way to define, configure, and execute complex data processing workflows. -Sonar conversion pipeline tool with echopype. -This tool allows for users to quickly setup sonar data processing pipelines, -and deploy it locally or on the cloud. It uses [Prefect 2.0](https://www.prefect.io/), -a data workflow orchestration tool to run these flows on various platforms. +Echoflow integrates with **echopype**, a renowned package for sonar data analysis, to provide a versatile solution for researchers, analysts, and engineers. With Echoflow, users can seamlessly process and analyze sonar data using a modular and user-friendly approach. -## Development -To develop the code, simply install the package in a python virtual environment in editable mode. +# Getting Started with Echoflow + +This guide will walk you through the initial steps to set up and run your Echoflow pipelines. + +## 1. Create a Virtual Environment + +To keep your Echoflow environment isolated, it's recommended to create a virtual environment using Conda or Python's built-in `venv` module. Here's an example using Conda: + +```bash +conda create --name echoflow-env +conda activate echoflow-env +``` + +Or, using Python's venv: + +```bash +python -m venv echoflow-env +source echoflow-env/bin/activate # On Windows, use `echoflow-env\Scripts\activate` +``` + +## 2. Clone the Project +Now that you have a virtual environment set up, you can clone the Echoflow project repository to your local machine using the following command: + +```bash +git clone +``` + +## 3. Install the Package +Navigate to the project directory you've just cloned and install the Echoflow package. The -e flag is crucial as it enables editable mode, which is especially helpful during development and testing. Now, take a moment and let the echoflow do its thing while you enjoy your coffee. + +```bash +cd +pip install -e . +``` + +## 4. Echoflow and Prefect Initialization + +To kickstart your journey with Echoflow and Prefect, follow these simple initialization steps: + +### 4.1 Initializing Echoflow +Begin by initializing Echoflow with the following command: ```bash -pip install -e .[all] +echoflow init ``` +This command sets up the groundwork for your Echoflow environment, preparing it for seamless usage. -This will install all of the dependencies that the package need. - -**Check out the [Hake Flow Demo](./notebooks/HakeFlowDemo.ipynb) notebook to get started.** - -## Package structure - -All of the code lives in a directory called [echoflow](./echoflow/). - -Under that directory, there are currently 4 main subdirectory: - -- [settings](./echoflow/settings/): This is where pipeline configurations object models are found, -as well as a home for any package configurations. - - [models](./echoflow/settings/models/): This sub-directory to `settings` contains [pydantic](https://docs.pydantic.dev/) models to validate the configuration file specified by the user. - This can look like below in [YAML](https://yaml.org/) format. - - ```yaml - name: Bell_M._Shimada-SH1707-EK60 - sonar_model: EK60 - raw_regex: (.*)-?D(?P\w{1,8})-T(?P