Skip to content

Latest commit

 

History

History
48 lines (38 loc) · 1.7 KB

File metadata and controls

48 lines (38 loc) · 1.7 KB

Getting Started

This repository hosts three public crates: xfetch-plugin-api (plugins), xfetch-extension-api (extensions), and xfetch-effect-api (effects).

Git Dependency

[dependencies]
serde = { version = "1", features = ["derive"] }
xfetch-plugin-api = { git = "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/xfetch-cli/api", package = "xfetch-plugin-api" }
xfetch-extension-api = { git = "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/xfetch-cli/api", package = "xfetch-extension-api" }
xfetch-effect-api = { git = "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/xfetch-cli/api", package = "xfetch-effect-api" }

Local Development

During multi-repo development, you can use a standard Cargo path dependency instead.

[dependencies]
serde = { version = "1", features = ["derive"] }
xfetch-plugin-api = { path = "../api/crates/plugin-api" }
xfetch-extension-api = { path = "../api/crates/extension-api" }
xfetch-effect-api = { path = "../api/crates/effect-api" }

Runtime Model

Plugins, extensions and effects are standalone executables. The core writes one JSON request to stdin, the program reads it, and writes one JSON response to stdout.

Next Step