Go Filter is a CLI-tool to transform an image to any filter such a grey-scale, inverted colors etc
# Clone the repository
git clone https://github.com/OrlandoRomo/go-filter.git
# Change directory to go-filter
cd go-filter
# Install dependencies
go mod tidy
# Build project
cd cmd/go-filter && go build .
Move the binary in your local environment
- Linux/Mac:
sudo mv go-filter /usr/local/bin
To use go-filter
open a new terminal in your current operative system and type go-filter
and enter.
The go-filter
tool integrates the following commands and subcommands
filter
: filter will apply the given filter namefilter
's flags- --output: Path where the final result will be created. By default is the user directory.
filter
's subcommands:-
list
: displays all available filter names- args: path of the image as a input
-
gray
: applies the gray scale effect- args: path of the image as a input
-
negative
: applies the negative scale effect- args: path of the image as a input
-
red
: applies the red scale effect- args: path of the image as a input
-
blue
: applies the blue scale effect- args: path of the image as a input
-
green
: applies the green scale effect- args: path of the image as a input
-
mirror
: applies the mirror effect- args: path of the image as a input
-
sepia
: applies the sepia effect- args: path of the image as a input
-
sketch
: applies the sketch effect- args: path of the image as a input
-
- Refactor the whole CLI using interfaces
- Some filters are taking a little bit of time. Need to apply go's concurrency
- Add more filters
- Fix some bugs in
blur
effect