gomods /athens

A Go module datastore and proxy

★ 4,815⑂ 551👁 91⑃ 1,263● 822▤ 41
GoCreated 2018-02-26docs.gomods.io
4,815
stars
+0+-1+10
551
forks
91
watchers
1,263
prs
822
issues
41
releases
–
discussions

README

Welcome To Athens, Gophers!

!Athens Banner









Welcome to the Athens project! Athens is an open source, enterprise ready implementation of the Go Module proxy for the Go Modules download API.

See our documentation site https://docs.gomods.io for more details on the project.

We are looking for people who would like to become core maintainers of this project. Please see issue 1734 for more details.

 Project Status

Development teams at several companies are using Athens in their everyday development workflows.

This means that they are running their own Athens servers, hooking them up to their own storage backends (see here for the list of storage backends that Athens supports), and configuring their local Go development environments to use that Athens server.

We encourage you to try it out, consider using it in your development workflow, and letting us know if you are using it by adding a comment to this GitHub issue.

 More Details Please!

The proxy implements the Go modules download protocol.

Athens proxies are highly configurable, so they can work for lots of different deployments. For example, proxies support a wide variety of storage drivers including:

- Cloud blob storage services
- MongoDB
- Content distribution networks (CDNs)
- Shared disk
- In-memory

 Development

See DEVELOPMENT.md for details on how to set up your development environment and start contributing code.

Speaking of contributing, read on!

 Contributing

If you use Athens for your development workflow, we hope that you'll consider contributing back to the project. Athens is widely used and has plenty of interesting work to do, from technical challenges to technical documentation to release management. We have a wonderful community that we would love you to be a part of. Absolutely everyone is welcome.

The quickest way to get involved is by filing issues if you find bugs or find that you need Athens to do something it doesn't.

If you'd like to help us tackle some of the technical / code challenges and you're familiar with the GitHub contribution process, you'll probably be familiar with our process for contributions. You can optionally find or submit an issue, and then submit a pull request (PR) to fix that issue. See here for more of the project-specific details.

If you're not familiar with the standard GitHub contribution process, which Athens mostly follows, please see this section of our documentation to learn how to contribute. You can also take advantage of @bketelsen's great video on how to contribute code. The information in these documents and videos will help you not only with this project, but can also help you contribute to many other projects on GitHub.

If you decide to contribute but aren't sure what to work on, we have a well maintained list of good first issues that you should look at. If you find one that you would like to work on, please post a comment saying "I want to work on this", and then it's all yours to begin working on.

We do re

Snapshot: 2026-11-04T14:00:00Z · Data license Apache-2.0 · JSON