@mochabug/adaptkit
Version:
A cmd to create, emulate and publish Mochabug Adapt plugins
83 lines (51 loc) • 3.75 kB
Markdown
# @mochabug/adaptkit : The Magical CLI for Mochabug Adapt Plugin Development!
Welcome to **@mochabug/adaptkit**! Prepare to embark on a whimsical adventure filled with creativity and efficiency! @mochabug/adaptkit is a powerful CLI tool designed to help you *effortlessly* develop and manage plugins for the Mochabug Adapt platform. With @mochabug/adaptkit, you can:
- 🌈 Create enchanting template projects for plugin development
- 🧙♂️ Emulate your plugins in a cloud environment with just a flick of your wand
- 🧚 Add and modify vertices to your plugin project with ease
- 🌟 Automagically handle tedious tasks that often bog down software development
## Magical Vertices: Your Plugin Building Blocks 🔮
Vertices, also known as tasks, are the building blocks of your plugins. Each plugin consists of one or more vertices. A vertex in @mochabug/adaptkit consists of two parts: an Executor and an optional Configurator.
- **Executor**: A mandatory part that performs tasks. It can have different types:
- **Action**: Performs tasks without interacting with external systems
- **Cron Trigger**: Triggers actions at specified intervals, like clockwork
- **External Trigger**: Activates tasks from an external endpoint, bringing the magic to the outside world
- **Browser**: Runs tasks within a browser, where requests end up on the external endpoint
- **Configurator**: An optional part that customizes the behavior of the executor. Configurators interact with users on the Mochabug Adapt platform, making them "external" by nature.
## Getting Started 🚀
To start your magical journey with @mochabug/adaptkit, install the package using the following incantation:
```bash
npm install -g @mochabug/adaptkit
```
## Usage 🪄
With @mochabug/adaptkit installed, you can now wield your newfound powers to develop and manage your plugin projects! Here's a guide to help you harness the magic:
1. **Create a template project for plugin development**
```bash
adaptkit --init
```
This command generates a `manifest.json` file, Executor and Configurator templates, and .cue schema files with information about your plugin.
2. **Emulate your plugins in the cloud environment**
```bash
adaptkit --emulate
```
Test your plugin's sorcery in a controlled environment by emulating its behavior in the cloud.
In order to do this you need to have docker installed and run the emulator locally using the following command:
```bash
docker run --rm -it -p 51001:51001 -p 51002:51002 -p 51003:51003 -p 51004:51004 -p 51005:51005 mochabug/adaptsandbox:latest
```
Note: The 5 ports is required to simulate the different vertex types as well as the graphical interface together with the publish endpoint of adaptkit.
1. **Add and modify vertices**
```bash
adaptkit --add-vertex [vertexType] [vertexName]
```
Easily add or modify vertices to your plugin project by specifying the vertex type and name.
4. **Publish your plugin to the Mochabug Adapt platform**
```bash
adaptkit --publish
```
Share your magical creation with the world by publishing your plugin to the Mochabug Adapt platform.
## Documentation 📚
For a more comprehensive spellbook on how to use @mochabug/adaptkit and unlock the full potential of our captivating plugin system for Mochabug Adapt, visit our [documentation](https://developers.mochabug.com).
## Contribute 🤝
@mochabug/adaptkit s is a community-driven, open-source project, and we warmly welcome your contributions! If you have an idea for a new type, a bug report, or would like to help with documentation, please [open an issue](https://github.com/mochabug/mochabug/issues) or [submit a pull request](https://github.com/mochabug/mochabug/pulls).
## A Magical Journey Awaits! 🍄