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

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

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
fog avatar

fog/fog

0
View on GitHub↗
4,297 stars·1,451 forks·Ruby·MIT·12 viewsfog.github.io↗

Fog

Fog is a Ruby cloud infrastructure SDK that provides a standardized interface for managing compute, storage, and network resources across multiple cloud providers. It utilizes a multi-cloud abstraction layer to translate generic resource requests into provider-specific API calls, unifying infrastructure control through a consistent set of Ruby objects.

The project includes a cloud API mocking framework that simulates provider responses and resource behavior in memory. This allows for the testing of infrastructure integration logic without making actual network requests or incurring provider costs.

The SDK covers several core capability areas, including virtual machine management, server provisioning, and remote command execution. It provides tools for cloud storage operations and metadata inspection, as well as the administration of DNS zones and content delivery network distributions.

Features

  • Multi-Cloud Infrastructure Control - Provides a single standardized Ruby interface for controlling compute, storage, and network resources across multiple cloud vendors.
  • Provider Abstraction Layers - Translates generic resource requests into provider-specific API calls through a consistent set of Ruby objects.
  • Cloud Provider Integrations - Provides local implementations of cloud service APIs to simulate behavior and verify logic without network requests.
  • Cloud Object Storage - Provides a consistent interface for storing and retrieving unstructured data as blobs in cloud environments.
  • Cloud Infrastructure SDKs - Provides a comprehensive Ruby SDK for the programmatic management of multi-cloud compute, network, and storage resources.
  • Virtual Machine Management - Controls the full lifecycle of virtual machine instances across different cloud platforms.
  • Cloud Service Mocks - Includes a framework for simulating cloud service APIs to verify application logic without live infrastructure.
  • Cloud Resource Managers - Provides a unified interface to discover, catalog, and control virtual machines, storage, and network resources across clouds.
  • Infrastructure Abstraction Layers - Implements a modular interface that translates generic resource requests into provider-specific API calls.
  • Remote Command Execution - Provides capabilities for running shell commands on cloud servers and retrieving standard output and exit status.
  • Server Provisioning - Automates the deployment and configuration of servers, including security groups and SSH keys.
  • DNS Record Management - Configures DNS record types such as A and CNAME to map domains to IP addresses across cloud providers.
  • Zone Management - Administrates public and private DNS zones and retrieves the nameservers required for registrar updates.
  • Cloud Provider Abstractions - Provides a generalized interface layer that decouples the SDK from provider-specific cloud and hypervisor APIs.
  • Cloud API Mocks - Simulates provider API responses and resource behavior in memory to test infrastructure code without incurring costs.
  • Cloud Storage Services - Offers a unified Ruby API for managing remote object storage and local filesystems.
  • Cloud Storage Wrappers - Provides an abstraction layer that decouples file operations from specific cloud storage provider APIs.
  • Content Delivery Networks - Provides high-level control over content delivery networks, including distribution management and edge cache invalidation.
  • Local Storage Emulators - Simulates cloud-based object storage using local directories to facilitate development and testing of upload workflows.
  • In-Memory Service Mocks - Simulates cloud provider behavior in memory to allow infrastructure integration testing without external network calls.
  • Dynamic Resource Mapping - Implements a configurable internal lookup mechanism to map generic resource requests to provider-specific API endpoints.
  • CDN Distribution Management - Implements tools for managing CDN distributions, including protocol policies and custom CNAME mappings.
  • Cloud DNS Services - Offers a standardized interface for creating DNS zones and managing record types across multiple cloud providers.
  • CDN Integration - Provides a standardized interface for administering both DNS zones and CDN distributions across cloud services.
  • Credential Resolution Chains - Resolves authentication keys by scanning factory methods, environment variables, and config files in a prioritized fallback order.
  • Credential Resolution - Retrieves cloud authentication keys from multiple sources including environment variables and configuration files.
  • Interface-Driven Provider Implementations - Enforces a strict set of required methods for all cloud provider implementations to ensure a consistent cross-provider API.
  • Cloud Infrastructure - Comprehensive library for managing multiple cloud service providers.
  • File Handling - Cloud services library for storage and more.

Star history

Star history chart for fog/fogStar history chart for fog/fog

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

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 Fog

