Popularity
6.4
Stable
Activity
0.0
Stable
32
5
1
Programming language: Crystal
License: MIT License
Tags:
Misc
Latest version: v2.0.0
promise alternatives and similar shards
Based on the "Misc" category.
Alternatively, view promise alternatives based on common mentions on social networks and blogs.
-
sentry
Build/Runs your crystal application, watches files, and rebuilds/restarts app on file changes -
immutable
Thread-safe, persistent, immutable collections for the Crystal language -
crystagiri
An Html parser library for Crystal (like Nokogiri for Ruby) -
crz
Functional programming library for https://github.com/crystal-lang/crystal -
crystal-web-framework-stars
⭐️ Web frameworks for Crystal, most starred on Github -
cron_scheduler
Simple job scheduler with crontab patterns for Crystal Language. -
inflector.cr
Inflector shard for Crystal. A port of ActiveSupport::Inflector -
aasm.cr
:arrows_clockwise: Easy to use finite state machine for Crystal classes -
kreal
Kreal is a model sharing & RPC library built on and works with Kemal seamlessly. -
retriable.cr
Retriable.cr is a simple DSL to retry failed code blocks -
ulid
Universally Unique Lexicographically Sortable Identifier (ULID) in Crystal -
CrSerializer
Extensible annotation based serialization/deserialization library -
circuit_breaker
Implementation of the circuit breaker pattern in crystal -
burocracia.cr
No dependency Crystal shard to validate, generate and format Brazilian burocracias such as CPF, CNPJ and CEP -
wikicr
Wiki in crystal, using Markdown and Git, inspired by dokuwiki. Last features to build are pretty hard, if you have some time to help... :) -
m3u8
Generate and parse m3u8 playlists for HTTP Live Streaming (HLS) in Crystal. -
message_verifier.cr
Rails compatible MessageVerifier for Crystal-lang apps -
defined
This shard provides facilities for checking whether a constant exists at compile time, and for a variety of different conditional compilation options. Code can be conditionally compiled based on the existence of a constant, version number constraints, or whether an environment variable is set truthy or not.
Access the most powerful time series database as a service
Ingest, store, & analyze all types of time series data in a fully-managed, purpose-built database. Keep data forever with low-cost storage and superior data compression.
Promo
www.influxdata.com
Do you think we are missing an alternative of promise or a related project?
README
Promise.cr

A Promise Implementation in Crystal.
Installation
Add promise
to the shard.yml file as a dependency.
# shard.yml
dependencies:
promise:
github: jwaldrip/promise.cr
tag: {desired_tag}
Usage
require "promise"
require "http/client"
require "json"
def read_body(response : HTTP::Client::Response) : String
response.body
end
request = Promise(HTTP::Client::Response | JSON::Any).execute do |resolve|
HTTP::Client.get "https://httpbin.org/user-agent"
end
puts "do something else...."
request.then do |response|
JSON.parse(read_body(response as HTTP::Client::Response))
end.catch do |ex|
puts "caught!"
puts ex.message
end.then do |json_hash|
puts json_hash
end.await
Documentation
You can generate docs using crystal doc
on your local machine,
or visit: https://jwaldrip.github.com/promise-cr to view the current version's
documentation.
Contributing
See CONTRIBUTING