Skip to content

Crystal Book

Welcome to the documentation for the Crystal language.

Crystal is a language for humans and computers. These materials help humans understand the language and its ecosystem.

Learning Materials

These instructions and courses help you get to know the language and how to use it.

Getting started

Install Crystal and get it running.


Introductory material for beginners.

External resources

A collection of external resources to help you take the most of the language.

Grow in Crystal

The core documentation of the Crystal language, standard library, and tooling.

Language Reference

Specification of the language.

Standard Library API

Documentation of the standard library.


Discover the ecosystem of Crystal libraries.


Detailed examples for practical applications.

The compiler

Instructions on how to use the compiler and tools.

Project and Releases Information

Announcements about the language development.


If you want to dive into the development of Crystal, these materials give some guidance.

Contributing Instructions

A guide on how to open issues and contribute code to the Crystal project.

Requests for Comments

The RFC process provides a consistent and controlled path to discuss substantial changes in the Crystal project and form a community consensus.

Code of Conduct

Our standards and expectations about working together as a community.

Governance document

How we take the decisions that guide the language and its community.