Popularity
6.5
Growing
Activity
0.0
Stable
32
6
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.

Do you think we are missing an alternative of promise or a related project?

Add another 'Misc' Shard

README

Promise.cr Build Status GitHub release Crystal Docs

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