Popularity
9.4
Stable
Activity
0.0
Stable
195
9
7
Programming language: Crystal
Tags:
Misc
hoop alternatives and similar shards
Based on the "Misc" category.
Alternatively, view hoop 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 -
burocracia.cr
👔 Zero-dependency Crystal shard to validate, generate and format Brazilian burocracias (CPF, CNPJ, 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... :) -
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.
InfluxDB – Built for High-Performance Time Series Workloads
InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.
Promo
www.influxdata.com

Do you think we are missing an alternative of hoop or a related project?
README
hoop
How to try ?
git clone [email protected]:0x73/hoop.git
shards install
crystal run example/webview_example.cr
Bundled Application
cd example/bundled_application && sh build.sh && open Hoop.app
Basic example
# app.cr
require "src/hoop"
include Hoop
NSAutoreleasePool.new
NSApp.activation_policy = LibAppKit::NSApplicationActivationPolicy::Regular
appName = "Hello, World !".to_objc
window = NSWindow.new(NSRect.new(0, 0, 700, 700).to_objc, LibAppKit::NSWindowMask::Titled, LibAppKit::NSBackingStoreType::Buffered, false)
window.set_background_color = NSColor.white_color.to_objc
window.cascade_top_left_from_point NSPoint.new(20, 20).to_objc
window.title = appName
window.make_key_and_order_front nil.to_objc
b = NSButton.new(NSRect.new(50, 50, 600, 100).to_objc)
b.set_title = "MAKE REQUEST"
class Foo < NSObject
export_class
def bar
url = NSURL.url_with_string "https://jsonplaceholder.typicode.com/posts/2"
req = NSURLRequest.request_with_url url.to_objc
res = NSURLResponse.new
data = NSURLConnection.send_synchronous_request req.to_objc, res.to_objc, nil.to_objc
ns_log data
result = NSJSONSerialization.json_object_with_data data.to_objc, LibCF::NSJSONReadingOptions::KNilOptions, nil.to_objc
ns_log result
userId = result.object_for_key("userId")
id = result.object_for_key("id")
title = result.object_for_key("title")
body = result.object_for_key("body")
ns_log "#{userId.as(NSNumber).intValue}"
ns_log "#{id.as(NSNumber).intValue}"
ns_log "#{title.as(NSString)}"
ns_log "#{body}"
alert = NSAlert.new
alert.set_message_text = "User Id: #{userId.as(NSNumber).intValue} - Id: #{id.as(NSNumber).intValue} - Title: #{title} - Body: #{body}"
alert.run_modal
end
export "bar"
end
b.target = Foo.new.to_objc
b.action = "bar"
window.content_view << b.to_objc
ns_log "app launched"
NSApp.activate_ignoring_other_apps = true
NSApp.run
$ crystal app.cr
Contributing
- Fork it ( https://github.com/hoopcr/hoop/fork )
- Create your feature branch (git checkout -b my-new-feature)
- Commit your changes (git commit -am 'Add some feature')
- Push to the branch (git push origin my-new-feature)
- Create a new Pull Request
Authors
- Sedat G. Çiftçi @0x73
- Serdar Doğruyol @sdogruyol
Thanks
Thanks to Manas for their awesome work on Crocoa.