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

bilderhic

v1.3.2

Published

Bilderhic (bhic) is a smart and simple command tool for automatization.

Downloads

150

Readme

bilderhic

Bilderhic is a smart and simple command tool for automatization.

How does it work?

You have to create a pipe file. Bilderhic will run the commands inside your file. The commands of the pipe file can be Bilderhic commands, or bash / cmd commands. Bilderhic includes usefull commands for edit files.

Installation

npm i -g bilderhic

License

MIT

Third party licenses:

  • https://github.com/microsoft/tslib/blob/main/LICENSE.txt
  • https://github.com/isaacs/node-glob/blob/main/LICENSE
  • https://github.com/eemeli/yaml/blob/master/LICENSE
  • https://github.com/ReactiveX/rxjs/blob/master/LICENSE.txt

Usage

bhic <file> [-vb or --verbose] [-d or --debug]

or

bhic [-vb or --verbose] [-d or --debug] [-c or --command] <single line command>

~ Bilderhic Commands ~

> env command

Description

It allows you to create / load / edit environment variables (inside your process).

Usage

Set variable manually

env set <key> <value>

Set variable value (if the variable doesn't exists)

env set-default <key> <value>

Set variable from user input

env prompt <key> -m <message>

Adds a value to a numeric variable

env add <key> <value>

Load variables

env load <file.yml>

File.yml example

app:
    id: com.brand.app
    version: 2
    description: This is an awesome Android Application.
    name: Awesomapp

Usage of environment variables

env load File.yml

:open config.xml
    - set widget.id=[app.id]
    - set widget.android-versionCode=[app.version]
    - set widget.version=0.0.[app.version]
    - set widget>name=[app.name]
    - set widget>description=[app.description]
    - save
    - close

Clear your environment

env clear

Change the debug mode

env debug <enable or disable>

> copy command

Description

Copies a file or a folder. Override the files if it exists.

Usage
copy <from> <to> [-i or --ignore <file or folder>] [-q or --quiet] [-e or --ignore-errors]

> sync command

Description

Synchronizes (mirror mode) two folders. Only writes the diferrences between the folders.

Usage
sync <source> <destination> [-i or --ignore <file or folder or wildcard>] [-q or --quiet] [-nd or --disable-delete]

> del command

Description

Deletes a file o a folder (recursively) if exists.

Usage
del <file or folder>

> cd command

DOC

Usage
cd
cd <folder>
cd --clear
cd --back

> log command

Writes a text to the configured loggers.

log [info | warn | debug | error | success] <text to log>

> mkdir command

DOC

> ren command

Renames a file o a folder.

Usage
ren <file or folder> <newName> [--skip-unexisting or -sk] [--overwrite or -o]

> base64 command

Description

Parses a base-64 string.

Usage
base64 <text>
or
base64 <text> > <filename>
or
base64 <text> >> <environment variable>
Example
base64 YmlsZGVyaGlj > mistery.txt

> cat command

Description

Reads a file and prints its content.

Usage
cat <filename>
or
cat <filename> > <filename>
or
cat <filename> >> <environment variable>
Example
base64 YmlsZGVyaGlj > mistery.txt

> run command

Description

Renames a file or a folder.

Usage
ren <origin> <target> [--overwrite or -w]

> exit command

Description

Stops the pipe or the process.

Usage
exit [pipe]
or
exit [<exit code>]

> sleep command

Description

Waits until timer ends.

Usage
sleep <time (ms)>

> beep command

Description

Makes a console beep sound.

Usage
beep [times] [delay between beeps]
Examples
echo Beep!
beep
echo Beep! Beep!
beep 2
echo Beep! ... Beep! ... Beep!
beep 3 1000

~ Special Commands ~

Pipe

Open a new pipe from a file

:pipe <file>

Pipe line

Open a new pipe from a line of code

:pipeline <code>

Each

Open a new pipe from a list of folders or files

:each folder [recursive] [async [limit x]] [filter]
:each file [recursive] [filter]

Example 1

:each folder
:begin
  echo [$currentFolder]
:end

Example 2

:each folder recursive
:begin
  echo [$currentFolder]
:end

Example 3

:each folder recursive **/node_*
:begin
  echo [$currentFolder]
:end

Example 4

:each folder **/node_*
:begin
  echo [$currentFolder]
:end

Example 5

:each folder async
:begin
  echo [$currentFolder]
:end

Example 6

:each folder async limit 5
:begin
  echo [$currentFolder]
:end

Logger

Adds a logger instance.

:logger add <logger type> [logger name]

Logger types:

  • File

Example:

:logger add file
- set file logs.txt

log Hello word!

Open

Open a file editor

:open <file> [force a file format]

Example 1: Open a JSON file.

:open settings.json
- close 

Example 2: Open a JSON file as a Text file.

:open settings.json txt
- close 

Eval

Run javacript code and saves the result to $eval (environment variable).

:eval <code>

Example:

:eval +(new Date())
echo [$eval]

If

If condition

:if <conditions>
:if <conditions>
:begin
    <instructions here>
:end

Await

Wait for all async commands to finish.

:await

If you want to start an async command, you need to start it with a ~ character.

Example:

run echo This is a sync command
~run echo This is an async command
:await

Bhic / Bilderhic

It does nothing. It's useful for ensure that you are running a file on Bilderhic.

!bhic
or
!bilderhic

File edition

Text editors: TXT Object editors: XML, HTML, JSON

~ Text editors ~

- append <text>
- set <line number> <text>
- replace <text> <replacement text>
- replaceone <text> <replacement text>
- replace:raw <text> <replacement text>
- replaceone:raw <text> <replacement text>
- save
- close

~ Object editors ~

- add <key>=<value>
- set <selector> = <value or variable>
- get <selector> > <variableName>
- save
- close

Examples

bhic pipe.txt bhic -c echo Hi world! bhic pipe.txt --set myVariable=myCustomValue

Misc

Multiple line command

bhic -c echo Running :eol: sleep 5000 :eol: beep :eol: echo Run finished

Timestamp

bhic -c echo My timestamp is [timestamp]

Date

bhic -c echo Today is [date]

Date (custom format)

bhic -c echo Today is [date:YYYY-MM-DD]

Time

bhic -c echo The current time is [hour]

Time (custom format)

bhic -c echo The current time is [hour:HH.MM]