awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectAboutHow we rankPressMCP server
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
carrierwaveuploader avatar

carrierwaveuploader/carrierwave

0
View on GitHub↗
8,785 stars·1,647 forks·Ruby·7 viewsgithub.com/carrierwaveuploader/carrierwave↗

Carrierwave

CarrierWave is a Ruby file upload library used to manage the uploading, storing, and retrieval of files within web frameworks such as Rails and Sinatra. It functions as an Active Record file manager that associates uploaded assets with database records.

The project includes an image processing pipeline for generating thumbnails and derivative versions of uploaded images. It also features a file validation engine to restrict uploads based on allowlists or denylists of extensions and content types, and provides cloud storage integration to manage assets on remote providers.

The library covers broader capabilities including web form upload caching to persist files during validation failures, the ability to upload files via remote URLs, and the management of multiple file upload fields within a single record. It also supports the customization of filenames, storage paths, and the use of fallback URLs when no file is present.

Features

  • File Upload Management - Handles the uploading, storing, and retrieval of files within Ruby web applications.
  • Cloud Storage Integrations - Connects to external storage providers to save and retrieve files from remote cloud environments.
  • Derivative Versions - Creates multiple derivative versions of a single uploaded file, such as thumbnails with specific dimensions.
  • Asset-to-Record Mappings - Associates file metadata and storage paths directly with database records to manage ownership and retrieval.
  • Cloud Storage Wrappers - Implements an abstraction layer that decouples the application from specific cloud storage provider APIs.
  • Storage Abstractions - Standardises file interactions across different local and remote cloud providers using a common interface.
  • Derivative Media Versions - Generates multiple scaled or formatted versions of uploaded images based on predefined processing rules.
  • Image Processing - Manipulates uploaded images using processing libraries to perform resizing and format conversion.
  • Image Processing Pipelines - Implements a processing pipeline for generating thumbnails and various derivative versions of uploaded images.
  • File Type Validators - Restricts uploads by validating file extensions and MIME types against allowlists or denylists.
  • Form Upload Caching - Stores uploaded files during validation failures so users do not have to re-upload them upon form redisplay.
  • Hybrid Cloud Storage Configuration - Defines custom directories for storing uploaded files and temporary caches across local and cloud providers.
  • Derivative Regeneration - Regenerates processed versions of a file from the original source after processing logic changes.
  • File Storage Services - Overrides storage and cache directories to control where files are saved on the filesystem or cloud.
  • URL-Based Uploads - Downloads files from remote internet locations and stores them locally or in the cloud.
  • Remote URL Media Linking - Provides capabilities for downloading and storing files from user-specified remote URLs.
  • Upload Lifecycle Callbacks - Provides event hooks that trigger custom logic at specific stages of the file upload process.
  • Storage Filename Strategies - Overrides the default naming convention for uploaded files to implement specific naming logic.
  • Form Upload Caching - Caches uploaded files during form submissions so they are not lost when model validations fail.
  • Upload Caching - Persists uploaded files during form submission failures to avoid re-uploading after validation errors.
  • File Upload - Flexible file upload solution for various web frameworks.
  • File Handling - File upload management for Ruby frameworks.
  • Media and Communication - Handles file uploads.

Star history

Star history chart for carrierwaveuploader/carrierwaveStar history chart for carrierwaveuploader/carrierwave

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Carrierwave

Similar open-source projects, ranked by how many features they share with Carrierwave.
  • thoughtbot/paperclipthoughtbot avatar

    thoughtbot/paperclip

    9,020View on GitHub↗

    Paperclip is an ActiveRecord file attachment manager that links database models to files stored on local disks or cloud storage. It functions as a system for managing file attachments, a fingerprinting system for detecting duplicates and verifying integrity, and a MIME type validator to ensure uploaded files match allowed formats. The project features an image processing pipeline that uses command-line utilities to automatically generate thumbnails and scaled versions of images based on predefined dimensions. It also provides S3 compatible file storage for managing attachments in Amazon S3 an

    Ruby
    View on GitHub↗9,020
  • fineuploader/fine-uploaderFineUploader avatar

    FineUploader/fine-uploader

    8,149View on GitHub↗

    Fine Uploader is a browser file upload widget and manager that provides a frontend interface for transferring multiple files. It functions as a chunked file upload manager and a client-side image processor. The project enables the direct transfer of files to cloud storage providers, specifically Amazon S3 and Microsoft Azure, to reduce the load on application servers. It includes tools for scaling and resizing image dimensions during the upload process to save bandwidth. The system manages large file transfers by splitting them into small pieces, allowing for pause and resume functionality.

    JavaScript
    View on GitHub↗8,149
  • awesome-selfhosted/awesome-selfhostedawesome-selfhosted avatar

    awesome-selfhosted/awesome-selfhosted

    299,516View on GitHub↗

    This project is a community-curated directory of open-source software designed for deployment in private server environments and home labs. It serves as a comprehensive resource for discovering independent, self-hosted alternatives to mainstream cloud services, enabling users to maintain full data ownership and control over their digital infrastructure. The directory is structured through a hierarchical taxonomy that organizes a vast collection of applications into logical categories, ranging from media management and data analytics to private communication and team productivity tools. It dis

    awesomeawesome-listcloud
    View on GitHub↗299,516
  • transloadit/uppytransloadit avatar

    transloadit/uppy

    30,825View on GitHub↗

    Uppy is a modular web file upload framework designed for building browser-based uploaders. It functions as a resumable upload client and a system for integrating file uploads from a browser to backend servers or cloud storage. The project provides a headless UI upload component, offering logic hooks and headless elements that allow for the development of custom upload interfaces. It also serves as a cloud storage file importer, utilizing OAuth flows to authenticate and import files directly from remote providers, and as a browser-based media capture tool for uploading images or video clips fr

    TypeScriptdropboxencodingfile-uploader
    View on GitHub↗30,825
See all 30 alternatives to Carrierwave→

Frequently asked questions

What does carrierwaveuploader/carrierwave do?

CarrierWave is a Ruby file upload library used to manage the uploading, storing, and retrieval of files within web frameworks such as Rails and Sinatra. It functions as an Active Record file manager that associates uploaded assets with database records.

What are the main features of carrierwaveuploader/carrierwave?

The main features of carrierwaveuploader/carrierwave are: File Upload Management, Cloud Storage Integrations, Derivative Versions, Asset-to-Record Mappings, Cloud Storage Wrappers, Storage Abstractions, Derivative Media Versions, Image Processing.

What are some open-source alternatives to carrierwaveuploader/carrierwave?

Open-source alternatives to carrierwaveuploader/carrierwave include: thoughtbot/paperclip — Paperclip is an ActiveRecord file attachment manager that links database models to files stored on local disks or… fineuploader/fine-uploader — Fine Uploader is a browser file upload widget and manager that provides a frontend interface for transferring multiple… awesome-selfhosted/awesome-selfhosted — This project is a community-curated directory of open-source software designed for deployment in private server… transloadit/uppy — Uppy is a modular web file upload framework designed for building browser-based uploaders. It functions as a resumable… ling-drag0n/cloudpaste — CloudPaste is a secure file sharing platform and multi-backend storage aggregator. It unifies local and S3-compatible… blueimp/jquery-file-upload — This project is a jQuery-based file upload widget that provides a browser interface for selecting and transferring…