5 Open Source tools written in Golang that you should know about
Tags: go, opensource, devops, backend
Published: 2023-12-15 15:23:43

Most modern backend developers absolutely LOVE golang. 

Developers continue to build simple, secure, scalable systems with Go, and those who do, swear by it. In this blog, we will explore five essential open-source tools written in Go that are turning heads.

Lets dive right in 👇


## [Digger](https://github.com/diggerhq/digger)

![Digger](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lozvg953ks6p7rq4cklq.png)

[Digger](https://github.com/diggerhq/digger) is an Open Source Infrastructure as Code management tool that helps orchestrate IaC such as Terraform & OpenTofu within GitHub Actions. Digger reuses compute used for application code so that you don't overpay for 3rd party managed compute for IaC.  This approach eliminates the duplication of CI/CD infrastructure such as compute, jobs, and logs, and reduces security concerns by keeping sensitive data within the CI job. Digger's integration with existing CI systems offers scalability by leveraging on-demand compute resources and enhances security by confining data within the existing CI environment.

<a href="https://github.com/diggerhq/digger" class="custom-button">Star Digger on GitHub ✨</a>

<a href="https://github.com/diggerhq/digger/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22" class="custom-button">Good first issues</a>


## Buf.build


![Buf.build](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zrqtsozjs2egpt3w8cew.png)

The [Buf CLI](https://github.com/bufbuild/buf) is a versatile tool designed for handling Protocol Buffers (Protobuf), a method of serializing structured data. It offers several key features, including managing Protobuf assets through the Buf Schema Registry (BSR), providing a linter to enforce optimal API design and structure, and a breaking change detector to maintain compatibility either in source code or at the wire level. Additionally, the Buf CLI includes a generator that activates plugins based on user-defined templates and a formatter to standardize the formatting of Protobuf files according to industry norms. It also integrates seamlessly with the Buf Schema Registry, supporting comprehensive dependency management.

<a href="https://github.com/bufbuild/buf" class="custom-button">Star Buf on GitHub ✨</a>

<a href="https://github.com/bufbuild/buf/issues?q=is%3Aopen+is%3Aissue+label%3AFeature" class="custom-button">Feature Requests</a>

## Permify 


![Permify](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4nnww3u74qrje7d9q2qn.png)

[Permify](https://github.com/Permify/permify) is an open-source service for creating and managing complex permissions in applications, inspired by Google Zanzibar. It offers a flexible authorization language compatible with various models like RBAC, ReBAC, and ABAC, and allows for efficient authorization data management in preferred databases. Permify's API facilitates access checks, resource filtering, and bulk permission analyses. It also includes comprehensive testing tools for authorization logic, including scenario-based testing and policy coverage analysis. Additionally, Permify supports multi-tenancy, enabling distinct authorization models for different applications within a single instance.

<a href="https://github.com/Permify/permify" class="custom-button">Star Permify on GitHub ✨</a>

<a href="https://github.com/Permify/permify/issues?q=is%3Aopen+is%3Aissue+label%3A%22%F0%9F%92%8E+Bounty%22" class="custom-button">Open Bounties</a>

## JuiceFS


![JuiceFS](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ev3hzgwrfbe8rynqalu7.png)

[JuiceFS](https://github.com/juicedata/juicefs) under the Apache License 2.0, is a high-performance POSIX file system optimized for cloud-native environments. It stores data in Object Storage (e.g., Amazon S3) and metadata in databases like Redis, MySQL, or TiKV. JuiceFS integrates massive cloud storage with big data, machine learning, and AI applications efficiently, akin to local storage. It features full POSIX and Hadoop compatibility, S3 interface, Kubernetes support, and shared file storage for numerous clients. Some cool features are -  strong consistency, scalable performance, data encryption, global file locks, and compression with LZ4 or Zstandard.

<a href="https://github.com/juicedata/juicefs" class="custom-button">Star JuiceFS on GitHub ✨</a>

<a href="https://github.com/juicedata/juicefs/issues?q=is%3Aopen+is%3Aissue" class="custom-button">Open Issues</a>


## Steampipe


![Steampipe](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/i2jx0vze7cfjt98fs9v0.png)

[Steampipe](https://github.com/turbot/steampipe) is a tool that simplifies data extraction from APIs and services, eliminating the need for ETL (Extract, Transform, Load) processes. It includes several components: the Steampipe CLI for querying APIs, ensuring compliance, and creating dashboards; Steampipe Postgres FDWs (Foreign Data Wrappers) which turn APIs into foreign tables in Postgres; Steampipe SQLite extensions that convert APIs into SQLite virtual tables; and standalone export tools for directly exporting data from APIs without requiring a database. Additionally, Turbot Pipes, a part of Steampipe, offers capabilities for querying, checking, and visualizing data, tailored for DevOps teams with a focus on intelligence, automation, and security.

<a href="https://github.com/turbot/steampipe" class="custom-button">Star Steampipe on GitHub ✨</a>

<a href="https://github.com/turbot/steampipe/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22" class="custom-button">Good first issues</a>