{"id":30770693,"url":"https://github.com/pludoni/compression-binaries-gem","last_synced_at":"2025-10-17T16:01:40.053Z","repository":{"id":62556106,"uuid":"78013850","full_name":"pludoni/compression-binaries-gem","owner":"pludoni","description":"Provides pre built binaries to zopfli and brotli","archived":false,"fork":false,"pushed_at":"2017-01-04T14:38:44.000Z","size":1032,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-09-04T23:20:17.987Z","etag":null,"topics":["brotli","gem","ruby","zopfli"],"latest_commit_sha":null,"homepage":null,"language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pludoni.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-01-04T12:32:15.000Z","updated_at":"2017-01-04T12:39:11.000Z","dependencies_parsed_at":"2022-11-03T06:00:24.503Z","dependency_job_id":null,"html_url":"https://github.com/pludoni/compression-binaries-gem","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/pludoni/compression-binaries-gem","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pludoni%2Fcompression-binaries-gem","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pludoni%2Fcompression-binaries-gem/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pludoni%2Fcompression-binaries-gem/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pludoni%2Fcompression-binaries-gem/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pludoni","download_url":"https://codeload.github.com/pludoni/compression-binaries-gem/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pludoni%2Fcompression-binaries-gem/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278794396,"owners_count":26046968,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-07T02:00:06.786Z","response_time":59,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["brotli","gem","ruby","zopfli"],"created_at":"2025-09-04T23:13:36.527Z","updated_at":"2025-10-17T16:01:40.043Z","avatar_url":"https://github.com/pludoni.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Compression\n\n[![Gem Version](https://badge.fury.io/rb/compression-binaries.svg)](https://badge.fury.io/rb/compression-binaries)\n\nShips zopfli and brotli binaries\n\n\n## Installation\n\nAdd this line to your application's Gemfile:\n\n```ruby\ngem 'compression-binaries'\n```\n\nAnd then execute:\n\n    $ bundle\n\nOr install it yourself as:\n\n    $ gem install compression-binaries\n\n## Usage\n\nAfter installing that tool, the ``bro`` executable should be in your path:\n\n```\nbundle exec bro --version\n```\n\n## Current Version\n\nbro: v0.5.2 (11 Aug 2016)\nzopfli: 1.0.1 (22 Aug 2015)\n\n\n## Integration with Rails asset pipeline (Sprockets)\n\nAdd that snippet to Rakefile or to ``lib/tasks/assets.rake``. Running ``rake assets:precompile`` will also generate .br und .gz (Zopfli) files.\n\n```ruby\nnamespace :assets do\n  task :gzip =\u003e :environment do\n    logger = Logger.new(STDOUT)\n    asset_root = Rails.root.join('public', 'assets')\n    zopfli_iterations = 20\n    Dir[\"#{asset_root}/**/*.{js,css,html,svg}\"].each do |asset|\n      gz_asset_name = \"#{asset}.br\"\n      next if File.exist? gz_asset_name\n      sh \"bro --input #{asset} --output #{gz_asset_name}\"\n      sh \"zopfli -i#{zopfli_iterations} #{asset}\"\n    end\n  end\nend\n\nRake::Task['assets:precompile'].enhance { Rake::Task['assets:gzip'].invoke }\n```\n\n## Update 3rd party instructions\n\n```\ngit submodules init\ngit submodules update\n\ncd brotli\ngit fetch\ngit checkout vSOMEBRANCH\nmake\n\ncd ../zopfli\ngit fetch\ngit checkout vSOMEBRANCH\nmake\n```\n\n* Copy over the binaries in brotli/bin/bro to the correct architecture in libexec.\n* Copy over the binaries in zopfli/zopfli to the correct architecture in libexec.\n* Commit changes to submodules \u0026 libexec binaries\n\n* Do that step twice, once on a linux (64bit) and OSX/Darwin machine\n* 32bit version: There is a Dockerfile to make a quick 32bit env.\n\nRun ``rake run_docker``\n\n```\ncd /build/zopfli/ \u0026\u0026 make \u0026\u0026 cp /build/zopfli/zopfli /build/libexec/zopfli-linux-x86\ncd /build/brotli/ \u0026\u0026 make \u0026\u0026 cp /build/brotli/bin/bro /build/libexec/bro-linux-x86\n```\n\n## License\n\nThe gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpludoni%2Fcompression-binaries-gem","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpludoni%2Fcompression-binaries-gem","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpludoni%2Fcompression-binaries-gem/lists"}