https://github.com/onyxframework/docs
The Onyx Framework documentation 📚
https://github.com/onyxframework/docs
crystal ruby
Last synced: 12 months ago
JSON representation
The Onyx Framework documentation 📚
- Host: GitHub
- URL: https://github.com/onyxframework/docs
- Owner: onyxframework
- Created: 2018-11-27T13:08:26.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2021-04-20T17:29:42.000Z (almost 5 years ago)
- Last Synced: 2025-03-24T16:45:19.759Z (about 1 year ago)
- Topics: crystal, ruby
- Language: JavaScript
- Homepage: https://docs.onyxframework.com
- Size: 1.18 MB
- Stars: 4
- Watchers: 1
- Forks: 4
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
---
sidebarDepth: "1"
---
# Introduction
## What is Onyx Framework
Onyx Framework is a general purpose framework built on [Crystal, the Programming Language](https://crystal-lang.org). Crystal is, in turn, built on top of LLVM, which makes it **type-safe** and **incredibly fast**. Crystal syntax is heavily **inspired by Ruby**, which makes it a perfect language to replace slow Ruby code in your applications.
## Design principles
Very deep in the architecture of the framework lies an aim to be **perfect** from engineering point of view — true SOLID, loosely coupled components and **clean** architecture. But these idioms may be tedious for newcomers both to language and the framework and also require to write more boilerplate code.
That's why there is also a goal to hide the complexity under **simple** and **beautiful** DSL, but still be **extendable** and avaialble for more explict usage in the later stages of development cycle. The framework is able to grow with your knowledge of Crystal and your application needs.
## Applications
You can use Onyx Frameworks to either create new projects from scratch or incrementally replace services in your existing applications. **Areas** where you can apply the framework include:
* **Web** development, including real-time applications, as Onyx has first-class support for websockets
* **Game server** development, as Onyx has tools to add reactivity
* **Native platform applications**, as Onyx includes tools to work with embeddable databases like SQLite
You'd want to **switch** to Onyx and Crystal to:
* Reduce **server costs** dramatically
* Create **long-term** maintainable applications
* **Catch bugs** in development, not in production, while writing fever tests
* **Pay less** for migration, as Ruby developers usually learn Crystal in days