awesome-repositories.com
博客
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
gomods avatar

gomods/athens

0
View on GitHub↗
4,773 星标·539 分支·Go·MIT·3 次浏览docs.gomods.io↗

Athens

Athens is a Go module proxy server and dependency cache that provides a persistent storage system for Go dependencies. It acts as a mirror and datastore to ensure reproducible build environments by storing immutable copies of external packages, protecting against upstream deletions or outages.

The project distinguishes itself by serving as a secure gateway for private Go module hosting, utilizing authentication tokens, SSH keys, and GitHub Apps to retrieve dependencies from private version control systems. It further enables software dependency compliance through request filtering and checksum proxying, which prevents private module metadata from leaking to public servers.

The server supports a wide array of storage backends, including local disk, NoSQL databases, and S3-compatible cloud object stores. It includes capabilities for distributed dependency caching with shared locking to prevent redundant downloads across multiple instances and provides tools for pre-filling storage in air-gapped environments.

The server can be deployed via Docker containers, Kubernetes Helm charts, or various managed cloud platforms.

Features

  • Cached Module Servers - Serves as a Go module proxy server that caches dependencies locally to speed up builds.
  • Module Proxies - Acts as an HTTP server that forwards and caches Go module fetch requests on behalf of the Go command.
  • Data Storage - Provides a system for saving, retrieving, and managing the persistent storage of Go module dependencies.
  • Dependency Datastores - Provides a persistent storage system for Go dependencies using local disk, NoSQL, or S3-compatible backends.
  • Distributed Caching - Coordinates multiple proxy instances with shared storage and distributed locking to prevent redundant module downloads.
  • Module Version Listers - Queries upstream sources to provide a list of available versions for a specific Go module.
  • Immutable Version Archives - Persists downloaded dependencies permanently to avoid re-fetching and to guarantee availability regardless of upstream state.
  • Dependency Caching - Caches external libraries and dependencies to ensure version consistency and reduce network traffic.
  • Git-Based Dependency Fetching - Retrieves specific module versions by scanning and archiving tagged releases from Git repositories.
  • Go Module Dependencies - Stores and serves versioned Go modules as dependencies to integrate their APIs into projects.
  • Immutable Dependency Caches - Stores permanent, immutable copies of dependencies to guarantee reproducible builds regardless of upstream availability.
  • Immutable Dependency Caching - Store packages locally to protect against upstream deletions or outages and ensure builds remain reproducible over time.
  • Proxy Caches - Acts as a caching layer that stores immutable copies of external packages to protect against upstream deletions.
  • Private Repository Authentication - Manages credentials and secure access to private Go module indexes.
  • Reproducible Build Environments - Stores immutable copies of Go dependencies to ensure builds remain consistent even if original source repositories are deleted.
  • Module Mirrors - Replicates upstream Go modules to provide reliable access in air-gapped or restricted environments.
  • Private Module Gateways - Provides a secure gateway for retrieving and serving Go modules from private version control systems.
  • Private Module Hosting - Manages and retrieves private Go modules from secured version control systems using authentication tokens and SSH keys.
  • Module Proxy Protocols - Implements the standard Go module download API to serve immutable dependency archives to clients.
  • Private Module Fetching - Retrieves and stores modules from private version control systems using secure authentication.
  • Private Repository Access - Provides mechanisms for authenticating and retrieving dependencies from private version control repositories.
  • VCS Authentication Integration - Handles authentication for private repositories using GitHub Apps, SSH keys, and configuration files.
  • Version Control Authentications - Implements secure mechanisms for authenticating with version control systems using cryptographic keys.
  • Store Backend Configurations - Provides configuration to wire different backends like Redis or filesystem for storing module data.
  • File Store Backends - Supports multiple configurable backends for storing downloaded module files, including S3 and local filesystems.
  • Multi-Backend Abstractions - Provides an abstraction layer that decouples data persistence from specific local, NoSQL, or cloud object storage implementations.
  • VCS Credential Passing - Allows sharing of local version control configuration files to authorize dependency downloads.
  • Cloud Storage Backends - Supports persisting cached module archives in remote cloud storage buckets and blob stores.
  • Container Storage Persistence - Maps host-level storage to the server process to ensure cached module data survives restarts and container recreation.
  • Private Module Path Markings - Marks specific module patterns as private to bypass public proxies and checksum databases.
  • Distributed Lock Coordination - Uses shared locking mechanisms to prevent redundant downloads across multiple server instances.
  • Download Coordination - Synchronizes file retrieval across multiple server instances using distributed locks to prevent redundant downloads.
  • Storage Backend Configurations - Allows the underlying storage layer to be configured across local disks, NoSQL databases, or cloud object stores.
  • Storage Backend Integrations - Implements a flexible integration layer for connecting to various external storage providers.
  • Latest Version Identification - Identifies the most recent release tag or commit hash for a module by scanning upstream sources.
  • Checksum Interception - Intercepts and filters checksum requests to prevent private module metadata from leaking to public servers.
  • Checksum Request Proxying - Routes checksum verification requests to a central server and filters patterns to protect private dependency names.
  • Metadata Leak Prevention - Intercepts checksum requests to ensure private module metadata is not leaked to public servers.
  • Module Metadata Retrievers - Returns available versions and detailed module definition files for requested dependencies.
  • GitHub Authentication - Integrates with GitHub Apps and credential helpers to access private repositories.
  • Module Path Blocking - Uses exclude lists to block the retrieval of specific public module patterns.
  • Compliance-Driven Security Controls - Controls the flow of external packages to satisfy organizational security and data privacy requirements.
  • Dependency Compliance - Filters and blocks specific Go modules to control external package flow and satisfy organizational security requirements.
  • Module Access Controls - Provides the ability to restrict or grant access to specific modules based on organizational needs.
  • Module Request Filtering - Filters module requests using patterns to route private dependencies internally or block public modules.
  • SSH Authentication - Supports the use of SSH private keys or agents to authenticate and clone dependencies.
  • Module Detail Retrievers - Provides an API to retrieve version, license, and README details for module paths.
  • Module Source Code Retrievers - Delivers the full source code of specific module versions as compressed archives for download.
  • Module Loading Filters - Restricts which modules are retrieved using filter files and validation hooks.
  • Download Synchronization - Prevents duplicate download requests when multiple server instances share storage by using distributed locking.
  • Dependency Pre-filling - Load specific dependencies into the local disk cache manually to enable operation in environments without internet access.
  • Module Request Routings - Directs requests for missing dependencies to configured secondary mirrors or original version control systems.
  • Request Filtering - Blocks or redirects module requests using defined patterns to manage private dependencies and maintain security compliance.
  • Dependency Management - GOPROXY server.
  • 开发者工具 - Proxy server for Go modules.

