node-image-storage
v1.0.4
Published
Modules for CRUD operation with images
Downloads
14
Maintainers
Readme
NodeImageStorage
node-image-storage
is an easy-to-use Node.js module for managing image uploads, deletions, and updates via an external API.
Description of node-image-storage Package
Purpose
The node-image-storage package is designed for convenient management of images by providing functionality for uploading, deleting, and updating files through an external API. It simplifies the process of integrating image handling capabilities into your Node.js application.
Features
Image Upload:
Checks file type before uploading. Converts all images to webp format (except SVG, which are kept in their original format). Assigns unique names to all uploaded files. Uploads files to an external server using an API key for authentication.
Get Images:
Retrieves images by their names.
Delete Images:
Deletes files from the external server using an API key.
Update Images:
Updates existing image files by deleting the old file and uploading a new one.
Example Usage
const ImageStorage = require('node-image-storage');
// Initialize with API parameters
ImageStorage.option({
api_url: 'https://your-api-url.com/uploads',
api_key: 'your-api-key'
});
// Upload an image
ImageStorage.uploadImage(file).then(response => {
console.log(response);
});
// Delete an image
ImageStorage.deleteImage('image-name.webp').then(response => {
console.log(response);
});
// Update an image
ImageStorage.updateImage({
update_fileName: 'old-image-name.webp',
file: newFile
}).then(response => {
console.log(response);
});
Setting Up the Image Storage Server
Clone the repository
git clone https://github.com/Subm1s/image-storage-server
Install dependencies
npm install
Create a
.env
file in the root of the project and add the following environment variables:PORT=5000 API_KEY=your-api-key
Run the server:
npm start
The server will start on the specified port (e.g., http://localhost:5000).
Installation
Install the NodeImageStorage
package using npm:
npm install node-image-storage
Usage
const ImageStorage = require('node-image-storage')
Before using the module, configure it with your API_URL and API_KEY
ImageStorage.option({
api_url: 'http://localhost:5000/uploads',
api_key: 'your-api-key',
})
api_url
and api_key
must be a string
Uploading an Image
async ImageStorage.uploadImage(file)
The file
must be an OBJECT.
Return data:
return { success, image_name, message };
success
= Boolean
image_name
= String
message
= String
Deleting an Image
async ImageStorage.deleteImage(fileName)
The fileName
must be an STRING.
Return data:
return { success, message };
success
= Boolean
message
= String
Updating an Image
const updateDetails = {
update_fileName: fileName,
file: file,
}
async ImageStorage.updateImage(updateDetails)
The fileName
must be an STRING.
The file
must be an OBJECT.
Return data:
return { success, image_name, message };
success
= Boolean
image_name
= String
message
= String