{"id":15798198,"url":"https://github.com/grokify/mime-builder-ruby","last_synced_at":"2025-03-31T20:12:04.604Z","repository":{"id":46710395,"uuid":"50254934","full_name":"grokify/mime-builder-ruby","owner":"grokify","description":"Builder for MIME parts","archived":false,"fork":false,"pushed_at":"2023-02-15T17:22:13.000Z","size":35,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-10-12T00:51:27.989Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","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/grokify.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-01-23T19:38:54.000Z","updated_at":"2023-02-15T17:17:45.000Z","dependencies_parsed_at":"2024-10-26T07:21:21.103Z","dependency_job_id":"d416f045-b3cd-4782-a462-dcb8733e3661","html_url":"https://github.com/grokify/mime-builder-ruby","commit_stats":{"total_commits":53,"total_committers":1,"mean_commits":53.0,"dds":0.0,"last_synced_commit":"3fa43bd98d78cff235ab0a0c88682f443056b4a6"},"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/grokify%2Fmime-builder-ruby","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/grokify%2Fmime-builder-ruby/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/grokify%2Fmime-builder-ruby/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/grokify%2Fmime-builder-ruby/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/grokify","download_url":"https://codeload.github.com/grokify/mime-builder-ruby/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246531975,"owners_count":20792736,"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","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":[],"created_at":"2024-10-05T00:23:59.057Z","updated_at":"2025-03-31T20:12:04.578Z","avatar_url":"https://github.com/grokify.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"MIMEBuilder Ruby\n================\n\n[![Gem Version][gem-version-svg]][gem-version-link]\n[![Build Status][build-status-svg]][build-status-url]\n[![Coverage Status][coverage-status-svg]][coverage-status-link]\n[![Code Climate][codeclimate-status-svg]][codeclimate-status-link]\n[![Scrutinizer Code Quality][scrutinizer-status-svg]][scrutinizer-status-link]\n\n[![Docs][docs-rubydoc-svg]][docs-rubydoc-link]\n[![License][license-svg]][license-link]\n\n## Overview\n\nThis library creates MIME parts from limited information. The MIME parts are based on the Ruby `mime` library and are all sub-classes of `MIME::Media`.\n\n## Installation\n\n### Via Bundler\n\nAdd `mime_builder` to Gemfile and then run `bundle`:\n\n```sh\n$ echo \"gem 'mime_builder'\" \u003e\u003e Gemfile\n$ bundle\n```\n\n### Via RubyGems\n\n```sh\n$ gem install mime_builder\n```\n\n## Usage\n\n### From Filepath\n\nBuilds a `MIME::Application` or `MIME::Type` object depending on whether base64 encoding is selected. This reads bytes from filesystem and populates the following MIME headers:\n\n1. `Content-Disposition`\n2. `Content-Transfer-Encoding`\n3. `Content-Type`\n\nThis will optionally delete the following auto-generated header:\n\n1. `Content-Id`\n\n```ruby\nbuilder = MIMEBuilder::Filepath.new '/path/to/file'\nmime_part = builder.mime\n```\n\nOptions:\n\n```ruby\nbuilder = MIMEBuilder::Filepath.new(\n  '/path/to/file',\n  base64_encode: true,        # base64 encode part\n  content_id_disable: true,   # remove auto-generated Content-Id header\n  content_type: 'text/plain', # override auto-generated Content-Type\n  is_attachment: true         # add 'attachment' disposition\n)\n```\n\n### From String\n\nBuilds a `MIME::Text` object. This accepts a string and can optionally populate the following headers:\n\n1. `Content-Disposition`\n2. `Content-Type`\n\nThis will optionally delete the following auto-generated header:\n\n1. `Content-Id`\n\n```ruby\nbuilder = MIMEBuilder::Text.new 'Hi there!' \nmime_part = builder.mime\n```\n\nOptions:\n\n```ruby\nbuilder = MIMEBuilder::Text.new(\n  'Hi there!',\n  content_id_disable: true, # remove auto-generated Content-Id header\n  content_type: 'text/html' # override auto-generated Content-Type\n)\n```\n\n### From JSON\n\nBuilds a `MIME::Text` object. This accepts a string, hash, or array.\n\nThis will optionally:\n\n1. delete the following auto-generated `Content-Id`\n1. base64 encode the content\n\n```ruby\nbuilder = MIMEBuilder::JSON.new { foo: 'bar' }\nmime_part = builder.mime\n```\n\nOptions:\n\n```ruby\nbuilder = MIMEBuilder::JSON.new(\n  { foo: 'bar' },\n  content_id_disable: true, # remove auto-generated Content-Id header\n  base64_encode: false      # disable default base64 encoding\n)\n```\n\n## Change Log\n\nSee [CHANGELOG.md](CHANGELOG.md)\n\n## Links\n\nProject Repo\n\n* https://github.com/grokify/mime-builder-ruby\n\nMIME Library\n\n* https://rubygems.org/gems/mime\n* https://bitbucket.org/pachl/mime/src\n\n## Contributions\n\nAny reports of problems, comments or suggestions are most welcome.\n\nPlease report these on [Github](https://github.com/grokify/mime-builder-ruby)\n\n## License\n\nMIMEBuilder is available under an MIT-style license. See [LICENSE.md](LICENSE.md) for details.\n\nMIMEBuilder \u0026copy; 2016-2023 by John Wang\n\n [gem-version-svg]: https://badge.fury.io/rb/mime_builder.svg\n [gem-version-link]: http://badge.fury.io/rb/mime_builder\n [downloads-svg]: http://ruby-gem-downloads-badge.herokuapp.com/mime_builder\n [downloads-link]: https://rubygems.org/gems/mime_builder\n [build-status-svg]: https://github.com/grokify/mime-builder-ruby/workflows/ruby%20build/badge.svg?branch=master\n [build-status-url]: https://github.com/grokify/mime-builder-ruby/actions\n [codacy-svg]: https://api.codacy.com/project/badge/Grade/fa30d602e8ec4eae806bb43430989d65\n [codacy-link]: https://www.codacy.com/app/grokify/mime-builder-ruby\n [coverage-status-svg]: https://coveralls.io/repos/grokify/mime-builder-ruby/badge.svg?branch=master\n [coverage-status-link]: https://coveralls.io/r/grokify/mime-builder-ruby?branch=master\n [dependency-status-svg]: https://gemnasium.com/grokify/mime-builder-ruby.svg\n [dependency-status-link]: https://gemnasium.com/grokify/mime-builder-ruby\n [codeclimate-status-svg]: https://codeclimate.com/github/grokify/mime-builder-ruby/badges/gpa.svg\n [codeclimate-status-link]: https://codeclimate.com/github/grokify/mime-builder-ruby\n [scrutinizer-status-svg]: https://scrutinizer-ci.com/g/grokify/mime-builder-ruby/badges/quality-score.png?b=master\n [scrutinizer-status-link]: https://scrutinizer-ci.com/g/grokify/mime-builder-ruby/?branch=master\n [docs-rubydoc-svg]: https://img.shields.io/badge/docs-rubydoc-blue.svg\n [docs-rubydoc-link]: http://www.rubydoc.info/gems/mime_builder/\n [license-svg]: https://img.shields.io/badge/license-MIT-blue.svg\n [license-link]: https://github.com/grokify/mime-builder-ruby/blob/master/LICENSE.md\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgrokify%2Fmime-builder-ruby","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgrokify%2Fmime-builder-ruby","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgrokify%2Fmime-builder-ruby/lists"}