zeromq

Version, currently master branch1 version
  • master branchlatestSep 18, 2023

github.com/crystal-community/zeromq-crystal

No description declared in shard.yml.

51 stars
1 dependent
License: MIT

Installation

# Add this to your shard.yml
dependencies:
  zeromq:
    github: crystal-community/zeromq-crystal
    branch: master

master is a branch, not a release, so this tracks it rather than pinning a version.

Then run:

shards install

shard.yml

Crystal
no constraint declared
License
MIT
Authors
Benoist Claassen <benoist.claassen@gmail.com>, digitalextremist <code@extremist.digital>

Dependencies

This version declares no dependencies.

README

# zeromq

[![Build status](https://travis-ci.org/benoist/zeromq-crystal.png?branch=master)](https://travis-ci.org/crystal-community/zeromq-crystal)

Bindings for ZeroMQ (http://zero.mq)
Ported from (https://github.com/chuckremes/ffi-rzmq-core) Thank you @chuckremes

## Installation

Add this to your application's `shard.yml`:

```yaml
dependencies:
  zeromq:
    github: crystal-community/zeromq-crystal
```


## Usage


```crystal
require "zeromq"
```

```crystal

# Simple server
context = ZMQ::Context.new
server = context.socket(ZMQ::REP)
server.bind("tcp://127.0.0.1:5555")

loop do
    puts server.receive_string
    server.send_string("Got it")
end

# Simple client
context = ZMQ::Context.new
client = context.socket(ZMQ::REQ)
client.connect("tcp://127.0.0.1:5555")

client.send_string("Fetch")
puts client.receive_string
```

## TODO

- [ ] Add more tests
- [ ] Add more examples

## Contributing

1. Fork it ( https://github.com/benoist/zeromq-crystal/fork )
2. Create your feature branch (git checkout -b my-new-feature)
3. Commit your changes (git commit -am 'Add some feature')
4. Push to the branch (git push origin my-new-feature)
5. Create a new Pull Request

## Contributors

- [Benoist](https://github.com/benoist) Benoist Claassen - creator, maintainer
- [Hristo Kochev](https://github.com/k-solutions) Hristo Kochev