A Ruby gem for streaming data from the Bluesky/ATProto firehose
1# frozen_string_literal: true
2
3require_relative "lib/skyfall/version"
4
5Gem::Specification.new do |spec|
6 spec.name = "skyfall"
7 spec.version = Skyfall::VERSION
8 spec.authors = ["Kuba Suder"]
9 spec.email = ["jakub.suder@gmail.com"]
10
11 spec.summary = "A Ruby gem for streaming data from the Bluesky/AtProto firehose"
12 spec.homepage = "https://github.com/mackuba/skyfall"
13
14 spec.description = %(
15 Skyfall is a Ruby library for connecting to the "firehose" of the Bluesky social network, i.e. a websocket which
16 streams all new posts and everything else happening on the Bluesky network in real time. The code connects to the
17 websocket endpoint, decodes the messages which are encoded in some binary formats, and returns the data as Ruby
18 objects, which you can filter and save to some kind of database (e.g. in order to create a custom feed).
19 )
20
21 spec.license = "Zlib"
22 spec.required_ruby_version = ">= 2.6.0"
23
24 spec.metadata = {
25 "bug_tracker_uri" => "https://github.com/mackuba/skyfall/issues",
26 "changelog_uri" => "https://github.com/mackuba/skyfall/blob/master/CHANGELOG.md",
27 "source_code_uri" => "https://github.com/mackuba/skyfall",
28 }
29
30 spec.files = Dir.chdir(__dir__) do
31 Dir['*.md'] + Dir['*.txt'] + Dir['example/**/*'] + Dir['lib/**/*'] + Dir['sig/**/*']
32 end
33
34 spec.require_paths = ["lib"]
35
36 spec.add_dependency 'base32', '~> 0.3', '>= 0.3.4'
37 spec.add_dependency 'cbor', '~> 0.5', '>= 0.5.9.6'
38 spec.add_dependency 'faye-websocket', '~> 0.11.2'
39end