An open API service indexing awesome lists of open source software.

awesome-crystal

https://github.com/veelenga/awesome-crystal
https://github.com/sara0871/awesome-crystal

Last synced: 14 days ago
JSON representation

Algorithms and Data structures

Api Builders

Blockchain

Caching

  • bloom_filter - Implementation of Bloom filter
  • bojack - A non-reliable in-memory key-value store
  • cache-hash - A key/value store where entries expire after a specified interval
  • crystal-memcached - Implementation of a memcached client
  • Nuummite - A tiny persistent embedded key-value store

C bindings

Cli Builders

  • admiral - A robust DSL for writing command line interfaces
  • cli - Library for building command-line interface applications
  • clicr - A simple declarative command line interface builder
  • clim - Slim command line interface builder
  • commander - Command-line interface builder
  • completion - Easy command line completion engine
  • optarg - Yet another library for parsing command-line options and arguments
  • OptionParser - command-line options processing (Crystal stdlib)

Cli Utils

  • cride - A light CLI text editor/IDE
  • dl - Simple utility for download files by URLs from list
  • noteesh - Notes and Todo list in command line
  • progress - [==..] Progress bar
  • progress_bar.cr - A simple and customizable progress bar
  • spinner - Terminal Spinner
  • terminal_table.cr - Simple ASCII table generator
  • todo - Todo list working in command line

Code Analysis and Metrics

  • trashman - A simple memory profiler for Crystal applications
  • ameba - A static code analysis tool

Configuration

  • cr-dotenv - Loads .env file
  • habitat - Type safe configuration for your classes and modules
  • totem - Load and parse a configuration in JSON, YAML, dotenv formats

Converters

  • base62.cr - Base62 encoder/decoder, well suited for url-shortening
  • human_file_size.cr - JSON & YAML mapping converter for human file sizes in serialized data
  • money - Handling money and currency conversion with ease (almost complete port of RubyMoney)
  • moola - Library for dealing with money and conversion (inspired by RubyMoney)
  • ms - Library to easily convert various time formats to milliseconds and milliseconds to human readable format
  • sass.cr - Compile SASS/SCSS to CSS (libsass binding)
  • time_format.cr - Convert time in human readable format with ease
  • turkish-number - Turn integers into the Turkish words
  • wkhtmltopdf-crystal - Bindings / wrapper for libwkhtmltox (HTML to PDF / image converter)

Database Drivers/Clients

Database Tools

  • crecto-admin - Admin dashboard for Crecto and your database
  • migrate - A simpler database migration tool with transactions
  • migro - A database migration tool that allows migrations to be specified in either YAML or raw SQL
  • micrate - Database migration tool

Data Formats

  • config.cr - Easy to use configuration format parser
  • crinder - Class based json renderer
  • dockerfile.cr - Dockerfile Parsing Library
  • front_matter.cr - Separates a files front matter from its content
  • maxminddb.cr - parsing MaxMindDB files, including the GeoIP2
  • zq - Command-line ZPL processor
  • Zip - readers and writers of zip format (Crystal stdlib)
  • Gzip - readers and writers of gzip format (Crystal stdlib)
  • Zlib - readers and writers of zlib format (Crystal stdlib)
  • crystal-toml - TOML parser
  • CSV - parsing and generating for comma-separated values (Crystal stdlib)
  • INI - INI file parser (Crystal stdlib)
  • JSON - parsing and generating JSON documents (Crystal stdlib)
  • XML - parsing and generating XML documents (Crystal stdlib)
  • YAML - parsing and generating YAML documents (Crystal stdlib)

Data Generators

  • faker - A library for generating fake data
  • hashids.cr - A library to generate YouTube-like ids from one or many numbers

Development Tools

  • guardian - File change watcher for Crystal and Non-Crystal libs
  • kemal-watcher - Kemal plugin to watch files and live-reload the browser
  • sentry - Watches src files, rebuilds/reruns application on file changes
  • sentry-run - Reload code changes using Sentry.run
  • Warden - Watches files, run command and a git command if succeed on file changes
  • watcher - Watch file changes using File.stat

DevOps

Editor Plugins

Email

  • carbon - Fun, testable, and adapter-based email library
  • crystal-email - Simple e-mail sending library
  • CrystalEmail - A RFC compliant Email validator
  • devmail - A combined SMTP/POP3-server with volatile mail storage
  • sendgrid.cr - Simple Sendgrid Client

Environment Management

Examples and funny stuff

Feature Flipping

  • flipper - Feature flipping/flags/rollouts. Supports multiple backends

Framework Components

Game Development

  • cray - Bindings for raylib, an easy-to-use game development library
  • CrSFML - Bindings to SFML multimedia/game library
  • crystal-chipmunk - Bindings for Chipmunk, a fast and lightweight 2D game physics library
  • mos_game - Mini Offline Singleplayer game
  • inari - A collection of games using Glove as the game engine
  • glove - A library for gaming development

GUI library

  • libui.cr - Bindings for libui
  • qt5.cr - Qt5 bindings for Crystal, based on Bindgen
  • hedron - An extendable GUI library, with markup language capabilities

HTML/XML Parsing

HTTP

  • cossack - Simple flexible HTTP client
  • crest - Simple HTTP and REST client, inspired by the Ruby's RestClient gem
  • crul - Command line HTTP client
  • cryload - HTTP benchmarking tool
  • halite - Crystal HTTP Requests with a chainable REST API, built-in sessions and loggers
  • helmet - Set security-related HTTP headers
  • http-multiserver.cr - Mounting multiple servers via routes (a.k.a. URL mapping)