Hacker News new | past | comments | ask | show | jobs | submit login
Kemal: Fast, Effective, Simple Web Framework for Crystal (kemalcr.com)
158 points by sdogruyol on Nov 15, 2022 | hide | past | favorite | 26 comments



Kemal is great, lightweight, fast!!! and I’m using it for a growing number of infrastructure / microservices at CircuitLab (exposing JSON APIs, mostly), as well as to serve web requests on my side project at Total Real returns.

If you want to play with Kemal and/or Crystal without installing anything besides Docker, I made https://github.com/compumike/crystal-docker-quickstart . You should be able to add Kemal to shard.yml, edit d_dev to expose port 3000 (there’s a line already there, just uncomment it), and get your first Kemal microservice up in a few minutes :)


My main gripe is the compiler speed or lack thereof. I know they were planning an interpreter for dev-mode, but it’s not released yet.

Did that not bother you during development? What was your workflow like?


The interpreter has been out for a while, have fun! https://crystal-lang.org/2021/12/29/crystal-i.html


Using a fez (or fes, if you prefer) as a logo for a "Fast, Effective, Simple" framework named "Kemal" is kind of unfortunate/ironic. Kemal Ataturk actually abolished the use of the fez [1].

[1] https://en.wikipedia.org/wiki/Hat_Revolution


While Atatürk is likely the most well-known person named Kemal to date, it's a pretty common name, and it means something like "mature" or "complete" [1], which is sort of a good goal to reach, or a quality to advertise, for a framework.

[1]: https://en.wikipedia.org/wiki/Kemal_(name)


latest tweet from the official twitter account has a quote from Atatürk.


Check closely the wikipedia list: The name became truly popular only after 1923, when Atatürk established the Republic of Turkey, and it's mostly popular among Turkish people.

So, even though Atatürk was not the first person to be named Kemal, he practically "owns" the name today.


Kemal is an Arabic word. And its a loan word in Persian. And from the influence of Persian & Arabic its used heavily in Turkic and Indo-Aryan languages (Turkish, Urdu/Hindi).

It was mainstream even before Ataturk in India/Iran (Fars territory). https://en.wikipedia.org/wiki/Ibn_Kemal


Huh. I guess I always thought the hat logo was a nod to Sinatra ( https://sinatrarb.com/ ), given Crystals relationship with Ruby.


This was my first thought the moment I saw the website. I thought maybe the dev's name is Kemal, but that wasn't the case either.


Nah fez is cool. Also there are fictional characters with fez (eg, ustura kemal). Besides Kemal Atatürk used to wear one, suited him nicely


Maybe that was his point.


That makes it even worse then.


It’s offensive.


HUGE fan of Kemal (and Crystal as a whole).

I started, as many do, with a full-featured batteries-included framework (Amber, which is also awesome and super easy to grok), but later realized that I much prefer being closer to the metal and Kemal is exactly that. You can build a fully-functional API in a single file with a few lines of code, and it works easily and quickly.


OK, OK! I keep seeing news for Crystal lately. I can take a hint, Universe - I'll write a new project in it.


That last one that hit HN frontpage was 16 days ago [1], and apart from my submission for 1.6 release which barely hit the frontpage, the next discussion on Crystal was September.

Compared to the HN darling, Rust. Crystal is hardly active.

[1] https://hn.algolia.com/?dateRange=all&page=0&prefix=false&qu...


Consider, for a moment, the possibility that I don't just get news from Hacker News. =P


Took me about 5 minutes to write a TCP echo server. I think only Ruby Async::IO is close to that easy.


It's probably just consequence of some person trying really hard to promote the language these days, rather than a divine intervention.


Some would argue that “some person” and “the universe” are the same.


The universe is a superset of all the people in my office right now....


I've used it for a small API project, really easy to understand and setup!

There's also a healthy amount of ported gems (Shards) over at:

https://crystalshards.org/shards


For a few seconds I thought this was a reference to C64 KERNAL OS. Turns out it was just bad keming.


Currently building a back-end API with Kemal, highly recommend. Also has easy to use websocket events built-in.


Nice framework!




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: