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.

  • $300 Free Credits for Your Google Cloud Projects Icon
    $300 Free Credits for Your Google Cloud Projects

    Start building on Google Cloud with $300 in free credits. No commitment, no credit card required until you're ready to scale.

    Launch your next project with $300 in free Google Cloud credits—no strings attached. Test, build, and deploy without risk. Use your credits across the entire Google Cloud platform to find what works best for your needs. After your credits are used, continue with always-free tier services. Only pay when you're ready to scale. Sign up in minutes and start exploring.
    Start Free Trial
  • Our Free Plans just got better! | Auth0 Icon
    Our Free Plans just got better! | Auth0

    With up to 25k MAUs and unlimited Okta connections, our Free Plan lets you focus on what you do best—building great apps.

    You asked, we delivered! Auth0 is excited to expand our Free and Paid plans to include more options so you can focus on building, deploying, and scaling applications without having to worry about your security. Auth0 now, thank yourself later.
    Try free now
  • 1
    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: 63 This Week
    Last Update:
    See Project
  • 2
    compress

    compress

    Optimized Go Compression Packages

    This package provides various compression algorithms. zstandard compression and decompression in pure Go. S2 is a high-performance replacement for Snappy. Optimized deflate packages which can be used as a dropin replacement for gzip, zip and zlib. snappy is a drop-in replacement for github.com/golang/snappy offering better compression and concurrent streams. huff0 and FSE implementations for raw entropy encoding. gzhttp Provides client and server wrappers for handling gzipped requests efficiently. pgzip is a separate package that provides a very fast parallel gzip implementation. Stream decompression is now faster on asynchronous since the goroutine allocation much more effectively splits the workload. On typical streams, this will typically use 2 cores fully for decompression. When a stream has finished decoding no goroutines will be left over, so decoders can now safely be pooled and still be garbage collected.
    Downloads: 56 This Week
    Last Update:
    See Project
  • 3
    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: 51 This Week
    Last Update:
    See Project
  • 4
    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: 42 This Week
    Last Update:
    See Project
  • Cut Data Warehouse Costs by 54% Icon
    Cut Data Warehouse Costs by 54%

    Easily migrate from Snowflake, Redshift, or Databricks with free tools.

    BigQuery delivers 54% lower TCO with exabyte scale and flexible pricing. Free migration tools handle the SQL translation automatically.
    Try Free
  • 5
    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: 37 This Week
    Last Update:
    See Project
  • 6
    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: 31 This Week
    Last Update:
    See Project
  • 7
    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: 28 This Week
    Last Update:
    See Project
  • 8
    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: 28 This Week
    Last Update:
    See Project
  • 9
    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: 24 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.
    Try Free
  • 10
    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: 24 This Week
    Last Update:
    See Project
  • 11
    Benthos

    Benthos

    Fancy stream processing made operationally mundane

    Benthos is a high performance and resilient stream processor, able to connect various sources and sinks in a range of brokering patterns and perform hydration, enrichments, transformations and filters on payloads. It comes with a powerful mapping language, is easy to deploy and monitor, and ready to drop into your pipeline either as a static binary, docker image, or serverless function, making it cloud native as heck. Delivery guarantees can be a dodgy subject. Benthos processes and acknowledges messages using an in-process transaction model with no need for any disk persisted state, so when connecting to at-least-once sources and sinks it's able to guarantee at-least-once delivery even in the event of crashes, disk corruption, or other unexpected server faults. This behaviour is the default and free of caveats, which also makes deploying and scaling Benthos much simpler.
    Downloads: 21 This Week
    Last Update:
    See Project
  • 12
    Task

    Task

    A task runner / simpler Make alternative written in Go

    Task is a task runner / build tool that aims to be simpler and easier to use than, for example, GNU Make. Since it's written in Go, Task is just a single binary and has no other dependencies, which means you don't need to mess with any complicated install setups just to use a build tool. Easy installation: just download a single binary, add to $PATH and you're done! Or you can also install using Homebrew, Snapcraft, or Scoop if you want. Available on CIs: by adding this simple command to install on your CI script and you're ready to use Task as part of your CI pipeline; Truly cross-platform: while most build tools only work well on Linux or macOS, Task also supports Windows thanks to this shell interpreter for Go. Great for code generation: you can easily prevent a task from running if a given set of files haven't changed since last run (based either on its timestamp or content).
    Downloads: 21 This Week
    Last Update:
    See Project
  • 13
    docker-gen

    docker-gen

    Generate files from docker container meta-data

    docker-gen is a file generator that renders templates using docker container meta-data. Centralized logging - fluentd, logstash or other centralized logging tools that tail the containers JSON log file or files within the container. Log Rotation - logrotate files to rotate container JSON log files. Reverse Proxy Configs - nginx, haproxy, etc. reverse proxy configs to route requests from the host to containers. Service Discovery - Scripts (python, bash, etc..) to register containers within etcd, hipache, etc. Docker-gen can be bundled inside of a container along-side applications. nginx-proxy/nginx-proxy trusted build is an example of running docker-gen within a container along-side nginx. jwilder/docker-register is an example of running docker-gen within a container to do service registration with etcd.
    Downloads: 21 This Week
    Last Update:
    See Project
  • 14
    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: 20 This Week
    Last Update:
    See Project
  • 15
    ko Easy Go Containers

    ko Easy Go Containers

    Build and deploy Go applications on Kubernetes

    ko is a simple, fast container image builder for Go applications. It's ideal for use cases where your image contains a single Go application without any/many dependencies on the OS base image (e.g., no cgo, no OS package dependencies). ko builds images by effectively executing go build on your local machine, and as such doesn't require docker to be installed. This can make it a good fit for lightweight CI/CD use cases. ko makes multi-platform builds easy, produces SBOMs by default, and includes support for simple YAML templating which makes it a powerful tool for Kubernetes applications.
    Downloads: 20 This Week
    Last Update:
    See Project
  • 16
    Bifrost

    Bifrost

    Middleware for production-oriented MySQL

    Heterogeneous middleware for production-oriented MySQL, MariaDB, kafka synchronization to Redis, MongoDB, ClickHouse and other services. And this Bifrost can synchronize the full amount of data to multiple targets in real time. Support MySQL, MariaDB all storage types. Interface-based dynamic and flexible configuration of different data tables and target libraries. Multiple data sources, multiple target library support. Both incremental and full data synchronization are supported. One Binlog parsing thread, multiple target libraries are synchronized in parallel. Automatically restore configuration after restarting after downtime, accurate control of location. Support monitoring and alarm functions such as Email and WeChat enterprise account. Provide third-party monitoring platform access interface (Http Basic authentication) HTTP API. MySQL, ClickHouse plugin supports DDL synchronization.
    Downloads: 19 This Week
    Last Update:
    See Project
  • 17
    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: 17 This Week
    Last Update:
    See Project
  • 18
    Prometheus Redis Metrics Exporter

    Prometheus Redis Metrics Exporter

    Prometheus Exporter for Redis Metrics. Supports Redis 2.x, 3.x, 4.x, 5

    Prometheus exporter for Redis metrics. Supports Redis 2.x, 3.x, 4.x, 5.x, 6.x, and 7.x. To have instances in the drop-down as human readable names rather than IPs, it is suggested to use instance relabelling. The Prometheus docs have a very informative article on how multi-target exporters are intended to work. Run the exporter with the command line flag --redis.addr= so it won't try to access the local instance every time the /metrics endpoint is scraped. If authentication is needed for the Redis instances then you can set the password via the --redis.password command line option of the exporter (this means you can currently only use one password across the instances you try to scrape this way. Use several exporters if this is a problem). If your Redis instance requires authentication then there are several ways how you can supply a username (new in Redis 6.x with ACLs) and a password.
    Downloads: 16 This Week
    Last Update:
    See Project
  • 19
    XIU2/CloudflareSpeedTest

    XIU2/CloudflareSpeedTest

    "Preferred IP" Test Cloudflare CDN latency and speed

    "Preferred IP" Test Cloudflare CDN latency and speed, get the fastest IP (IPv4 / IPv6)! In addition, other CDN / website IPs are also supported. Many foreign websites are using Cloudflare CDN, but the IPs assigned to visitors from mainland China are not friendly (high latency, high packet loss, and slow speed). Although Cloudflare discloses all IP segments , it would be exhausting to find the one that suits you among so many IPs, so this software came into existence. After the speed measurement is completed, the fastest 10 IPs will be displayed by default. The default parameters are used for direct running. If you want the speed measurement results to be more comprehensive and meet your own requirements, you can customize the parameters. This project also supports other CDN / website IP delay speed measurement.
    Downloads: 15 This Week
    Last Update:
    See Project
  • 20
    GoReleaser

    GoReleaser

    Deliver Go binaries as fast and easily as possible

    GoReleaser builds Go binaries for several platforms, creates a GitHub release and then pushes a Homebrew formula to a tap repository. All that wrapped in your favorite CI. Cross-compile your Go project. Release to GitHub, GitLab and Gitea. Create nightly builds. Create Docker images and manifests. Create Linux packages and Homebrew taps. Sign artifacts, checksums and container images. Announce new releases on Twitter, Slack, Discord and others. Generate SBOMs (Software Bill of Materials) for binaries and container images. GoReleaser was created to solve a problem we all had at some point: releasing software is boring and error prone. Generally speaking, those scripts tend to not be reusable and have dependencies on many other tools - which makes it hard to run the process on other machines. GoReleaser aims to make all these scripts obsolete: instead of writing scripts, you write a simple YAML configuration file; instead of many tools, you (usually) only need a single goreleaser binary.
    Downloads: 13 This Week
    Last Update:
    See Project
  • 21
    MinDoc

    MinDoc

    Document management system developed for the IT team

    MinDoc is a simple and easy-to-use document management system developed for the IT team. MinDoc's predecessor was the SmartWiki document system. SmartWiki is a document management system developed based on the PHP framework laravel. Because the deployment of PHP is too complicated for ordinary users, it was developed instead of Golang. It can facilitate user deployment and practicality. The starting point for development is that the company's IT department needs a simple and practical system for document management and sharing of project interfaces. Its function and interface originate from kancloud. It can be used to store daily interface documents, database dictionaries, manual descriptions and other documents. Built-in project management, user management, permission management and other functions can meet the document management needs of most small and medium teams.
    Downloads: 13 This Week
    Last Update:
    See Project
  • 22
    go-tagexpr

    go-tagexpr

    An interesting go struct tag expression syntax for field validation

    An interesting go struct tag expression syntax for field validation, etc. Support for a variety of common operators. Support for accessing arrays, slices, members of the dictionary. Support access to any field in the current structure. Support access to nested fields, non-exported fields, etc. Support registers function expression. Built-in len, sprintf, regexp functions. Support single mode and multiple mode to define the expression. Parameter check subpackage. Use offset pointers to directly take values, better performance. Required go version ≥1.9.
    Downloads: 12 This Week
    Last Update:
    See Project
  • 23
    testkube

    testkube

    Kubernetes-native testing framework for test execution

    Welcome to Testkube - Your friendly cloud-native testing framework for Kubernetes. Testkube natively integrates test orchestration and execution into Kubernetes and your CI/CD/GitOps pipeline. It decouples test artifacts and execution from CI/CD tooling; tests are meant to be part of your cluster's state and can be executed as needed. Out-of-the-box integrations with all popular testing tools and CI/CD systems mean no custom scripts are required to orchestrate your tests from any CI/CD/GitOps pipeline. The central dashboard and control plane let you configure, orchestrate & schedule your tests, share & analyze test results & artifacts, manage users & permissions, and more. Testkube uses Kubernetes-native constructs to store and run your test definitions ensuring compatibility, security, and scalability for all your testing needs. Advanced test orchestration functionality enables you to parameterize and parallelize your load, API, and UI tests to simulate real-life usage scenarios.
    Downloads: 12 This Week
    Last Update:
    See Project
  • 24
    Kubernetes Capsule

    Kubernetes Capsule

    Multi-tenancy and policy-based framework for Kubernetes

    Capsule implements a multi-tenant and policy-based environment in your Kubernetes cluster. It is designed as a micro-services-based ecosystem with a minimalist approach, leveraging only on upstream Kubernetes. Kubernetes introduces the Namespace object type to create logical partitions of the cluster as isolated slices. However, implementing advanced multi-tenancy scenarios, it soon becomes complicated because of the flat structure of Kubernetes namespaces and the impossibility to share resources among namespaces belonging to the same tenant. To overcome this, cluster admins tend to provision a dedicated cluster for each groups of users, teams, or departments. As an organization grows, the number of clusters to manage and keep aligned becomes an operational nightmare, described as the well known phenomena of the clusters sprawl.
    Downloads: 11 This Week
    Last Update:
    See Project
  • 25
    Common Expression Language

    Common Expression Language

    Fast, portable, non-Turing complete expression evaluation

    The Common Expression Language (CEL) is a non-Turing complete language designed for simplicity, speed, safety, and portability. CEL's C-like syntax looks nearly identical to equivalent expressions in C++, Go, Java, and TypeScript. A CEL "program" is a single expression. The examples have been tagged as java, go, and typescript within the markdown to showcase the commonality of the syntax. CEL is ideal for lightweight expression evaluation when a fully sandboxed scripting language is too resource intensive. To get started, try the Codelab. Determine the variables and functions you want to provide to CEL. Parse and check an expression to make sure it's valid. Then evaluate the output AST against some input. Checking is optional but strongly encouraged. The parsing phase indicates whether the expression is syntactically valid and expands any macros present within the environment. Parsing and checking are more computationally expensive than evaluation.
    Downloads: 10 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • 3
  • 4
  • 5
  • Next
Auth0 Logo