{"id":19142359,"url":"https://github.com/eldoy/pushfile","last_synced_at":"2025-07-18T13:32:30.957Z","repository":{"id":56889685,"uuid":"78370247","full_name":"eldoy/pushfile","owner":"eldoy","description":"Upload files to Rackspace Cloud or Amazon S3 by URL or file with automatic image resizing and thumbnails.","archived":false,"fork":false,"pushed_at":"2018-05-20T15:59:31.000Z","size":52,"stargazers_count":2,"open_issues_count":2,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-07-12T22:34:30.766Z","etag":null,"topics":["amazon","file","rackspace","ruby-gem","upload","uploader"],"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/eldoy.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-01-08T21:01:27.000Z","updated_at":"2022-06-04T21:57:17.000Z","dependencies_parsed_at":"2022-08-20T16:00:38.445Z","dependency_job_id":null,"html_url":"https://github.com/eldoy/pushfile","commit_stats":null,"previous_names":["fugroup/pushfile"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/eldoy/pushfile","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eldoy%2Fpushfile","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eldoy%2Fpushfile/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eldoy%2Fpushfile/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eldoy%2Fpushfile/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/eldoy","download_url":"https://codeload.github.com/eldoy/pushfile/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eldoy%2Fpushfile/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265768334,"owners_count":23825101,"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":["amazon","file","rackspace","ruby-gem","upload","uploader"],"created_at":"2024-11-09T07:26:59.322Z","updated_at":"2025-07-18T13:32:30.910Z","avatar_url":"https://github.com/eldoy.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Pushfile Cloud File Uploader\nUpload files to Rackspace Cloud or Amazon S3 by URL or file, with automatic image resizing and thumbnails.\n\n### Installation\n```\ngem install pushfile\n```\nor add to Gemfile.\n\n### Settings\n```ruby\n# The settings are stored in ./config/pushfile.yml\n@settings = YAML.load_file(File.join(Dir.pwd, 'config', 'pushfile.yml')).deep_symbolize_keys\n\n# The provider, amazon or rackspace\n@provider = 'amazon'\n\n# Mode, default is development\n@mode = ENV['RACK_ENV'] || 'development'\n\n# Debug\nPushfile.debug = false\n```\nCreate a config/pushfile.yml for your settings.\n\nSee [the example pushfile.yml](https://github.com/fugroup/pushfile/blob/master/config/pushfile.yml) for an example.\n\nIf you define an image config, any images you upload will be automatically resized before uploading. You can define both the desired max height and width. All images will also be thumbnailed.\n\n### Usage\nFor more examples have a look at [the tests for Pushfile.](https://github.com/fugroup/pushfile/blob/master/test/upload_test.rb)\n```ruby\n# Require pushfile if not using Bundler\nrequire 'pushfile'\n\n# Set up a new upload from web server params\n# The Froala editor support is automatic\nu = Pushfile::Upload.new(params)\n\n# Ajax upload with progress support, pass the request body StringIO object\nu = Pushfile::Upload.new(params.merge(:stream =\u003e request.body))\n\n# Set up a new upload from local file\nu = Pushfile::Upload.new(:filename =\u003e 'name.jpg', :tempfile =\u003e '/tmp/name.jpg')\n\n# Upload from remote URL\nu = Pushfile::Upload.new(:url =\u003e 'http://fugroup.net/images/fugroup_logo1.png')\n\n# Actually upload file to CDN\nu.create\n\n# Get uploaded url with data\nu.status # =\u003e Hash with urls and data\n\n# Example response hash\n{\n  # The file URL\n  :url =\u003e \"http://f.7i.no/1484109810_fugroup_avatar.jpg\",\n\n  # The thumbnail URL (only for images)\n  :thumb_url =\u003e \"http://f.7i.no/1484109810_fugroup_avatar_thumb.jpg\",\n\n  # The size of the file after resizing\n  :size =\u003e 40288,\n\n  # The file's mime type\n  :mimetype =\u003e \"image/jpeg\"\n}\n\n# Remove file from CDN\nu.destroy(url)\n```\n\nCreated and maintained by [Fugroup Ltd.](https://www.fugroup.net) We are the creators of [CrowdfundHQ.](https://crowdfundhq.com)\n\n`@authors: Vidar`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feldoy%2Fpushfile","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feldoy%2Fpushfile","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feldoy%2Fpushfile/lists"}