-
-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Crystal Shards for Ruby Gems
Seth T edited this page Oct 18, 2023
·
22 revisions
This wiki page lists some Ruby gems that have an equivalent Crystal Shard. (Some crystal shards are a 1:1 port, while others are only inspired by Ruby gems or frameworks.)
| Ruby Gem | Crystal Shard |
|---|---|
| rails | lucky (website), amber (website) |
| sinatra | kemal (website), runcobo (website) |
| activerecord | luckyframework/avram Granite Jennifer |
| active_model_serializers | CrSerializer |
| actionmailer | luckyframework/carbon (Supports: SendGrid, AWS SES. Postmark issue) |
| rake | lucky_cli |
| devise | luckyframework/authentic |
| attr_encrypted | (pending) |
| devise-pwned_password | lucky_have_i_been_pwned_validator |
| sidekiq | sidekiq.cr, mosquito |
| Sidekiq Pro, Enterprise | (pending) |
| sidekiq-batch | (pending) |
| shrine | shrine.cr (Supports Memory, FileSystem and S3 stores.) |
| raven-ruby (Sentry.io) | raven.cr. Very active and used in production. Supports: Lucky, Kemal, Amber, Sidekiq.cr. Resources: Sentry forums post, Blog post |
| stripe | stripe.cr |
| openapi | open_api.cr, swagger |
| rswag | (pending) |
| json-schema | (pending) |
| activeadmin, administrate, rails_admin | (pending) |
| hana (JSON Patch) | json-tools |
| rack-attack | defense, limiter (generic limiter, doesn't know about requests or IP addresses) |
| rack-rewrite | Specify fallback routes in Lucky, etc. |
| bad_word_detector | (pending) |
| json / oj | any_hash |
| jbuilder | jbuilder |
| Ruby Gem | Crystal Shard |
|---|---|
| minimagick | stumpycr, imgkit |
| chunky_png | stumpy_png |
| rqrcode | qrcode_img.cr (libqrencode wrapper) |
| barby, pdf417 | (pending) |
| phashion, imatcher | flexo |
| Ruby Gem | Crystal Shard |
|---|---|
| irb | icr |
| byebug | amber/crystal-debug |
| Ruby Gem | Crystal Shard |
|---|---|
| rubocop |
ameba, crystal tool format --check (built-in)
|
| rspec | Spec (built-in), spectator, extend-spec |
| rspec-mock, mocha | mocks.cr |
| vcr | vcr.cr |
| capybara | luckyframework/lucky_flow |
| selenium-webdriver | selenium-webdriver-crystal |
| puffing-billy | (pending) |
| webmock | webmock.cr |
| timecop | timecop.cr |
| factory_bot | luckyframework/avram (Creating Test Data (Guide)) |
| faker | faker |
| json-schema-faker (NPM) | (pending) |
| simplecov | crystal-coverage |
| minitest | minitest.cr |
| Ruby Gem | Crystal Shard |
|---|---|
| rdoc |
documentation (built-in) crystal docs
|
| yard | crodoc |
| Ruby Gem | Crystal Shard |
|---|---|
| docopt.rb | docopt.cr |
| paint | Colorize (built-in) |
- pdf.cr (POC, inactive)
- crystal-libraries-needed issue
- HexaPDF port might be possible