Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


Built with Crystal Travis CI build Docs API docs Latest release

Powerful framework for modern applications.

About πŸ‘‹

Onyx Framework is a powerful general purpose framework for Crystal language. It has the following goals:

  • Joy for newcomers, yet an ability to scale with the developer's knowledge
  • Type-safety on top of Crystal's amazing built-in type system
  • Performance having minimum possible overhead

The framework consists of the following loosely coupled components:

  • Onyx::HTTP to build scalable web applications
  • Onyx::SQL to add SQL models to your business layer
  • Onyx::EDA to implement events-based reactivity

Supporters πŸ•Š

Thanks to all these patrons, the framework lives and prospers πŸ™

Lauri Jutila, Alexander Maslov, Anton Yordanov, Dainel Vera

You can become a patron too in exchange of prioritized support and other perks

Installation πŸ“₯

Add this to your application's shard.yml:

    github: onyxframework/onyx
    version: ~> 0.6.0

This shard follows Semantic Versioning v2.0.0, so check releases and change the version accordingly.

Note that until Crystal is officially released, this shard would be in beta state (0.*.*), with every minor release considered breaking. For example, 0.1.0 β†’ 0.2.0 is breaking and 0.1.0 β†’ 0.1.1 is not.

Note that this shard does not have implicit dependencies for other framework components. For example, to use "onyx/http" macros, you must add onyx-http dependendency as well:

    github: onyxframework/onyx
    version: ~> 0.6.0
    github: onyxframework/http
    version: ~> 0.9.0

Documentation πŸ“š

The documentation is available online at

Community πŸͺ

There are multiple places to talk about this particular shard and about other ones as well:


  1. Fork it ( )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'feat: some feature') using Angular style commits
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request



This software is licensed under MIT License.

Open Source Initiative