No description
Find a file
Denys Vitali 0543142a10 Add RFC7233 support (#299)
Add RFC7233 support a.k.a "Range" headers support
2017-02-04 13:06:43 +03:00
images Handle missing 404 image. Fixes #263 2016-11-25 22:19:23 +03:00
samples Update websocket_server.cr 2016-03-19 15:38:54 +02:00
spec Add RFC7233 support (#299) 2017-02-04 13:06:43 +03:00
src Add RFC7233 support (#299) 2017-02-04 13:06:43 +03:00
.gitignore Update multipart.cr to v0.1.1 2016-11-23 20:45:57 +03:00
.travis.yml Update .travis.yml 2015-12-06 17:56:04 +02:00
CHANGELOG.md 0.17.4 2016-12-24 14:45:17 +03:00
Guardfile Added Guardfile 2015-10-28 17:37:51 +02:00
LICENSE Add LICENSE 2016-06-15 09:09:48 +03:00
README.md fix installation instructions (#273) 2016-12-10 12:29:08 +03:00
shard.yml Update radix to 0.3.6. Fixes #293 (#294) 2017-01-18 23:09:03 +03:00

Kemal Build Status

Join the chat at https://gitter.im/sdogruyol/kemal crystal-docs.org

Lightning Fast, Super Simple web framework for Crystal. Inspired by Sinatra but with superior performance and built-in WebSocket support.

Super Simple

require "kemal"

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

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

Kemal.run

Start your application!

crystal src/kemal_sample.cr

Go to http://localhost:3000

Check documentation or samples for more.

Super Fast 🚀

Numbers speak louder than words.

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

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

Installation

Add this to your application's shard.yml:

dependencies:
  kemal:
    github: kemalcr/kemal
    branch: master

Features

  • Support all REST verbs
  • Websocket support
  • Request/Response context, easy parameter handling
  • Middlewares
  • Built-in JSON support
  • Built-in static file serving
  • Built-in view templating via Kilt

Documentation

You can read the documentation at the official site kemalcr.com

Thanks

Thanks to Manas for their awesome work on Frank.