Star 历史

gomods/athens 的 Star 历史图表gomods/athens 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI

Athens 的开源替代方案

相似的开源项目,按与 Athens 的功能重合度排序。
  • goproxyio/goproxygoproxyio 的头像

    goproxyio/goproxy

    5,871在 GitHub 上查看↗

    goproxy is a Go module proxy server that caches and serves Go module dependencies to accelerate builds and improve reliability. It acts as an HTTP server that proxies requests to upstream sources, caching downloaded modules locally so repeated requests are served instantly without re-downloading. The project provides a mirror that stores a read-only copy of public Go modules for offline or accelerated access, and can bypass checksum database verification for private or unrecognized modules. The proxy is configured entirely through Go environment variables like GOPROXY, GONOSUMCHECK, and GONOS

    Gogogolanggoproxy
    在 GitHub 上查看↗5,871
  • goproxy/goproxy.cngoproxy 的头像

    goproxy/goproxy.cn

    7,082在 GitHub 上查看↗

    goproxy.cn is a Go module proxy and checksum database proxy designed to manage the availability and integrity of Go software modules. It provides a regional mirror of modules to ensure reliable dependency downloads for build pipelines and CI/CD optimization. The service utilizes a content delivery network for module mirroring and distribution to reduce latency. It employs a lazy-loading proxy cache that retrieves and stores modules from primary sources on demand to optimize storage. The platform includes software download analytics to track version-specific download counts and usage trends.

    HTMLchinagogoproxy
    在 GitHub 上查看↗7,082
  • memcached/memcachedmemcached 的头像

    memcached/memcached

    14,132在 GitHub 上查看↗

    Memcached is a high-performance, distributed, in-memory key-value storage and request routing engine. It functions as a volatile data store designed to accelerate dynamic applications by caching objects in RAM, thereby reducing backend database load and providing sub-millisecond response times. The system utilizes a specialized architecture that organizes memory into fixed-size slabs to minimize fragmentation and maximize throughput for high-concurrency workloads. The project distinguishes itself through a multi-threaded, lock-friendly design that scales across CPU cores and supports complex

    C
    在 GitHub 上查看↗14,132
  • phpredis/phpredisphpredis 的头像

    phpredis/phpredis

    10,219在 GitHub 上查看↗

    phpredis is a C-based native extension that bridges PHP applications with Redis servers for high-performance data storage and retrieval. It serves as an interface for manipulating strings, hashes, lists, sets, and sorted sets while providing a direct path for executing Redis commands and server-side scripts. The extension provides comprehensive support for distributed environments and high availability. It interfaces with Redis Cluster to distribute data across multiple nodes using hash slots and manages Redis Sentinel for service discovery and automatic failover. It also enables shared state

    Cclusterkeydbphp
    在 GitHub 上查看↗10,219
查看 Athens 的所有 30 个替代方案→

常见问题解答

gomods/athens 是做什么的?

Athens is a Go module proxy server and dependency cache that provides a persistent storage system for Go dependencies. It acts as a mirror and datastore to ensure reproducible build environments by storing immutable copies of external packages, protecting against upstream deletions or outages.

gomods/athens 的主要功能有哪些?

gomods/athens 的主要功能包括:Cached Module Servers, Module Proxies, Data Storage, Dependency Datastores, Distributed Caching, Module Version Listers, Immutable Version Archives, Dependency Caching。

gomods/athens 有哪些开源替代品?

gomods/athens 的开源替代品包括: goproxyio/goproxy — goproxy is a Go module proxy server that caches and serves Go module dependencies to accelerate builds and improve… goproxy/goproxy.cn — goproxy.cn is a Go module proxy and checksum database proxy designed to manage the availability and integrity of Go… memcached/memcached — Memcached is a high-performance, distributed, in-memory key-value storage and request routing engine. It functions as… phpredis/phpredis — phpredis is a C-based native extension that bridges PHP applications with Redis servers for high-performance data… lmcache/lmcache — LMCache is a distributed key-value cache manager and tiering system designed to accelerate large language model… nrwl/nx — This project is a build orchestration engine and development toolkit designed for managing large-scale monorepos. It…