Manage your Crystal application content with a powerful headless CMS. Open Source, customizable, and self-hosted, Strapi provides an intuitive admin panel as well as an API consumable from any http client.
Effortlessly create content structures that flex to your needs. No matter which data structure is the best for your business, you can easily define models and add relations to create rich layout experiences. Seamlessly write, edit and manage any content types. Easily build apps and digital experiences without the distraction of CMS complexities. Consume the API from Crystal using REST or GraphQL.
Crystal is a general-purpose and object-oriented programming language. With syntax inspired by the language Ruby, it is a compiled language with static type-checking willing to be a fast a C language.
Many http clients exists in Crystal in order to communicate with a Strapi API: HTTP::Client, crest or cossack.
The out-of-the-box Strapi features allow you to get up-and-running in no time:
Crystal is a compiled programming language with Ruby-like syntax but C-level performance. It integrates with Strapi through HTTP clients to consume API content for high-performance backend applications.
Use Crystal's HTTP::Client to make GET requests to Strapi's REST API endpoints. Parse JSON responses using Crystal's built-in JSON module to work with your content data in a type-safe manner.
Yes, Crystal has GraphQL client libraries that can query Strapi's GraphQL endpoint. Install the appropriate shard (Crystal's package manager) and configure queries matching your Strapi schema.
Crystal compiles to native code, offering exceptional performance for CPU-intensive tasks. Use Crystal for high-throughput API consumers, data processing pipelines, or microservices that need to handle Strapi content efficiently.
Store JWT tokens or API keys securely in environment variables. Include the authentication header in your HTTP requests using Crystal's header configuration options for the HTTP client.