#workflow #echo #input #generate #tasks #structs #representing

echo-library

echo library for parsing the inatruction

5 releases

0.0.6 May 8, 2024
0.0.5 May 6, 2024
0.0.1 Jan 4, 2024

#1568 in Rust patterns

Download history 5/week @ 2024-02-17 4/week @ 2024-02-24 3/week @ 2024-03-09 1/week @ 2024-03-16 14/week @ 2024-03-30 3/week @ 2024-04-06 430/week @ 2024-05-04 29/week @ 2024-05-11

459 downloads per month
Used in composer-cli

Apache-2.0

86KB
2K SLoC

Echo-Library

Overview

The Echo-Library plays a pivotal role for facilitating the compilation of configuration files into WebAssembly (WASM) files. It not only handles the technical intricacies of this process but also establishes a streamlined workflow for the execution of the compiled files. This library is designed to empower developers by providing a cohesive and efficient solution for translating configuration settings into executable WebAssembly code, ensuring a smooth and well-organized development experience.

Key Features

  1. Workflow Management:

    • Define workflows using echo language, a concise and readable domain-specific language.
    • Organize workflows into distinct tasks with clear dependencies.
  2. Code generation:

    • Automatically generate Rust structs representing common inputs for workflow tasks.
    • Incorporate default values and custom data types as needed.
  3. WASM Compilation:

    • Compile workflows into WASM files for efficient execution across various platforms.
    • Customize the build process with options for verbose or quiet output.

Execution Flow

  1. Configuration:

    • Load configuration
    • Define workflows and their associated tasks
  2. Building Workflows:

    • Initiate the build process with the build method.
    • Compile Starlark configuration files.
    • Generate WASM files for each workflow
      • This involves creating temporary directories, copying boilerplate code, writing workflow-specific code, and building the WASM file.

License

Licensed under Apache-2.0

Dependencies

~16–30MB
~461K SLoC