mariano zunino

Crapis

Source

Crapis

Overview

Crapis is a Go-based project that implements the RESP (REdis Serialization Protocol). RESP is a binary-safe protocol used by Redis for client-server communication, and this project provides a structure for both reading and writing RESP-encoded data, as well as handling basic Redis commands.

Motivation

Crapis was created as a learning project to understand and implement the Redis Serialization Protocol (RESP) from scratch. The project is based on a tutorial, "Build Redis from Scratch," which guided the development of this RESP implementation. By working on this project, the goal was to deepen the understanding of how Redis handles communication and to explore the internal workings of RESP, while also implementing basic Redis functionality.

Solution

Crapis implements the fundamental components of RESP, including the ability to parse and encode different RESP data types such as:

The project also includes:

These features make Crapis a robust starting point for building applications that need to communicate using the RESP protocol or for creating simplified Redis-like servers.

Key Features