🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more
Socket
DemoInstallSign in
Socket

fast-image-server

Package Overview
Dependencies
Maintainers
1
Versions
17
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

fast-image-server

Fast Image Server is an npm package that provides image serving functionality with a focus on converting images to webp format, generating thumbnails, and optimizing image delivery. It utilizes Node.js, Express.js, and includes built-in image caching capa

1.0.17
latest
npm
Version published
Weekly downloads
1
Maintainers
1
Weekly downloads
 
Created
Source

Fast Image Server

Fast Image Server is an npm package that provides image serving functionality with a focus on converting images to webp format, generating thumbnails, and optimizing image delivery. It utilizes Node.js, Express.js, and includes built-in image caching capabilities.

Features

  • Converts images to webp format
  • Generates thumbnails in webp format
  • Generates low quality preview images in webp format
  • Built-in image cache based on Node.js
  • Uses Express.js for server functionality
  • Automatically creates necessary directories if they do not exist

Usage

Installation

Install the package via npm:

npm install image-server

Starting the Server

  • Import the startServer function from the package:
const { startServer } = require('fast-image-server')
  • Call the startServer function to start the Fast Image Server:
  startServer({
      sourceDir: "./high-quality-source-images",
      optimizedDir: "./optimized-images",
      thumbsDir: "./optimized-thumb-images",
      previewDir: "./low-quality-preview-images" 
  }, 4000)

The second argument is the port which if not passed, will default to port 80

Routes

The server listens to requests at the path /images/:imageNameWithExtension. For example:

  • GET /images/a.png
    • If a.png does not exist, returns 404
    • If a.png exists, returns its corresponding webp format
  • GET /images/a.webp
    • Returns the webp corresponding to a.png
    • If webp does not exist, checks if a.png or a.jpg exists and then creates webp from that
  • GET /images/a.thumb.webp
    • Returns the thumbnail for a.png
    • Same rules apply for thumbnails
  • GET /images/a.preview.webp
    • Returns the low quality preview for a.png
    • Same rules apply for preview
  • POST /images/generate-versions/a.png
    • Generates preview, thumb and optimized versions of a.png
    • If a.png is non existent, error is triggered.
    • Returns JSON response with success field and error field

Notes

  • Once served, images will be stored in cache for faster delivery in subsequent requests.
  • Fast Image Server is particularly useful for converting images to webp format and improving image delivery speed in real production uses. It eliminates the need for image conversion in the original application, simplifying the development process.

License

This project is licensed under the MIT License - see the LICENSE file for details.

FAQs

Package last updated on 24 Apr 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts