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.

  • 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
  • MongoDB Atlas | Run databases anywhere Icon
    MongoDB Atlas | Run databases anywhere

    Ensure the availability of your data with coverage across AWS, Azure, and GCP on MongoDB Atlas—the multi-cloud database for every enterprise.

    MongoDB Atlas allows you to build and run modern applications across 125+ cloud regions, spanning AWS, Azure, and Google Cloud. Its multi-cloud clusters enable seamless data distribution and automated failover between cloud providers, ensuring high availability and flexibility without added complexity.
    Learn More
  • 1
    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: 105 This Week
    Last Update:
    See Project
  • 2
    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: 99 This Week
    Last Update:
    See Project
  • 3
    PIKAPIKA

    PIKAPIKA

    A beautiful, easy-to-use and ad-free comic and game client

    A beautiful, easy-to-use and ad-free manga client that can run on Windows/MacOS/Linux/Android/IOS. There are restricted levels of content in this APP (such as explicit/bloody/violent/drug abuse), users under the age of 18 must use it accompanied by a guardian, and please abide by local laws and regulations. Your star and issue are a great encouragement to developers, you can download the latest source code/installation package from the source warehouse, and express support/suggestions. VPN->Proxy->Distribution, if these three functions are set at the same time, you will access the proxy on your mobile phone's VPN, and use the proxy to request the diversion server. You can export any completed download to a zip and import it from another device. After decompressing the exported zip, you can directly use the HTML in it to read.
    Downloads: 80 This Week
    Last Update:
    See Project
  • 4
    gRPC-Gateway

    gRPC-Gateway

    gRPC to JSON proxy generator following the gRPC HTTP spec

    gRPC-Gateway is a plugin of protoc. It reads a gRPC service definition and generates a reverse-proxy server which translates a RESTful JSON API into gRPC. This server is generated according to custom options in your gRPC definition. gRPC-Gateway helps you to provide your APIs in both gRPC and RESTful style at the same time. gRPC is great -- it generates API clients and server stubs in many programming languages, it is fast, easy to use, and bandwidth-efficient and its design is combat-proven by Google. However, you might still want to provide a traditional RESTful JSON API as well. Reasons can range from maintaining backward compatibility, supporting languages or clients that are not well supported by gRPC, to simply maintaining the aesthetics and tooling involved with a RESTful JSON architecture. This project aims to provide that HTTP+JSON interface to your gRPC service.
    Downloads: 64 This Week
    Last Update:
    See Project
  • Build Securely on AWS with Proven Frameworks Icon
    Build Securely on AWS with Proven Frameworks

    Lay a foundation for success with Tested Reference Architectures developed by Fortinet’s experts. Learn more in this white paper.

    Moving to the cloud brings new challenges. How can you manage a larger attack surface while ensuring great network performance? Turn to Fortinet’s Tested Reference Architectures, blueprints for designing and securing cloud environments built by cybersecurity experts. Learn more and explore use cases in this white paper.
    Download Now
  • 5
    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: 60 This Week
    Last Update:
    See Project
  • 6
    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: 47 This Week
    Last Update:
    See Project
  • 7
    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: 28 This Week
    Last Update:
    See Project
  • 8
    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: 18 This Week
    Last Update:
    See Project
  • 9
    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: 17 This Week
    Last Update:
    See Project
  • Secure remote access solution to your private network, in the cloud or on-prem. Icon
    Secure remote access solution to your private network, in the cloud or on-prem.

    Deliver secure remote access with OpenVPN.

    OpenVPN is here to bring simple, flexible, and cost-effective secure remote access to companies of all sizes, regardless of where their resources are located.
    Get started — no credit card required.
  • 10
    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: 16 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: 14 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: 14 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: 13 This Week
    Last Update:
    See Project
  • 14
    Dockle

    Dockle

    Container Image Linter for Security

    Container Image Linter for Security, Helping build the Best-Practice Docker Image, Easy to start. You can install dockle with the asdf version manager with this plugin, which automates the process of installing (and switching between) various versions of github release binaries. With asdf already installed, run commands to install dockle. You can scan your built image with Dockle in Travis CI/CircleCI. Though, you can ignore the specified target checkpoints by using .dockleignore file. Or, if you just want the results to display and not let the test fail for this, specify --exit-code to 0 in dockle command.
    Downloads: 11 This Week
    Last Update:
    See Project
  • 15
    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: 10 This Week
    Last Update:
    See Project
  • 16
    Oso

    Oso

    Oso is a batteries-included framework for building authorization

    The Oso Library is a batteries-included framework for building authorization in your application. With Oso, you can. Model: Set up common permissions patterns like RBAC and relationships using Oso’s built-in primitives. Extend them however you need with Oso’s declarative policy language, Polar. Filter: Go beyond yes/no authorization questions. Implement authorization over collections too - e.g., “Show me only the records that Juno can see.” Test: Write unit tests over your authorization logic now that you have a single interface for it. Use the debugger or tracing to track down unexpected behavior. Oso lets you write policies to control who can do what in your app. Select different policies below to see how they change the permissions in the sample app on the right. Oso's language libraries can be developed without touching the Rust core, but you will still need the Rust stable toolchain installed in order to build the core.
    Downloads: 9 This Week
    Last Update:
    See Project
  • 17
    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: 9 This Week
    Last Update:
    See Project
  • 18
    Thanos

    Thanos

    Highly available Prometheus setup with long term storage capabilities

    Open source, highly available Prometheus setup with long-term storage capabilities. Scale your Prometheus setup by enabling querying of your Prometheus metrics across multiple Prometheus servers and clusters. Extend the system with the object storage of your choice to store your metrics for an unlimited time. Supports GCP, S3, Azure, Swift and Tencent COS. Use the same tools you love, such as Grafana and others, that support the Prometheus Query API. Downsample historical data for massive query speedup when querying large time ranges or configure complex retention policies. Thanos leverages the Prometheus 2.0 storage format to cost-efficiently store historical metric data in any object storage while retaining fast query latencies. Additionally, it provides a global query view across all Prometheus installations and can merge data from Prometheus HA pairs on the fly.
    Downloads: 9 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: 9 This Week
    Last Update:
    See Project
  • 20
    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: 8 This Week
    Last Update:
    See Project
  • 21
    Hyperledger Fabric

    Hyperledger Fabric

    Distributed ledger framework for developing solutions and applications

    Hyperledger Fabric is an enterprise-grade permissioned distributed ledger framework for developing solutions and applications. Its modular and versatile design satisfies a broad range of industry use cases. It offers a unique approach to consensus that enables performance at scale while preserving privacy. High-performance, secure, permissioned blockchain network. Code written in Go, chaincode (smart contracts) in Go, Javascript, or Java, SDKs in Node.js, Java, Go, REST and Python. Hyperledger is a collaborative effort created to advance blockchain technology by identifying and addressing important features for a cross-industry open standard for distributed ledger technologies(DLTs) that will transform the way business transactions are conducted globally. Hyperledger consists of several projects. Hyperledger Fabric is being built in a pluggable modular framework.
    Downloads: 8 This Week
    Last Update:
    See Project
  • 22
    nFPM

    nFPM

    A simple deb, rpm and apk packager written in Go

    nFPM is a simple, 0-dependencies, deb, rpm, apk, and Arch Linux packager. While fpm is great, for me, it is a bummer that it depends on ruby, tar and other software. I wanted something that could be used as a binary and/or as a library and that was really simple. So I decided to create nFPM: a simpler, 0-dependency, as-little-assumptions-as-possible alternative to fpm. This is a subtle way of saying it won't have all features, nor all formats that fpm has: it is supposed to be simpler. And that's OK!, most of us don't need all those features most of the time. You create a YAML file with the definition of what you need, run the nfpm binary, and it takes care of everything. The same config file can be used to create both the RPM and Deb packages.
    Downloads: 8 This Week
    Last Update:
    See Project
  • 23
    D2

    D2

    D2 is a modern diagram scripting language that turns text to diagrams

    D2 is a diagram scripting language that turns text to diagrams. It stands for Declarative Diagramming. Declarative, as in, you describe what you want diagrammed, it generates the image. As well, the functioning of the install script is described in detail to alleviate any concern of its use. We recommend using your OS's package manager directly instead for improved security but the install script is by no means insecure. D2 includes a variety of official themes to style your diagrams beautifully right out of the box. See ./d2themes to browse the available themes and make or contribute your own creation. D2 is designed with language tooling in mind. D2's parser can parse multiple errors from a broken program, has an autoformatter, syntax highlighting, and we have plans for LSP's and more. Good language tooling is necessary for creating and maintaining large diagrams. D2 is designed to be extensible and composable.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 24
    EARTHLY

    EARTHLY

    The effortless CI/CD framework that runs anywhere

    Share compute and cache with Earthly Satellites. Build remotely from the comfort of your terminal. Satellites use the code in your current directory, stream logs back to you in real time, and output results (images, artifacts) back to your laptop. When used from a CI, Earthly Satellites can be used to speed up builds, as the cache is retained between runs. Earthly was engineered for readability. Most engineers are able to read an Earthfile without any prior knowledge. We took some of the best ideas from Dockerfiles and Makefiles and combined them into one specification. Earthly builds are self-contained, isolated and repeatable. Regardless of whether Earthly runs in your CI or on your laptop, the build will run the same way. This allows for faster iteration and easier debugging. Unlock your team's full productivity by eliminating "works on my machine but not in CI" blockers.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 25
    gotestsum

    gotestsum

    'go test' runner with output optimized for humans, JUnit XML for CI

    gotestsum runs tests using go test -json, prints formatted test output, and a summary of the test run. It is designed to work well for both local developments, and for automation like CI. When the --rerun-fails flag is set, gotestsum will re-run any failed tests. The tests will be re-run until each passes once, or the number of attempts exceeds the maximum attempts. Maximum attempts defaults to 2, and can be changed with --rerun-fails=n. gotestsum supports executing a compiled test binary (created with go test -c) by running it as a custom command. pkgname is the name of the package being tested, it will show up in the test output. ./binary.test is the path to the compiled test binary. The -test.v must be included so that go tool test2json receives all the output. When the --watch flag is set, gotestsum will watch directories using file system notifications.
    Downloads: 7 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • 3
  • 4
  • 5
  • Next
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.