A Nim client library for beanstalkd work queues.
Nim Shell
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
doc
examples
gfx
.gitignore
LICENSE
README.md
TODO.md
Vagrantfile
beanstalkd.nim
beanstalkd.nimble
compile
gendoc
test

README.md

beanstalkd.nim logo

This is a Nim client library to connect to and use beanstalkd.

Status: Beta, ready for experimental usage, may not be production ready.

Installation

Join the chat at https://gitter.im/tormaroe/beanstalkd.nim

Install this library using the nimble package manager:

nimble install beanstalkd

Usage

beanstalkd.nim maps pretty closely to the beanstalkd protocol. For complete module documentation, see tormaroe.github.io/beanstalkd.nim.

import beanstalkd

let client = beanstalkd.open("127.0.0.1")
discard client.put("hello world")

let job = client.reserve
echo job
 #==> (success: true, status: reserved, id: 42, job: hello world)

let result = client.delete(job.id)
echo result
 #==> (success: true, status: deleted)

Development

This project uses vagrant to bootstrap the development environment. To get started:

$ git clone https://github.com/tormaroe/beanstalkd.nim
$ cd beanstalkd.nim
$ vagrant up
$ vagrant ssh
$ cd /vagrant

Now to build and run all the examples, do:

$ ./test

Executables are located in /vagrant/build. To only compile the beanstalkd module, do:

$ ./compile

To re-generate module documentation, run:

$ ./gendoc

TODO: How to prepare new release...