Browse free open source Go Frameworks and projects below. Use the toggles on the left to filter open source Go Frameworks by OS, license, language, programming language, and project status.

  • Ship Agents Faster Icon
    Ship Agents Faster

    Transform your applications and workflows into powerful agentic systems at global scale.

    Gemini Enterprise Agent Platform lets you rapidly build, scale, govern and optimize production-ready agents grounded in your organization's data. The platform enables developers to build custom or pre-built agents for virtually any use case. New customers get $300 in free credits.
    Start Free
  • MongoDB Atlas runs apps anywhere Icon
    MongoDB Atlas runs apps anywhere

    Deploy in 115+ regions with the modern database for every enterprise.

    MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
    Start Free
  • 1
    Prysm

    Prysm

    Go implementation of Ethereum proof of stake

    This is the core repository for Prysm, a Golang implementation of the Ethereum Consensus specification, developed by Prysmatic Labs. See the Changelog for details of the latest releases and upcoming breaking changes. A detailed set of installation and usage instructions as well as breakdowns of each individual component are available in the official documentation portal. If you still have questions, feel free to stop by our Discord. To participate in staking, you can join the official eth2 launchpad. The launchpad is the only recommended way to become a validator on mainnet. You can explore validator rewards/penalties via Bitfly's block explorer: beaconcha.in, and follow the latest blocks added to the chain on beaconscan. We are a grassroots team of software engineers all around the world building the code behind the Ethereum blockchain.
    Downloads: 152 This Week
    Last Update:
    See Project
  • 2
    GoFrame

    GoFrame

    GoFrame is a modular, powerful, high-performance development framework

    GoFrame is a modular, powerful, high-performance, and enterprise-class application development framework of Golang. Modular, loosely coupled design, rich components, out-of-the-box, automatic codes generating for efficiency, simple and easy to use, detailed documentation, interface designed components, with high scalability, fully supported tracing and error stack feature, specially developed and powerful ORM component. Robust engineering design specifications, convenient development CLI tool provide, OpenTelemetry observability features support, OpenAPIV3 documentation generating, automatically, and much, much more...ready to explore?
    Downloads: 103 This Week
    Last Update:
    See Project
  • 3
    Sliver

    Sliver

    Adversary Emulation Framework

    Sliver is an open source cross-platform adversary emulation/red team framework, it can be used by organizations of all sizes to perform security testing. Sliver's implants support C2 over Mutual TLS (mTLS), WireGuard, HTTP(S), and DNS and are dynamically compiled with per-binary asymmetric encryption keys. The server and client support MacOS, Windows, and Linux. Implants are supported on MacOS, Windows, and Linux (and possibly every Golang compiler target but we've not tested them all).
    Downloads: 94 This Week
    Last Update:
    See Project
  • 4
    go-zero

    go-zero

    A cloud-native Go microservices framework with cli tool

    go-zero is a web and rpc framework with lots of built-in engineering practices. It’s born to ensure the stability of busy services with resilience design and has been serving sites with tens of millions of users for years. go-zero (listed in CNCF Landscape: https://landscape.cncf.io/?selected=go-zero) is a web and rpc framework with lots of builtin engineering practices. It’s born to ensure the stability of busy services with resilience design and has been serving sites with tens of millions of users for years. go-zero contains simple API description syntax and code generation tool called goctl. You can generate Go, iOS, Android, Kotlin, Dart, TypeScript, JavaScript from .api files with goctl. builtin chained timeout control, concurrency control, rate limit, adaptive circuit breaker, adaptive load shedding, even no configuration needed.
    Downloads: 47 This Week
    Last Update:
    See Project
  • Custom VMs From 1 to 96 vCPUs With 99.95% Uptime Icon
    Custom VMs From 1 to 96 vCPUs With 99.95% Uptime

    General-purpose, compute-optimized, or GPU/TPU-accelerated. Built to your exact specs.

    Live migration and automatic failover keep workloads online through maintenance. One free e2-micro VM every month.
    Start Free
  • 5
    Erigon

    Erigon

    Ethereum implementation on the efficiency frontier

    Erigon is an implementation of Ethereum (execution client), on the efficiency frontier, written in Go. For an Archive node of Ethereum Mainnet we recommend >=3TB storage space: 1.8TB state (as of March 2022), 200GB temp files (can symlink or mount folder <datadir>/etl-tmp to another disk). Ethereum Mainnet Full node ( see --prune* flags): 400Gb. Erigon by default is "all in one binary" solution, but it's possible start TxPool as separated processes. Same true about: JSON RPC layer (RPCDaemon), p2p layer (Sentry), history download layer (Downloader), consensus. Don't start services as separated processes unless you have clear reason for it: resource limiting, scale, replace by your own implementation, security. How to start Erigon's services as separated processes, see in docker-compose.yml.
    Downloads: 38 This Week
    Last Update:
    See Project
  • 6
    RtspSimpleServer

    RtspSimpleServer

    ready-to-use RTSP / RTMP / LL-HLS / WebRTC server and proxy

    rtsp-simple-server is a ready-to-use and zero-dependency server and proxy that allows users to publish, read and proxy live video and audio streams. Publish live streams to the server Read live streams from the server. Proxy streams from other servers or cameras, always or on-demand. Streams are automatically converted from a protocol to another. For instance, it's possible to publish a stream with RTSP and read it with HLS. Serve multiple streams at once in separate paths Authenticate users; use internal or external authentication. Redirect readers to other RTSP servers (load balancing) Query and control the server through an HTTP API. Reload the configuration without disconnecting existing clients (hot reloading) Read Prometheus-compatible metrics. Run external commands when clients connect, disconnect, read or publish streams. Natively compatible with the Raspberry Pi Camera. Compatible with Linux, Windows and macOS, does not require any dependency or interpreter.
    Downloads: 37 This Week
    Last Update:
    See Project
  • 7
    Tun2Socks

    Tun2Socks

    tun2socks , powered by gVisor TCP/IP stack

    Proxy Everything: Handle all network traffic of any internet programs sent by the device through a proxy. Proxy Protocols: HTTP/Socks4/Socks5/Shadowsocks with authentication support for remote connections. Run Everywhere. Linux/macOS/Windows/FreeBSD/OpenBSD multi-platform support with specific optimization. Gateway Mode: Act as a layer three gateway to handle network traffic from other devices in the same network. Full IPv6 Support: All functions work in IPv6, tunnel IPv4 connections through IPv6 proxy and vice versa. Network Stack: Powered by user-space TCP/IP stack from Google container application kernel gVisor.
    Downloads: 29 This Week
    Last Update:
    See Project
  • 8
    Ninjabot

    Ninjabot

    A fast cryptocurrency platform for trading bot in Go

    A fast cryptocurrency trading bot framework implemented in Go. Ninjabot permits users to create and test custom strategies for spot markets. Ninjabot is an open-source platform that provides tools to implement custom strategies and backtests for trading cryptocurrencies in Go. Ninjabot CLI provides utilities commands to support backtesting and bot development. Currently, we only support Binance exchange. If you want to include support for other exchanges, you need to implement a new struct that implements the interface Exchange. You can check some examples in the exchange directory. You can create bots in telegram accessing BotFather. Telegram bot requires that your bot is running to control and get information about your account.
    Downloads: 24 This Week
    Last Update:
    See Project
  • 9
    Cosmos SDK

    Cosmos SDK

    A Framework for Building High Value Public Blockchains

    Cosmos is an ever-expanding ecosystem of interconnected apps and services, built for a decentralized future. The Cosmos SDK is a framework for building blockchain applications. Tendermint Core (BFT Consensus) and the Cosmos SDK are written in the Golang programming language. Cosmos SDK is used to build Gaia, the first implementation of the Cosmos Hub. The Cosmos SDK has mostly stabilized, but we are still making some breaking changes. The Cosmos SDK is an open-source framework for building multi-asset public Proof-of-Stake (PoS) blockchains, like the Cosmos Hub, as well as permission Proof-of-Authority (PoA) blockchains. Blockchains built with the Cosmos SDK are generally referred to as application-specific blockchains. The goal of the Cosmos SDK is to allow developers to easily create custom blockchains from scratch that can natively interoperate with other blockchains.
    Downloads: 23 This Week
    Last Update:
    See Project
  • $300 Free Credits to Build on Google Cloud Icon
    $300 Free Credits to Build on Google Cloud

    New customers can spin up VMs, build with AI, and query data at no cost.

    Put your $300 in credit toward real workloads, then keep building with free monthly usage for 20+ products. No commitment and no charge until you upgrade.
    Start Free
  • 10
    Hugo

    Hugo

    The world’s fastest framework for building websites

    Hugo is a popular, fast and flexible open source static site generator written in Go. It’s designed for speed and flexibility, while also being very easy to use. Hugo has the amazing ability to render a typical, moderately-sized website in just a fraction of a second. It takes Hugo around 1 millisecond to render each piece of content, making it the fastest tool of its kind. Hugo supports unlimited content types, and ships with pre-made templates to make SEO, analytics and many other functions quick and easy to achieve. It’s got a robust theming system, capable of producing even the most complex websites. Hugo works well with just about any kind of website, be it a blog, tumble or doc. It works on macOS, Windows, Linux and FreeBSD.
    Downloads: 14 This Week
    Last Update:
    See Project
  • 11
    Evilginx 3.0

    Evilginx 3.0

    Standalone man-in-the-middle attack framework

    Evilginx 3.0 is a standalone security-testing framework that demonstrates reverse-proxy phishing attacks against modern web authentication systems. It sits between a browser and a legitimate service to study how credentials and authenticated session data can be intercepted in adversary-in-the-middle scenarios. Because session tokens can remain valid after multifactor authentication, the project highlights limitations of some traditional 2FA deployments. The current implementation is written in Go and includes its own HTTP and DNS server components. Site-specific behavior is defined through modular phishing-site configurations known as phishlets. The project is intended for authorized penetration testing, red-team exercises, and defensive research into phishing-resistant authentication. Its capabilities can enable credential theft if misused, so testing should be restricted to systems and users covered by explicit permission.
    Downloads: 12 This Week
    Last Update:
    See Project
  • 12
    Goyave

    Goyave

    Elegant Golang REST API Framework (v5 WIP)

    Goyave is a Golang REST API framework aiming at cleanliness, fast development and power. Goyave is a progressive and accessible web application framework focused on REST APIs, aimed at making backend development easy and enjoyable. It has a philosophy of cleanliness and conciseness to make programs more elegant, easier to maintain and more focused. Get started quickly and master all its powerful functionalities thanks to its extensive documentation. Goyave has an expressive, elegant syntax, a robust structure and conventions. Minimalist calls and reduced redundancy are among Goyave's core principles. Develop faster and concentrate on the business logic of your application thanks to the many helpers and built-in functions. Goyave is accessible, yet powerful. The framework includes routing, request parsing, validation, localization, testing, authentication, error handling and more!
    Downloads: 12 This Week
    Last Update:
    See Project
  • 13
    webdav

    webdav

    Simple Go WebDAV server

    webdav command line interface is really easy to use so you can easily create a WebDAV server for your own user. By default, it runs on a random free port and supports JSON, YAML and TOML configuration. An example of a YAML configuration with the default configurations. There are more ways to customize how you run WebDAV through flags and environment variables. The allowed_* properties are optional, the default value for each of them will be *. exposed_headers is optional as well, but is not set if not defined.
    Downloads: 12 This Week
    Last Update:
    See Project
  • 14
    FrankenPHP

    FrankenPHP

    The modern PHP app server

    FrankenPHP is a modern application server for PHP built on top of the Caddy web server. FrankenPHP gives superpowers to your PHP apps thanks to its stunning features: Early Hints, worker mode, real-time capabilities, automatic HTTPS, HTTP/2, and HTTP/3 support. FrankenPHP works with any PHP app and makes your Laravel and Symfony projects faster than ever thanks to their official integrations with the worker mode. FrankenPHP can also be used as a standalone Go library to embed PHP in any app.
    Downloads: 11 This Week
    Last Update:
    See Project
  • 15
    Bubble Tea

    Bubble Tea

    A powerful little TUI framework

    The fun, functional and stateful way to build terminal apps. A Go framework based on The Elm Architecture. Bubble Tea is well-suited for simple and complex terminal applications, either inline, full-window, or a mix of both. Bubble Tea is in use in production and includes a number of features and performance optimizations we’ve added along the way. Among those is a standard framerate-based renderer, a renderer for high-performance scrollable regions which works alongside the main renderer, and mouse support. Be sure to check out Bubbles, a library of common UI components for Bubble Tea. Bubble Tea is based on the functional design paradigms of The Elm Architecture, which happen to work nicely with Go. It's a delightful way to build applications. By the way, the non-annotated source code for this program is available on GitHub. The tutorial assumes you have a working knowledge of Go.
    Downloads: 10 This Week
    Last Update:
    See Project
  • 16
    GraphJin

    GraphJin

    Build NodeJS / GO APIs in 5 minutes not weeks

    GraphJin is a magical library that instantly converts simple GraphQL into fast and secure APIs. Works with NodeJS and GO. Supports Postgres, MySQL, Yugabyte, AWS Aurora/RDS and Google Cloud SQL. GraphJin gives you an instant secure and fast GraphQL API without code. Just use a GraphQL query to define your API and GraphJin automagically converts it into a full-featured API. Build your backend APIs 100X faster. Works with NodeJS and GO. Supports several databases, Postgres, MySQL, Yugabyte, AWS Aurora/RDS and Google Cloud SQL. In production, all queries are always read from locally saved copies not from what the client sends hence clients cannot modify the query. This makes GraphJin very secure as its similar to building APIs by hand. The idea that GraphQL means that clients can change the query as they wish does not apply to GraphJin.
    Downloads: 10 This Week
    Last Update:
    See Project
  • 17
    golangci-lint

    golangci-lint

    Fast linters Runner for Go

    golangci-lint is a fast Go linters runner. It runs linters in parallel, uses caching, supports yaml config, has integrations with all major IDE and has dozens of linters included. ⚡ Very fast: runs linters in parallel, reuses Go build cache and caches analysis results. Yaml-based configuration. Integrations with VS Code, Sublime Text, GoLand, GNU Emacs, Vim, Atom, GitHub Actions. A lot of linters included, no need to install them. Minimum number of false positives because of tuned default settings. Nice output with colors, source code lines and marked identifiers.
    Downloads: 10 This Week
    Last Update:
    See Project
  • 18
    Fiber

    Fiber

    Express inspired web framework written in Go

    An Express-inspired web framework written in Go. Fiber is a Go web framework built on top of Fasthttp, the fastest HTTP engine for Go. It's designed to ease things up for fast development with zero memory allocation and performance in mind. Setting up routes for your application has never been so easy! The Express-like route definitions are easy to understand and work with. Serve your static HTML, CSS, and JavaScript files with ease by defining static routes. You can also serve the contents of multiple directories on the same route! Since Fiber is built on top of Fasthttp, your apps will enjoy unmatching performance! Don't believe us? Here's a benchmark that proves how Fiber shines compared to other frameworks. Are you building an API server? We've got you covered! Fiber is the perfect choice for building REST APIs in Go. Receiving and sending data is fast and easy!
    Downloads: 9 This Week
    Last Update:
    See Project
  • 19
    roaring

    roaring

    Roaring bitmaps in Go (golang)

    This library is used in production in several systems, it is part of the Awesome Go collection. There are also Java and C/C++ versions. The Java, C, C++ and Go version are binary compatible: e.g, you can save bitmaps from a Java program and load them back in Go, and vice versa. We have a format specification. Sets are a fundamental abstraction in software. They can be implemented in various ways, as hash sets, as trees, and so forth. In databases and search engines, sets are often an integral part of indexes. For example, we may need to maintain a set of all documents or rows (represented by numerical identifiers) that satisfy some property. Besides adding or removing elements from the set, we need fast functions to compute the intersection, the union, the difference between sets, and so on. To implement a set of integers, a particularly appealing strategy is the bitmap (also called bitset or bit vector).
    Downloads: 9 This Week
    Last Update:
    See Project
  • 20
    Google APIs Client Library for Go

    Google APIs Client Library for Go

    Auto-generated Google APIs for Go

    These are auto-generated Go libraries from the Google Discovery Service's JSON description files. Due to the auto-generated nature of this collection of libraries they may contain breaking changes from one release to the next. The generator itself and the code it produces are considered beta for this reason. These client libraries are officially supported by Google. However, the libraries are considered complete and are in maintenance mode. This means that we will address critical bugs and security issues but will not add any new features. If you're working with Google Cloud Platform APIs such as Datastore or Pub/Sub, please use the Cloud Client Libraries for Go instead. These are the new and idiomatic Go libraries targeted specifically at Google Cloud Platform Services. By default, each API will use Google Application Default Credentials for authorization credentials used in calling the API endpoints.
    Downloads: 8 This Week
    Last Update:
    See Project
  • 21
    MinIO Client Quickstart Guide

    MinIO Client Quickstart Guide

    Fast tool to manage MinIO clusters

    MinIO Client (mc) provides a modern alternative to UNIX commands like ls, cat, cp, mirror, diff, find etc. It supports filesystems and Amazon S3-compatible cloud storage service (AWS Signature v2 and v4). MinIO is distributed under GNU AGPLv3. See the source tree for complete information on all components of the work and their licenses. MinIO is a high-performance object storage solution that provides an Amazon Web Services S3-compatible API and supports all core S3 features. MinIO is built to deploy anywhere - public or private cloud, bare metal infrastructure, orchestrated environments, and edge infrastructure. This procedure deploys a Single-Node Single-Drive MinIO server onto Kubernetes for early development and evaluation of MinIO Object Storage and its S3-compatible API layer. An existing Kubernetes deployment where at least one Worker Node has a locally-attached drive.
    Downloads: 8 This Week
    Last Update:
    See Project
  • 22
    Pomerium

    Pomerium

    Pomerium is an identity and context-aware access proxy

    Secure, context-aware access that just works. Access internal resources securely. Implement zero trust. Achieve compliance. All without the headache of a VPN. For teams that prefer a hosted solution while keeping data governance. For organizations that need advanced scaling, access control, and governance capabilities. IT and developers need a scalable access control solution to keep users productive, happy, and secure. Pomerium uses identity and context to ensure secure access to internal applications, servers, and infrastructure even from untrusted networks. Pomerium adds authentication and authorization to any application or server, giving IT Management a centralized panel for organization-wide control. Assert compliance in your current architecture without giving up control over data tenancy. Pomerium supports your infrastructure and can be deployed in all environments: cloud, hybrid, or on-prem. From AWS to Kubernetes and more, your internal and 3rd-party apps are covered.
    Downloads: 8 This Week
    Last Update:
    See Project
  • 23
    Swarm Bee

    Swarm Bee

    Bee is a Swarm client implemented in Go

    Bee is a Swarm client implemented in Go. It’s the basic building block for the Swarm network: a private; decentralized; and self-sustaining network for permissionless publishing and access to your (application) data.There are two versioning schemes used in Bee that you should be aware of. The main Bee version does NOT follow strict Semantic Versioning. Bee hosts different peer-to-peer wire protocol implementations and individual protocol breaking changes would necessitate a bump in the major part of the version. Breaking changes are expected with bumps of the minor version component. New (backward-compatible) features and bug fixes are expected with a bump of the patch component. Major version bumps are reserved for significant changes in Swarm's incentive structure. The second set of versions that are important are the Bee's API versions (denoted in our Bee and Bee Debug OpenAPI specifications).
    Downloads: 8 This Week
    Last Update:
    See Project
  • 24
    VideoSrt

    VideoSrt

    Windows-GUI

    This is an open source Windows-GUI software tool that can recognize video speech and automatically generate subtitle SRT files. VideoSrtIt is written in Golanglanguage and developed based on lxn/walk Windows-GUI toolkit. Open source software tool that can recognize video speech and automatically generate subtitle SRT files. It is suitable for business scenarios that quickly and batch generate Chinese/English subtitles and text files for media (video/audio). Recognize video/audio speech to generate subtitle files (support Chinese-English translation, bilingual subtitles) Extract speech text from video/audio. Batch translation, filter processing/encoding SRT subtitle files. Using the Alibaba Cloud speech recognition interface, the accuracy is high, and the standard Mandarin/English recognition rate is over 95%. Video recognition does not need to upload the original video, which is convenient, fast and time-saving.
    Downloads: 8 This Week
    Last Update:
    See Project
  • 25
    decimal

    decimal

    Arbitrary-precision fixed-point decimal numbers in go

    Arbitrary-precision fixed-point decimal numbers in go. Note: Decimal library can "only" represent numbers with a maximum of 2^31 digits after the decimal point. The zero-value is 0, and is safe to use without initialization. Addition, subtraction, and multiplication with no loss of precision. Division with specified precision. Database/sql serialization/deserialization. JSON and XML serialization/deserialization. big.Int's API is built to reduce the number of memory allocations for maximal performance. This makes sense for its use-case, but the trade-off is that the API is awkward and easy to misuse. In contrast, it's difficult to make such mistakes with decimal. Decimals behave like other go numbers types: even though a = b will not deep copy b into a, it is impossible to modify a Decimal, since all Decimal methods return new Decimals and do not modify the originals. The downside is that this causes extra allocations, so Decimal is less performant.
    Downloads: 8 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • 3
  • 4
  • 5
  • Next