Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/codamic/hellhound
A set of libraries to create asynchronous, high performance, scalable and simple application.
https://github.com/codamic/hellhound
async clojure clojurescript data-flow framework react stream thread-pool web-development
Last synced: 3 months ago
JSON representation
A set of libraries to create asynchronous, high performance, scalable and simple application.
- Host: GitHub
- URL: https://github.com/codamic/hellhound
- Owner: Codamic
- License: mit
- Created: 2016-10-04T13:09:37.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2021-07-12T20:52:34.000Z (over 3 years ago)
- Last Synced: 2024-10-11T23:11:49.774Z (4 months ago)
- Topics: async, clojure, clojurescript, data-flow, framework, react, stream, thread-pool, web-development
- Language: Clojure
- Homepage: http://hellhound.io
- Size: 1.44 MB
- Stars: 34
- Watchers: 7
- Forks: 2
- Open Issues: 16
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# HellHound
**IMPORTANT NOTE**: This software is not ready to use yet. It's under heavy development
and reaches the alpha stage pretty soon. If you like to be part of this process please
leave [me](//github.com/lxsameer) a message.---
[Guides](http://docs.hellhound.io/guides/) | [API Reference](http://docs.hellhound.io/api/) | [Examples](https://github.com/Codamic/hellhound_examples) | [How to contribute?](http://docs.hellhound.io/guides/#_contributing_to_hellhound)
----
[![Build Status](https://travis-ci.org/Codamic/hellhound.svg?branch=master)](https://travis-ci.org/Codamic/hellhound) [![Clojars Project](https://img.shields.io/clojars/v/codamic/hellhound.svg)](https://clojars.org/codamic/hellhound)## What is HellHound
**HellHound** is a set of libraries to create simple and elegant programs based on streams. An **HellHound** application
basically is a [system](http://docs.hellhound.io/guides/#systems) of [components](http://docs.hellhound.io/guides/#components)
which work together in order to achieve a common goal. Components form one or more data pipelines through
[workflows](http://docs.hellhound.io/guides/#workflow). In general systems are a great way to manage the lifecycle and data flow
or your program and components are awesome for managing the state and dependencies of different pieces of your program.HellHound provides different built-in components for different types of systems. For example Webserver component for creating
a fullstack web application, or a kafka component for a data processing application. For more information checkout the
[guides](http://docs.hellhound.io/guides/) and [Examples](https://github.com/Codamic/hellhound_examples).## Road Map for next stable version
Our near future goals are:
* Support for configurable execution model for the entire system and components as well.
In addition to manage the execution model of the system automatically by HellHound, We like to add a configurable
execution model which allows users to change the behavior based on the use case. For example user might want
to run a component on a blocking thread pool or control the number of threads in each thread pool under hood.* Support for Kafka streams. We're working on adding the support for kafka streams in our stream abstractions so
users can easily take advantage of good features of Apache Kafka in their systems. (Development Started)* Support for IO spec for each component. The basic idea is to add the support for a pair of configurations to
components that allow them to define specs for incoming and outgoing messages. It should be possible to enforce
these spec on messages. Another purpose of having these specs is to create a diagram later that demonstrates how
data transform in the system. This way by creating the diagram in any given time, as a developer we would have
better understanding of our system and data flow. This feature would be awesome specially for new developers.* Better support for REPL driven development
If you like to help us with any of these. Give us a shout.
## Branching guide
The `master` branch of this repo is for development purposes. In order to get the latest stable code please checkout the
`stable` branch.## Where to get help
* [#hellhound](http://webchat.freenode.net/?channels=hellhound&uio=d4) IRC channel on [freenode](https://freenode.net/
)
* #hellhound channel on [clojurians](http://clojurians.net/)## Why did we move from Github?
We're not happy with Microsoft buying Github and we don't trust a company like Microsoft because of their history and
their strategies (For more information take a look at ([Halloween documents](https://en.wikipedia.org/wiki/Halloween_documents)).
So we decided to move to Gitlab as an alternative and we are happy here (Gitlab) so far.## License
Copyright © 2016-2018 Sameer Rahmani <[@lxsameer](//twitter.com/lxsameer)>.
Distributed under the MIT License.