zorbash

zorbash

Kitto: A framework for interactive dashboards

I created Kitto a framework for dashboards inspired by Dashing.

The distributed characteristics of Elixir and the low memory footprint (compared to Ruby/Rails) make it ideal for a dashboard server. It feels familiar to users of Dashing and provides a DSL to define jobs.

# File jobs/random.ex
use Kitto.Job.DSL

job :random, every: :second do
  broadcast! :random, %{value: :rand.uniform * 100 |> Float.round}
end

The front end uses React/Webpack (which are really widespread) so it should be easy to dive in and code widgets without having to learn yet another framework.

Currently i’m expanding the wiki and general documentation so to make it as straightforward as possible to use.

You’re welcome to try it, make suggestions and if you evaluate it positively, help me get it in awesome elixir.

Most Liked

zorbash

zorbash

New Security release for Kitto.

The latest v0.5.2 release contains various security fixes listed below:

3 security vulnerabilities have been disclosed to us by @griffinbyatt

  1. Directory Traversal
  1. XSS in 404 page
  1. DoS from query parameter conversion to Atoms (since they’re not Garbage-Collected)

https://github.com/kittoframework/kitto/commit/5323717e4ac978144bcf89169dce9d79a4c2bdb6

Please mind to upgrade.

Special thanks to @davejlong and @griffinbyatt for the their swift and responsible work.

vfsoraki

vfsoraki

Have you looked at Drab?

With this, you could eliminate React dependency, just clean Elixir code.

Just a thought though :slight_smile:

zorbash

zorbash

I had plans from the beginning to diverge from Dashing/Smashing and that’s why there’s nowhere in the documentation a promise for compatibility between the projects. Building it on some of the conventions of Dashing though can hopefully make people using it more productive and eager to port existing dashboards to Kitto (and even find an excuse to introduce Elixir at work :innocent:)

Concerning your question abou the text widget, you’re right about it having only one dynamic attribute at the moment.
Changing it to have more or all of its attributes dynamic is quite simple and i wouldn’t mind if the default generated text widget
had all of them dynamic (feel free to submit a PR about this).

Keep in mind that even core widgets are generated in any new dashboard app instead of being bundled somehow to allow the user to see the source code, and adapt it accordingly.

Where Next?

Popular in Announcing Top

mathieuprog
Hello :wave: Allow me to introduce you to Tz, an alternative time zone database support to Tzdata. Why another library? First and fore...
New
josevalim
Yes, yet another parser combinator library! Most of the parser combinators in the ecosystem are either compile-time, often using AST tra...
159 19103 141
New
josevalim
EDIT: since Ecto 3.0 final version is out, this post was amended to use the final versions in the instructions below. Hi everyone, We a...
New
maltoe
Hello! Came here to announce ChromicPDF, a pet project PDF generator I’ve been working on for the past few months. Why another PDF gener...
New
Eiji
ExApi is a library that I’m developing now and hope release soon This library will allow to: list all apis list all api implementation...
New
grych
Hi folks, Few months ago I have announced the proof-of-concept of the library to manipulate the browsers DOM objects directly from Elixi...
639 52238 488
New
oltarasenko
Dear Elixir community, After a year of development, bug fixes, and improvements, we are proudly ready to share the release of Crawly 0.1...
New
josevalim
Hello everyone, We have just released NimbleCSV which is a small and fast CSV parsing library for Elixir. It allows developers to define...
New
Qqwy
TypeCheck: Fast and flexible runtime type-checking for your Elixir projects. Core ideas Type- and function specifications are const...
336 14302 100
New
scohen
Lexical Lexical is a next-generation language server for the Elixir programming language. Features Context aware code completion As-you...
New

Other popular topics Top

marius95
Hello everyone, I try to use an Javascript Event Handler in my root.html.leex file. Therefore I created a function in the app.js file: ...
New
greenz1
I have a phoenix application from which a user can download multiple(5-6) files of size 1MB. I couldn’t find anything related to sending ...
New
AstonJ
Posting this to see if we can make things easier for people to get into Neovim. If you use Neovim and have a favourite distro please let ...
New
gshaw
What is the idiomatic way of matching for not nil in Elixir? E.g., First way: defp halt_if_not_signed_in(conn, signed_in_account) when...
New
dokuzbir
I want to highlight html closing tags when i click a html tag. That works in .html files but doesnt work for html.eex templates. How can...
New
ovidiubadita
Hey all, I discovered Elixir and I love it. I always wanted to learn a functional programming and I intended to go for Haskell, but afte...
New
nsuchy
Hi. I’ve noticed that Windows Powershell has it’s own IEX command and you cannot access Elixir’s IEX due to the conflict. This isn’t a cr...
New
shijith.k
I am trying to start a new phoenix project with elixir 1.9, but mix phx.new does not work. It says that ** (Mix) The task "phx.new" could...
New
marick
I had some trouble figuring out how to make many-to-many associations work. Once I got it working, I wrote a blog post. Because I'm a nov...
New
sergio
Kind of like when jquery came out, it was super necessary. Existing drag and drop libraries have a bunch of baggage to support old browse...
New

We're in Beta

About us Mission Statement