Twinkle

Twinkle makes it easy to serve up an appcast xml feed and to store anonymized and aggregated Sparkle Framework statistics.

Usage

You can easily mount Twinkle to manage and serve your Appcast and store and summarize statistics.

Twinkle contains 5 models, an appcast controller and a summarize concern for creating aggregate usage statistics.

Too much trouble hosting your own? Check out appable.xyz

Installation

Add this line to your application's Gemfile:

gem "twinkle"

And then execute:

$ bundle

Or install it yourself as:

$ gem install twinkle

Install the migrations

bin/rails twinkle:install:migrations

Mount the routes

Add the folllwing to your config/routes

mount Twinkle::Engine => "/"

This will mount the appcast routes at /updates/:app.slug

Extending Twinkle Apps

You can extend the Twinkle::App model by creating app/models/twinkle/app.rb

class Twinkle::App < ApplicationRecord
  include Twinkle::Concerns::Models::App
  include Summarize

  # Your custom app code and validations etc go here
end

Contributing

Pull requests welcome.

Testing

bin/rails db:test:prepare
bin/test

Building the gem

gem build
gem push twinkle-x.x.x.gem

License

The gem is available as open source under the terms of the MIT License.