Hi Crystallizers,
My name is Chetan Mittal, and I have been a Ruby and Rails developer since 2005. Just a few days back I started gaining interest in Crsytal Lang after I started using LavinMQ message broker.
While learning how to program in Crystal I found out that it lacked an easy tool like Bundler is to Ruby, and Cargo is to Rust. So I started developing Meld.
Currently, it still a work in progress, but you can:-
$ crystal run src/meld.cr -- help
Meld - Crystal Lang Package Manager
Usage:
meld [options] <command> [command options]
Commands:
init Initialize project (shard.yml)
add <shard> [-v|-b|-t|-c] [--dev] Add a shard (pin with version/branch/tag/commit)
remove <shard> Remove a shard from shard.yml and lib/
search <query> Search for available shards
install Install dependencies
update [shard] Update all or a specific shard
exec <cmd> Run a command in project context
binstubs <shard> Generate executable wrappers
global install <shard> [...] Build and install shard executables globally
help [command] Show help (global or for a command)
Options:
-v, --version Show version
-h, --help Show help
The basic features like meld add <shard_name>, remove, install, etc work except a few such as creating binstubs. Also, it can build and install a package such as LavinMQ globally without using make.
Give it a go or contribute here - https://github.com/cmittal790/meld
Regards, Chetan.