npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

piclist

v1.9.7

Published

Modified PicGo core, A tool for picture uploading

Downloads

158

Readme

PicList-Core

standard GitHub node

picgo-core

A tool for picture uploading. Both CLI & api supports. It also supports plugin system, please check Awesome-PicGo to find powerful plugins.

Based on Picgo-Core and add more features.

Typora support natively.

New Features

  • Add watermark, compress and convert image format features
    • Set watermark and compress parameters through picgo set buildin watermark and picgo set buildin compress under CLI command
    • Image processing is beforeTransform, which does not conflict with any plugin
  • Add support for advanced rename, you can set the rename rule through picgo set buildin rename under the CLI command
  • Add new built-in picbed: WebDAV, SFTP, Local path
  • Adds support for imgur account uploads
  • Built-in server just like PicList-Desktop server, you can use picgo-server to start the server
  • Fix several bugs of PicGo-Core

Installation

PicList should be installed with node.js >= 16

before install

As PicList depends on sharp, you need to install sharp before install PicList.

npm config set sharp_binary_host "https://npmmirror.com/mirrors/sharp"
npm config set sharp_libvips_binary_host "https://npmmirror.com/mirrors/sharp-libvips"
npm install sharp

Global install

npm install piclist -g

# or

yarn global add piclist

Local install

npm install piclist -D

# or

yarn add piclist -D

Usage

Docker

You can use docker to run PicList-Core.

docker run

Change the ./piclist to your own path, this path is where you put your config.json file, and change the piclist123456 to your own secret key.

docker run -d \
  --name piclist \
  --restart always \
  -p 36677:36677 \
  -v "./piclist:/root/.piclist" \
  kuingsmile/piclist:latest \
  node /usr/local/bin/picgo-server -k piclist123456

docker-compose

download docker-compose.yml from this repo, or copy the following content to docker-compose.yml:

version: '3.3'

services:
  node:
    image: 'kuingsmile/piclist:latest'
    container_name: piclist
    restart: always
    ports:
      - 36677:36677
    volumes:
      - './piclist:/root/.piclist'
    command: node /usr/local/bin/picgo-server -k piclist123456

You can change the ./piclist to your own path, this path is where you put your config.json file, and change the command to your own secret key.

Then run:

docker-compose up -d

Install plugins in docker

You can use docker exec to install plugins in docker.

docker exec -it piclist sh
picgo install picgo-plugin-xxx

Server

You can use picgo-server to start a server, default port is 36677.

Start server:

picgo-server
node ./bin/picgo-server

It's highly recommended to add --key to avoid unauthorized access. Example: picgo-server --key 123456

Show help:

$ picgo-server -h

  Usage: picgo-server [options]

  Options:

    -h, --help          Print this help message
    -c, --config        Set config path
    -p, --port          Set port, default port is 36677
    --host              Set host, default host is 0.0.0.0
    -k, --key           Set secret key to avoid unauthorized access
    -v, --version       Print version number

  Examples:
    picgo-server -c /path/to/config.json
    picgo-server -k 123456
    picgo-server -c /path/to/config.json -k 123456

endpoints

  • /upload?picbed=xxx&key=xxx upload picture, picbed to set pic-bed, key to set secret key
  • /heartbeat heartbeat

Use in CLI

PicList-Core uses SM.MS as the default upload pic-bed.

Show help:

$ picgo -h

  Usage: picgo [options] [command]

  Options:

    -v, --version                 output the version number
    -d, --debug                   debug mode
    -s, --silent                  silent mode
    -c, --config <path>           set config path
    -h, --help                    output usage information

  Commands:

    install|add <plugins...>             install picgo plugin
    uninstall|rm <plugins...>            uninstall picgo plugin
    update <plugins...>                  update picgo plugin
    set|config <module> [name]           configure config of picgo modules
    upload|u [input...]                  upload, go go go
    use [module]                         use modules of picgo
    init [options] <template> [project]  create picgo plugin\'s development templates

Upload a picture from path

picgo upload /xxx/xx/xx.jpg

Upload a picture from clipboard

picture from clipboard will be converted to png

picgo upload

Use in node project

Common JS

const { PicGo } = require('piclist')

ES Module

import { PicGo } from 'piclist'

API usage example

const picgo = new PicGo()

// upload a picture from path
picgo.upload(['/xxx/xxx.jpg'])

// upload a picture from clipboard
picgo.upload()

Documentation

For more details, you can checkout documentation of PicGo-Core.