image-helper-wordpress/README.md

30 lines
1.4 KiB
Markdown
Raw Normal View History

2024-11-18 23:00:44 +01:00
# Description
I wanted to write a tool in Rust which takes an Image as command line argument and then sends this image to ChatGPT to generate an image description. Once it has received the image description it uploads the image to a WordPress media library as new image. After the upload it will add the image description received via ChatGPT as the ALT text and description of the uploaded image in the WordPress media library.
The script will take the URL of the Wordpress site, the username and application password for Wordpress as well as the OpenAPI URL, ChatGPT model and OpenAPI API key as configuration parameters from a `.env` file.
# preparation
Install Rust on your machine. Copy the `.env.example` to `.env`
2024-11-18 23:16:34 +01:00
# testing
2024-11-18 23:00:44 +01:00
`cargo run -- /path/to/your/image.jpg`
# compilation
`cargo build --release`
will build the binary in `./target/release/image-helper-wordpress`
2024-11-18 23:16:34 +01:00
# running
```
$image-helper-wordpress: ./target/release/image-helper-wordpress /Users/username/Pictures/DJI_0247.jpg
Generated description: Aerial view of a circular lake surrounded by dense forest, with a small cluster of houses lining one edge. A second smaller lake is visible in the background, also encircled by forest.
Successfully uploaded image to WordPress with description
Image URL: https://example.wordpress.com/wp-content/uploads/2024/11/DJI_0247-scaled.jpg
```
2024-11-18 23:44:28 +01:00
Hint: make sure that the `.env` file is located in $PWD when calling the program