A RubyGems.org cache and private gem server for faster, offline bundling and secure internal gem distribution.
Gemstash is a server application that functions as both a caching proxy for public RubyGems repositories and a private gem source for internal use. It solves the problems of slow gem installations, offline bundling capabilities, and secure distribution of proprietary Ruby libraries within organizations.
Ruby development teams and organizations that use Bundler across multiple machines, need faster gem installations, work in offline or restricted network environments, or develop private gems they don't want to publish publicly.
Developers choose Gemstash because it integrates seamlessly with existing Ruby tooling, requires minimal configuration, significantly speeds up bundling through intelligent caching, and provides a secure way to host private gems without relying on external services.
A RubyGems.org cache and private gem server
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Gem files (*.gem) are cached permanently, enabling offline bundling once populated, as explicitly stated in the README.
Serves as a private gem source for internal libraries, keeping proprietary code within your network without external dependencies.
Works via simple mirror configuration in Bundler, requiring minimal setup changes, as shown in the Quickstart Guide.
Allows fallback to RubyGems.org with timeout settings, ensuring reliability even if the cache is unavailable or unresponsive.
Uses SQLite by default for private gem metadata, which may not scale well for large teams or high-volume usage without database customization.
Caches dependency metadata in memory by default, which can be inefficient for high-traffic deployments unless configured with memcached.
The underlying Puma and Rack server is not customizable, restricting advanced deployment tweaks and performance optimizations.