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.

  • 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
  • Go From AI Idea to AI App Fast Icon
    Go From AI Idea to AI App Fast

    One platform to build, fine-tune, and deploy ML models. No MLOps team required.

    Access Gemini 3 and 200+ models. Build chatbots, agents, or custom models with built-in monitoring and scaling.
    Try Free
  • 1
    Tekton Pipelines

    Tekton Pipelines

    A cloud-native Pipeline resource

    Tekton is a powerful and flexible open-source framework for creating CI/CD systems, allowing developers to build, test, and deploy across cloud providers and on-premise systems. Get started with Tekton. Tekton standardizes CI/CD tooling and processes across vendors, languages, and deployment environments. It works well with Jenkins, Jenkins X, Skaffold, Knative, and many other popular CI/CD tools. Tekton lets you create CI/CD systems quickly, giving you scalable, serverless, cloud native execution out of the box. Tekton abstracts the underlying implementation so that you can choose the build, test, and deploy workflow based on your team’s requirements. Tekton is a collaborative project where members of the ecosystem contribute together to make CI/CD easier for everyone. See the individuals and organizations that are involved in the Tekton project.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 2
    Tigo

    Tigo

    Tigo is an HTTP web framework written in Go (Golang)

    Developers can add custom-defined intermediates to the Tigo framework, and the Tigo framework also provides developers with a large number of concise APIs. Developers can use these APIs to quickly build web services. Of course, the Tigo framework also provides developers with three toolkits, binding, logger, and request, which can be used by developers to perform structural body case studies, log records, and HTTP access requests. If you have used Tornado before, then Tigo is very easy for you to get started. Tigo provides two routing methods, and developers can learn through the right-side example.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 3
    WeChat SDK for Go

    WeChat SDK for Go

    WeChat SDK for Go

    WeChat SDK is a Golang version of WeChat SDK, which is simple and easy to use. It is recommended to use go module for dependency management. According to different functions, enter the corresponding module documentation to view. To test the public account, you can use the WeChat public platform interface to test the platform. If you develop in a local environment, you can use the public network address mapped by the ngrok tool to facilitate debugging. The backend of the WeChat official account will verify the interface when filling in the interface configuration information to ensure that the interface can respond normally. If the official account needs to know the IP address list of the WeChat server for security considerations in order to make relevant restrictions, you can obtain the IP address list or IP network segment information of the WeChat server through this interface.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 4
    Yearning SQL

    Yearning SQL

    A most popular sql audit platform for mysql

    The MYSQL SQL audit tool used to unpack. Using the compiled binary files, only one database does not rely on any other plug-in to easily deploy. go+vue brings a smooth and beautiful user interface and powerful performance to Yearning. Yearning automatically reviews Mysql's syntax grammar norms based on Mysql grammar analysis and conducts functional audits based on the audit rules implemented by Yearning itself.
    Downloads: 1 This Week
    Last Update:
    See Project
  • Try Google Cloud Risk-Free With $300 in Credit Icon
    Try Google Cloud Risk-Free With $300 in Credit

    No hidden charges. No surprise bills. Cancel anytime.

    Use your credit across every product. Compute, storage, AI, analytics. When it runs out, 20+ products stay free. You only pay when you choose to.
    Start Free
  • 5
    codeforces-go

    codeforces-go

    Solutions to Codeforces by Go

    Golang algorithm competition template library. Due to the complexity of algorithm knowledge points, it is necessary to classify the algorithms you have learned and the questions you have done. An algorithm template should cover the following points. Basic introduction to the algorithm (core idea, complexity, etc.) Reference links or book chapters (good material) Template code (can contain some comments, usage instructions) Template supplements (extra codes in common question types, modeling tips, etc.) Related topic links (template questions, classic questions, thinking conversion questions, etc.) The main goal of this stage is to improve the ability to observe problems. Doing construction questions can train this point in a targeted manner. Choose the structural questions (tag: constructive algorithms) whose difficulty ranges from your own rating to rating+200, and do the questions in descending order according to the number of people who have passed the questions.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 6
    eRPC

    eRPC

    An efficient, extensible and easy-to-use RPC framework

    eRPC is an efficient, extensible and easy-to-use RPC framework. Suitable for RPC, Microservice, Peer-to-Peer, IM, Game and other fields. Use peer to provide the same API package for the server and client. Optimized high-performance transport layer. Use a Non-block socket and I/O multiplexing technology. Support setting the size of socket I/O buffer. Support setting the size of the reading message (if exceed disconnect it). Support controlling the connection file descriptor. Detailed log information, support print input and output details. Support setting slow operation alarm threshold. Support for custom implementation log component. Client session support automatically redials after disconnection.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 7
    gofumpt

    gofumpt

    A stricter gofmt

    Enforce a stricter format than gofmt, while being backward compatible. That is, gofumpt is happy with a subset of the formats that gofmt is happy with. The tool is a fork of gofmt as of Go 1.19, and requires Go 1.18 or later. It can be used as a drop-in replacement to format your Go code, and running gofmt after gofumpt should produce no changes. Some of the Go source files in this repository belong to the Go project. The project includes copies of go/printer and go/doc/comment as of Go 1.19 to ensure consistent formatting independent of what Go version is being used. The added formatting rules are implemented in the format package. Note that vendor directories are skipped unless given as explicit arguments. Similarly, the added rules do not apply to generated Go files unless they are given as explicit arguments.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 8
    jqp

    jqp

    A TUI playground to experiment with jq

    a TUI playground for exploring jq. This application utilizes itchyny's implementation of jq written in Go, gojq. Download the relevant asset for your operating system from the latest Github release. Unpack it, then move the binary to somewhere accessible in your PATH. Clone this repo, build from source with cd jqp && go build, then move the binary to somewhere accessible in your PATH. jqp also supports input from STDIN. STDIN takes precedence over the command line flag. jqp can be configured with a configuration file. By default, jqp will search your home directory for a YAML file named .jqp.yaml. A path to a YAML configuration file can also be provided to the --config command line flag. If a configuration option is present in both the configuration file and the command line, the command line option takes precedence.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 9
    jwx

    jwx

    Implementation of various JWx (Javascript Object Signing

    Go module implementing various JWx (JWA/JWE/JWK/JWS/JWT, otherwise known as JOSE) technologies. If you are using this module in your product or your company, please add your product and/or company name in the Wiki! It really helps keeping up our motivation. Complete coverage of JWA/JWE/JWK/JWS/JWT, not just JWT+minimum tool set. Supports JWS messages with multiple signatures, both compact and JSON serialization. Supports JWS with detached payload. Supports JWS with unencoded payload (RFC7797). Supports JWE messages with multiple recipients, both compact and JSON serialization. Most operations work with either JWK or raw keys e.g. *rsa.PrivateKey, *ecdsa.PrivateKey, etc). Opinionated, but very uniform API. Everything is symmetric, and follows a standard convention. Arguments are organized as explicit required paramters and optional WithXXXX() style options.
    Downloads: 1 This Week
    Last Update:
    See Project
  • Train ML Models With SQL You Already Know Icon
    Train ML Models With SQL You Already Know

    BigQuery automates data prep, analysis, and predictions with built-in AI assistance.

    Build and deploy ML models using familiar SQL. Automate data prep with built-in Gemini. Query 1 TB and store 10 GB free monthly.
    Try Free
  • 10
    mgmt

    mgmt

    Next generation distributed, event-driven, parallel config management!

    Mgmt is a real-time automation tool. It is familiar to existing configuration management software but is drastically more powerful as it can allow you to build real-time, closed-loop feedback systems, in a very safe way, and with a surprisingly small amount of our mcl code. For example, the following code will ensure that your file server is set to read-only when it's Friday. It can run continuously, intermittently, or on demand, and in the first case, it will guarantee that your system is always in the desired state for that instant! In this mode it can run as a decentralized cluster of agents across your network, each exchanging information with the others in real-time, to respond to your changing needs. Mgmt is a next-generation automation tool. It has similarities to other tools in the configuration management space but has a fast, modern, distributed systems approach. The project contains an engine and a language.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 11
    pty

    pty

    PTY interface for Go

    Pty is a Go package for using unix pseudo-terminals. Note that the examples are for demonstration purpose only, to showcase how to use the library. They are not meant to be used in any kind of production environment. Start assigns a pseudo-terminal tty os.File to c.Stdin, c.Stdout, and c.Stderr, calls c.Start, and returns the File of the tty's corresponding pty. InheritSize applies the terminal size of pty to tty. This should be run in a signal handler for syscall.SIGWINCH to automatically resize the tty when the pty receives a window size change notification.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 12
    sessions

    sessions

    Package gorilla/sessions provides cookie and filesystem sessions

    gorilla/sessions provides cookie and filesystem sessions and infrastructure for custom session backends. The key features are Simple API: use it as an easy way to set signed (and optionally encrypted) cookies. Built-in backends to store sessions in cookies or the filesystem. Flash messages: session values that last until read. A convenient way to switch session persistency (aka "remember me") and set other attributes. Mechanism to rotate authentication and encryption keys. Multiple sessions per request, even using different backends. Interfaces and infrastructure for custom session backends: sessions from different stores can be retrieved and batch-saved using a common API. First we initialize a session store calling NewCookieStore() and passing a secret key used to authenticate the session.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 13
    sftp

    sftp

    SFTP support for the go.crypto/ssh package

    The sftp package provides support for file system operations on remote ssh servers using the SFTP subsystem. It also implements an SFTP server for serving files from the filesystem. The basic operation of the package mirrors the facilities of the os package. The Walker interface for directory traversal is heavily inspired by Keith Rarick's fs package.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 14
    subjack

    subjack

    Subdomain Takeover tool written in Go

    Subjack is a Subdomain Takeover tool written in Go designed to scan a list of subdomains concurrently and identify ones that are able to be hijacked. With Go's speed and efficiency, this tool really stands out when it comes to mass testing. Always double-check the results manually to rule out false positives. Subjack will also check for subdomains attached to domains that don't exist (NXDOMAIN) and are available to be registered. No need for dig ever again! This is still cross-compatible too. You can use scanio.sh which is kind of a PoC script to mass-locate vulnerable subdomains using results from Rapid7's Project Sonar. This script parses and greps through the dump for desired CNAME records and makes a large list of subdomains to check with subjack if they're vulnerable to Hostile Subdomain Takeover. Of course, this isn't the only method to get a large amount of data to test.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 15
    Acorn

    Acorn

    A simple application deployment framework built on Kubernetes

    Acorn is an app platform that makes it easy to build, share, and run containerized applications. Acorn provides a comprehensive way to describe your application and dependencies in a single file called an Acornfile. The Acornfile is built and packaged up into a single artifact that contains everything needed to deploy your application and can be shared with a link that will allow it's recipients to have a one-click deployment into a sandbox environment. Acorn Sandboxes are free compute environments in the cloud for anyone with a GitHub account to run, test, and develop Acorns. Sandboxes can be used as often as you like to run Acorns for up to 2 hours at a time. Sandbox environments allow for consuming up to 4GB of ram and up to 10GB of storage space. Acorns launched in the sandbox environment can be accessed via a public URL with SSL. The Acorns running in the Sandbox can be interacted with via the Acorn CLI or through the UI.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 16
    Argo Events

    Argo Events

    Event-driven Automation Framework for Kubernetes

    Argo Events is an event-driven workflow automation framework for Kubernetes. It allows you to trigger 10 different actions (such as the creation of Kubernetes objects, invoking workflows or serverless workloads) on over 20 different events (such as webhook, S3 drop, cron schedule, messaging queues - e.g. Kafka, GCP PubSub, SNS, SQS).
    Downloads: 0 This Week
    Last Update:
    See Project
  • 17
    Argo Workflows

    Argo Workflows

    Workflow engine for Kubernetes

    Argo Workflows is an open source container-native workflow engine for orchestrating parallel jobs on Kubernetes. Argo Workflows is implemented as a Kubernetes CRD (Custom Resource Definition). Define workflows where each step in the workflow is a container. Model multi-step workflows as a sequence of tasks or capture the dependencies between tasks using a directed acyclic graph (DAG). Easily run compute intensive jobs for machine learning or data processing in a fraction of the time using Argo Workflows on Kubernetes. Run CI/CD pipelines natively on Kubernetes without configuring complex software development products. Argo Workflows is the most popular workflow execution engine for Kubernetes. It can run 1000s of workflows a day, each with 1000s of concurrent tasks. Our users say it is lighter-weight, faster, more powerful, and easier to use. Designed from the ground up for containers without the overhead and limitations of legacy VM and server-based environments.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 18
    Asynq

    Asynq

    Simple, reliable, and efficient distributed task queue in Go

    Asynq is a Go library for queueing tasks and processing them asynchronously with workers. It's backed by Redis and is designed to be scalable yet easy to get started. Client puts tasks on a queue. Server pulls tasks off queues and starts a worker goroutine for each task. Tasks are processed concurrently by multiple workers. Task queues are used as a mechanism to distribute work across multiple machines. A system can consist of multiple worker servers and brokers, giving way to high availability and horizontal scaling. Ability to pause queue to stop processing tasks from the queue. Periodic Tasks. Support Redis Cluster for automatic sharding and high availability. Support Redis Sentinels for high availability. Integration with Prometheus to collect and visualize queue metrics. Web UI to inspect and remote-control queues and tasks. CLI to inspect and remote-control queues and tasks.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 19
    Athena

    Athena

    Drop-in replacement for wkhtmltopdf built on Go, Electron and Docker

    Drop-in replacement for wkhtmltopdf built on Go, Electron and Docker. Athena is comprised of an Electron command line interface (CLI) tool, and a Go microservice for converting HTML to PDF documents. Athena transformed Arachne into a spider for challenging her as a weaver and/or weaving a tapestry that insulted the gods. Simple, Docker-powered PDF conversions. It was designed to do one thing and to do it well - PDF conversions; to work together with other programs; and to be able to handle text streams, because that is a universal interface. It aims to give users an on-demand capability to convert HTML to PDF without frills. At the lowest level, its CLI component (athenapdf) was designed to be an alternative / drop-in replacement for wkhtmltopdf, a popular CLI tool for HTML to PDF conversions. Because of Docker the CLI syntax is a bit more complex but it's much more reliable.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 20
    Athens

    Athens

    A Go module datastore and proxy

    Athens provides a server for Go Modules that you can run. It serves public code and your private code for you, so you don’t have to pull directly from a version control system (VCS) like GitHub or GitLab. There are many reasons why you’d want a proxy server such as security and performance. Athens is a project building on top of vgo (or go1.11+) trying to bring dependencies closer to you so you can count on repeatable builds even at a time when VCS is down. The big goal of Athens is to provide a new place where dependencies — not code — live. Dependencies are immutable blobs of code and associated metadata that come from Github. They live in storage that Athens controls. You probably already know what “immutable” means, but let me just point it out again because it’s really important for this whole system. When folks change their packages, iterate, experiment, or whatever else, code on Athens won’t change.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 21
    B0Pass

    B0Pass

    LAN large file transfer tool

    Bailing Express: A high-performance "mobile computer super file transfer artifact" and "LAN shared file server" based on Go language. LAN large file transfer tool. Go-based high-performance "mobile phone computer super large file transfer artifact", "LAN shared file server". file sharing server. Simple single executable. Shared file interface (as long as you are in the same LAN or WIFI, you can transfer very large files) Upload file interface (support click and drag) Two-dimensional code scanning interface (supports mobile phone transmission, supports other computers to input URLs). Shared file online management interface (delectable) Develop a linux deployable version. Support command line port customization. If the port is used, you can open other ports by yourself. Real-time notification of file changes using WebSocket. More concise and efficient operation interface. Automatically check for newer versions.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 22
    Bacalhau

    Bacalhau

    Community-driven, simple, yet powerful framework

    Bacalhau is a decentralized compute platform for running jobs on data stored across distributed networks, like IPFS or Filecoin, without moving the data to centralized cloud environments. It allows developers to run containerized workloads close to where the data lives, reducing latency, cost, and privacy risks. Bacalhau supports various runtime environments and is designed to make decentralized data processing as accessible as traditional cloud computing. It’s especially useful for large-scale AI/ML jobs, scientific research, and content indexing in Web3 ecosystems.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 23
    Beego

    Beego

    Open source framework to build & develop applications in the Go way

    Beego is an open source, high-performance web framework for building and developing applications in Go. Beego offers plenty of superb features, including RESTful support, MVC architecture, powerful built-in modules, intelligent routing and monitoring, plus Go-specific features like interfaces and struct embedding. Beego is very easy to use. Features like code hot compile, automated testing, as well as automated packing and deploying allow you to build your applications in a snap. Beego can be used for the rapid development of RESTful APIs, web apps and backend services that are written in Go.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 24
    Beep

    Beep

    A little package that brings sound to any Go application

    A little package that brings sound to any Go application. Suitable for playback and audio processing. Beep is built on top of its Streamer interface, which is like io.Reader, but for audio. It was one of the best design decisions I've ever made and it enabled all the rest of the features to naturally come together with not much code. Decode and play WAV, MP3, OGG, and FLAC. Encode and save WAV. Very simple API. Limiting the support to stereo (two channel) audio made it possible to simplify the architecture and the API. Rich library of compositors and effects. Loop, pause/resume, change volume, mix, sequence, change playback speed, and more. Easily create new effects. With the Streamer interface, creating new effects is very easy. Generate completely own artificial sounds. Again, the Streamer interface enables easy sound generation. Very small codebase. The core is just ~1K LOC.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 25
    Beerus

    Beerus

    Beerus is a web framework developed entirely in go,

    Beerus is a web framework developed entirely in go, Based on net/http, it extends the management of routes, adds interceptors, session management, receiving parameters with struct, parameter validation, etc. It also provides WebSocket support to upgrade the http protocol to WebSocket and implement communication.
    Downloads: 0 This Week
    Last Update:
    See Project
MongoDB Logo MongoDB