imgsquash

Código de sitio web completo de compresión de imagen simple escrito en el nodo, reaccionar y next.js framework. Fácil de implementar como un microservicio.

ESUMEN

Compresión de la imagen de pila completa del sitio web. Contiene tanto el servicio de api como el frontend escritos en node, reaccion y next.js framework.

Capturas de pantalla

pantalla uno pantalla dos pantalla tres

CONFIGURACIÓN DEL ALMACENAMIENTO DE GOOGLE CLOUD

  1. Cree un proyecto en Google Cloud y agregue un depósito de almacenamiento en la nube gratuito a través de esta guía de inicio rápido:
  2. Autentíquese usando la gcloudherramienta de línea de comandos ( descargue aquí ) o configure la GOOGLE_APPLICATION_CREDENTIALSvariable env con el archivo de cuenta de servicio.

INICIANDO EL SERVICIO API

  1. Cree el .envarchivo en la raíz de la carpeta con las siguientes variables. Ver dotenv sobre cómo agregar variables env.
    • API_VERSION : 1(opcional).
    • GC_STORAGE :your-google-cloud-bucket-name
    • DL_BASE_URL :[YOUR-API-URL]/1/dl
  2. Hacer npm installpara instalar todos los módulos de nodo para api.
  3. Hacer npm run devpara iniciar el servidor dev en el 3000puerto.
  4. Hacer npm startpara la producción

A PARTIR DEL FRONTEND

  1. Hacer npm installpara instalar todos los módulos de nodo para frontend.
  2. Do npm run deviniciará el servidor webpack en el 3001puerto.
  3. Hacer npm run buildnpm startconstruir y utilizar el código en producción.

NOTAS

  1. Los siguientes programas se utilizan para la optimización.
    • mozjpeg (compresión jpeg con pérdida)
    • jpegtran (compresión jpeg sin pérdida)
    • pngquant (compresión png con pérdida)
    • optipng (compresión png sin pérdida)
  2. El límite de carga del tamaño del archivo actual es de 10MB.
  3. Rutas API. [ENVIAR]
    • /image: subir imágenes a través de un archivo, URL, base64 o binario.
      • archivo: filebase64binary.
      • con pérdidas: Boolean(por defecto: falso)
    • /url: URL de compresión directa de imagen.
      • url: url válida de la imagen.
    • /zip: Acepta la lista de objetos de archivo como una matriz con ( idsizename) y envía el resultado comprimido.
      • archivos: lista de archivos objeto como una matriz.
    [GET] - /dl/:id: Genera la URL de descarga de la imagen comprimida. Aceptar consulta opcional name.

LICENCIA


MIT

Comentarios