mirror of
https://gitea.invidious.io/iv-org/shard-kemal.git
synced 2024-08-15 00:53:36 +00:00
No description
As in https://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html#sec9.2 and because it's a nice way to document API |
||
---|---|---|
samples | ||
spec | ||
src | ||
.gitignore | ||
.travis.yml | ||
Guardfile | ||
README.md | ||
shard.yml |
Lightning Fast, Super Simple web framework for Crystal. Inspired by Sinatra but with superior performance and built-in WebSocket support.
Kemal is under heavy development and currently supports Crystal latest.
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
Build and run!
crystal run 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)
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.