Similar open-source projects, ranked by how many features they share with Fog.
  • google/go-cloudgoogle avatar

    google/go-cloud

    9,891View on GitHub↗

    go-cloud is a toolkit of cloud-agnostic libraries that provide portable Go interfaces for interacting with common cloud services. It enables multi-cloud application development by decoupling business logic from specific provider API implementations. The project utilizes a driver-based system to map generic interface calls to vendor-specific requests. This allows applications to switch between different cloud backends for blob storage, relational databases, and asynchronous publish-subscribe messaging without changing the core application code. Beyond storage and messaging, the toolkit includ

    Go
    View on GitHub↗9,891
  • kubernetes-sigs/external-dnskubernetes-sigs avatar

    kubernetes-sigs/external-dns

    8,999View on GitHub↗

    ExternalDNS is a controller that automatically synchronizes Kubernetes resource states with external DNS providers. It monitors cluster resources such as services, ingresses, and gateway APIs to dynamically create and update DNS records, enabling automated service discovery and external traffic management. The project features a provider-agnostic interface that supports a wide array of cloud-managed vendors and on-premises providers, as well as an extension system for custom providers via webhooks and sidecars. It implements a reconciliation loop that uses resource annotations and custom reso

    Goawsclouddnsdns
    View on GitHub↗8,999
  • powerdns-admin/powerdns-adminPowerDNS-Admin avatar

    PowerDNS-Admin/PowerDNS-Admin

    2,786View on GitHub↗

    PowerDNS-Admin is a web-based management interface and administration tool for PowerDNS. It provides a graphical dashboard to manage DNS zones and resource records, replacing the need for manual configuration file edits or command line tools. The system implements a role-based access control layer to restrict zone visibility and administrative functions based on assigned user permissions. It includes a dedicated server monitor for tracking the health, configuration, and performance statistics of PowerDNS backend servers. The platform covers a broad range of administrative capabilities, inclu

    Pythonpdnspowerdnspowerdns-admin
    View on GitHub↗2,786
  • theforeman/foremantheforeman avatar

    theforeman/foreman

    2,823View on GitHub↗

    Foreman is a lifecycle infrastructure management platform used for automating the provisioning, configuration, and monitoring of physical, virtual, and cloud servers. It serves as a central hub for managing the entire lifespan of a server, from initial deployment and operating system upgrades to decommissioning and auditing. The platform functions as a hybrid cloud manager and bare-metal provisioning tool, providing a unified interface to control virtual machine lifecycles across diverse hypervisors and public cloud providers. It automates hardware discovery and operating system deployment us

    Rubycloudconfig-managementforeman
    View on GitHub↗2,823
See all 30 alternatives to Fog→

Frequently asked questions

What does fog/fog do?

Fog is a Ruby cloud infrastructure SDK that provides a standardized interface for managing compute, storage, and network resources across multiple cloud providers. It utilizes a multi-cloud abstraction layer to translate generic resource requests into provider-specific API calls, unifying infrastructure control through a consistent set of Ruby objects.

What are the main features of fog/fog?

The main features of fog/fog are: Multi-Cloud Infrastructure Control, Provider Abstraction Layers, Cloud Provider Integrations, Cloud Object Storage, Cloud Infrastructure SDKs, Virtual Machine Management, Cloud Service Mocks, Cloud Resource Managers.

What are some open-source alternatives to fog/fog?

Open-source alternatives to fog/fog include: google/go-cloud — go-cloud is a toolkit of cloud-agnostic libraries that provide portable Go interfaces for interacting with common… kubernetes-sigs/external-dns — ExternalDNS is a controller that automatically synchronizes Kubernetes resource states with external DNS providers. It… theforeman/foreman — Foreman is a lifecycle infrastructure management platform used for automating the provisioning, configuration, and… powerdns-admin/powerdns-admin — PowerDNS-Admin is a web-based management interface and administration tool for PowerDNS. It provides a graphical… capitalone/cloud-custodian — Cloud Custodian is a multi-cloud governance engine and policy enforcement tool designed to automate security,… boto/boto — Boto is a Python SDK and API wrapper for Amazon Web Services. It serves as a programmatic interface for managing and…