kemal Kemal

Lightning Fast, Super Simple web framework written in Crystal programming language.
Inspired by Sinatra.

Start Now!

Super Simple

require "kemal"

# Matches GET "http://host:port/"
get "/" do
  "Hello World!"

# Creates a WebSocket handler.
# Matches "ws://host:port/socket"
ws "/socket" do |socket|
  socket.send "Hello from Kemal!"


  • Support all REST verbs
  • Websocket support
  • Request/Response context, easy parameter handling
  • Built-in and easily extensible middlewares
  • Built-in JSON support
  • Built-in static file serving
  • Built-in view templating via ECR


Numbers speak louder than words.

Framework Request Per Second Avg. Response Time
Kemal (Production) 100238 0.395ms
Sinatra (Thin) 2274 43.82ms

These results were achieved with wrk on a Macbook Pro Late 2013. (2Ghz i7 8GB Ram OS X Yosemite)