Process images using workflow.
Imageflow is a Raycast extension for processing images with custom pipelines, you can organize operations such as resizing, uploading, and compressing into a pipeline to process images in your own way.
This extension still in development and does not submit to Raycast Extension yet, you can clone this repo and install it locally.
- 🌰 Resize And Compress Image by sharp
- 🐝 Convert Image Format by sharp
- 📦 Overwrite Original images
- 🚀 Upload Image To S3
- 🌈 Upload Image To Cloudflare R2 Storage
- 🍮 Copy Image To Clipboard
- 🐼 Convert Image To Markdown format
- 🍉 Rename Image with uuid or date or something else
- 🍅 Customize any workflow—choose whatever you want
imageflow.mp4
Note
You can quickly get the sample configuration file by running the following command in your terminal.
curl https://raw.githubusercontent.com/godruoyi/imageflow/master/workflow.yaml | tee ~/workflow.yaml
| Action | Description | Input | Output | Params |
|---|---|---|---|---|
| resize | Resize and compress image via sharp | filepath or url | filepath | width: number height: number type: string See request option |
| compress | Compress image via sharp (only compress) | filepath or url | filepath or url | output_type?: file or url |
| convert | Convert image format via sharp | filepath or url | filepath | format: string, available formats: jpeg, png, webp, avif |
| overwrite | Overwrite original images | filepath | filepath | - |
| upload | Upload image to S3 or Cloudflare R2 Storage | filepath | url | bucket: string root?: string cdn?: string |
| clipboard | Copy image to clipboard | filepath or url | Input | - |
| tomarkdown | Convert image to markdown format | filepath or url | markdown | - |
| rename | Rename image with uuid or date or something | filepath | filepath | to: string available variable name "{uuid}", "{timestamp}", "{yyyy}", "{yyyy_mm}", "{yyyy_mm_dd}" |
coming soon...
Clone this repo and install it locally in developer mode.
You will need to have Node.js and npm installed.
- Clone this repo
git clone https://github.com/godruoyi/imageflow.git - Go to the folder
cd imageflow - Install dependencies
npm install && npm run build - Go to Raycast, run
Import Extensionand select the folder
- Introduction of sharp to process images locally 🤔
- OpenDAL 🤔
- Support more image processing actions like:
- Watermark 🤔
- Move to folder
- Upload to other cloud storage like Google Cloud Storage, Aliyun OSS, etc. But it's better to use OpenDAL to support if possible.
MIT License