No Description
Salvatore Sanfilippo a4fc699c12
Merge pull request #1083 from simonw/patch-4
13 hours ago
bin Use Make for spell checking. 3 years ago
commands Documents negative count for ZRANGEBYSCORE/LEX LIMIT 1 month ago
topics Small copy tweaks 14 hours ago
utils Module stars updater. 9 months ago
.gems nokogiri is required for remarkdown 3 years ago
.gitignore Typo Fix 4 years ago
.travis.yml Need to escape token. 2 years ago
COPYRIGHT License URL fixed. 4 years ago Add aspell link 3 years ago
Rakefile fix: Parse JSON files for errors 3 years ago
clients.json Clients.json: remove slave term. 5 months ago
commands.json XADD / XREAD constant times are actually not higher than other commands. 3 months ago
makefile Nazy spell checker that does not allow namespacing hopefully disabled. 1 year ago
modules.json Clearly mark non OSI licensed modules. Related to #984. 1 month ago
remarkdown.rb Split on question mark and exclamation mark 6 years ago
tools.json Tools.js: remove slave word. 5 months ago
wordlist Silly wordlist. 1 year ago

Redis documentation


All clients are listed in the clients.json file. Each key in the JSON object represents a single client library. For example:

"Rediska": {

  # A programming language should be specified.
  "language": "PHP",

  # If the project has a website of its own, put it here.
  # Otherwise, lose the "url" key.
  "url": "",

  # A URL pointing to the repository where users can
  # find the code.
  "repository": "",

  # A short, free-text description of the client.
  # Should be objective. The goal is to help users
  # choose the correct client they need.
  "description": "A PHP client",

  # An array of Twitter usernames for the authors
  # and maintainers of the library.
  "authors": ["shumkov"]



Redis commands are described in the commands.json file.

For each command there’s a Markdown file with a complete, human-readable description. We process this Markdown to provide a better experience, so some things to take into account:

  • Inside text, all commands should be written in all caps, in between backticks. For example: INCR.

  • You can use some magic keywords to name common elements in Redis. For example: @multi-bulk-reply. These keywords will get expanded and auto-linked to relevant parts of the documentation.

There should be at least two predefined sections: description and return value. The return value section is marked using the @return keyword:

Returns all keys matching the given pattern.


@multi-bulk-reply: all the keys that matched the pattern.

Styling guidelines

Please use the following formatting rules:

  • Wrap lines to 80 characters.
  • Start every sentence on a new line.

Luckily, this repository comes with an automated Markdown formatter. To only reformat the files you have modified, first stage them using git add (this makes sure that your changes won’t be lost in case of an error), then run the formatter:

$ rake format:cached

The formatter has the following dependencies:

  • Redcarpet
  • Nokogiri
  • The par tool

Installation of the Ruby gems:

gem install redcarpet nokogiri

Installation of par (OSX):

brew install par

Installation of par (Ubuntu):

sudo apt-get install par

Checking your work

You should check your changes using Make:

$ make

This will make sure that JSON and Markdown files compile and that all text files have no typos.

You need to install a few Ruby gems and Aspell to run these checks. The gems are listed in the .gems file. Install them with the following command:

$ gem install $(sed -e 's/ -v /:/' .gems)

The spell checking exceptions should be added to ./wordlist.