Go HacktoberFest

Open-source Go projects categorized as HacktoberFest | Edit details
Related topics: #Golang #Go #Kubernetes #CLI #Docker

Top 23 Go HacktoberFest Projects

  • GitHub repo go-formatter

    A curated list of awesome Go frameworks, libraries and software

    Project mention: Convince me to learn Rust! | reddit.com/r/rust | 2021-11-23

    There's also Awesome Rust, a curated list of recommended packages inspired by Awesome Go, and the Rust Cookbook, a collection of examples which provides crate recommendations as a side-effect.

  • GitHub repo Hugo

    The world’s fastest framework for building websites.

    Project mention: Show HN: Md2blog – A zero-config static site generator for dev blogs | news.ycombinator.com | 2021-11-29

    What do you think about Hugo [1]? It supports markdown.

    [1] https://gohugo.io/

  • Nanos

    Run Linux Software Faster and Safer than Linux with Unikernels.

  • GitHub repo prometheus

    The Prometheus monitoring system and time series database.

    Project mention: What do you monitor on devices? | reddit.com/r/networking | 2021-11-30

    Side note, if you're going to redesign your Zabbix setup, I recommend upgrading to Prometheus. Think of it like a modern Zabbix, which includes a new protocol designed to replace SNMP.

  • GitHub repo tidb

    TiDB is an open source distributed HTAP database compatible with the MySQL protocol

    Project mention: Comparing Nginx Performance in Bare Metal and Virtual Environments | news.ycombinator.com | 2021-10-29

    I do agree with you in that regard, however, that's also a dangerous line of thinking.

    There are attempts to provide horizontal scalability for RDBMSes in a transparent way, like TiDB https://pingcap.com/ (which is compatible with the MySQL 5.7 drivers), however, the list of functionality that's sacrificed to achieve easily extensible clusters is a long one: https://docs.pingcap.com/tidb/stable/mysql-compatibility

    There are other technologies, like MongoDB, which sometimes are more successful at a clustered configuration, however most of the traditional RDBMSes work best in a leader-follower type of replication scenario, because even those aforementioned systems oftentimes have data consistency issues that may eventually pop up.

    Essentially, my argument is that the lack of good horizontally scalable databases or other data storage solutions is easily explainable by the fact that the problem itself isn't solvable in any easy way, apart from adopting eventual consistency, which is probably going to create more problems than it will solve in case of any pre-existing code that makes assumptions about what ways it'll be able to access data and operate on it: https://en.wikipedia.org/wiki/Fallacies_of_distributed_compu...

    To that end, i'd perhaps like to suggest an alternative: use a single vertically scalable RDBMS instance when possible, with a hot standby if you have the resources for that. Let the architecture around it be horizontally scalable instead, and let it deal with the complexities of balancing the load and dealing with backpressure - introduce a message queue if you must, maybe even an in-memory one for simplicity's sake, or consider an event based architecture where "what needs to be done" is encapsulated within a data structure that can be passed around and applied whenever possible. In my eyes, such solutions can in many cases be better than losing the many benefits of having a single source of truth.

    Alternatively, consider sharding as a possibility, or, alternatively, do some domain driven design, figure out where to draw some boundaries and split your service into multiple ones that cover the domain with which you need to work with. Then you have one DB for sales, one for account management, one for reports and so on, all separated by something as simple as REST interfaces and with rate limits or any of the other mechanisms.

    If, however, neither of those two groups of approaches don't seem to be suitable for the loads that you're dealing with, then you probably have a team of very smart people and a large amount of resources to figure out what will work best.

    To sum up, if there are no good solutions in the space, perhaps that's because the problems themselves haven't been solved yet. Thus, sooner or later, they'll need to be sidestepped and their impact mitigated in whatever capacity is possible.

  • GitHub repo Gitea

    Git with a cup of tea, painless self-hosted git service

    Project mention: Building a federated code hosting service | reddit.com/r/opensource | 2021-11-29

    gitea has a issue about federation that is set for the 2.x.x milestone, there is also fed forge.

  • GitHub repo cli

    GitHub’s official command line tool

    Project mention: Ask HN: What the best and worst command-line interfaces you have used? | news.ycombinator.com | 2021-11-24
  • GitHub repo cockroach

    CockroachDB - the open source, cloud-native distributed SQL database.

    Project mention: Composing generic data structures in go | dev.to | 2021-11-30

    Recently a colleague, Nathan, reflecting on CockroachDB, remarked (paraphrased from memory) that the key data structure is the interval btree. The story of Nathan’s addition of the first interval btree to cockroach and the power of copy-on-write data structures is worthy of its own blog post for another day. It’s Nathan’s hand-specialization of that data structure that provided the basis (and tests) for the generalization I’ll be presenting here. The reason for this specialization was as much for the performance wins of avoiding excessive allocations, pointer chasing, and cost of type assertions when using interface boxing.

  • Scout APM

    Scout APM: A developer's best friend. Try free for 14-days. Scout APM uses tracing logic that ties bottlenecks to source code so you know the exact line of code causing performance issues and can get back to building a great product faster.

  • GitHub repo Mattermost

    Mattermost is an open source platform for secure collaboration across the entire software development lifecycle.

    Project mention: What are the REST API reference projects that can be used as a guide in 2021? | reddit.com/r/golang | 2021-11-24
  • GitHub repo PhotoPrism

    Photos App powered by Go and Google TensorFlow 🌈

    Project mention: Recommendation: Software for managing and searching a large number of photos | reddit.com/r/msp | 2021-11-30

    https://github.com/photoprism/photoprism checks all the boxes and uses Google's TensorFlow and AI to tag and categorize the photos. All data remains local and does not make a trip to the cloud. Development is very active. The only down side is it's still in beta. On the plus side, they have a Commercial License with business support.

  • GitHub repo croc

    Easily and securely send things from one computer to another :crocodile: :package:

    Project mention: What’s an extremely useful website most people probably don’t know about? | reddit.com/r/AskReddit | 2021-11-19

    Similar and works on windows and is trivial to download and install there (if the person you're sending to is at least capable enough to open up PowerShell) : https://github.com/schollz/croc

  • GitHub repo Fiber

    ⚡️ Express inspired web framework written in Go

    Project mention: 🔐 Structure of a single-page Vue 3 (TypeScript) app using JWT authorization requests to the backend | dev.to | 2021-11-15

    📌 Note: Examples of code for these microservices will be at Go language and the Fiber web framework, since that's my main stack (at the moment).

  • GitHub repo grpc-go

    The Go language implementation of gRPC. HTTP/2 based RPC

    Project mention: Explanation of context in go? | reddit.com/r/golang | 2021-11-08
  • GitHub repo fyne

    Cross platform GUI in Go inspired by Material Design

    Project mention: Fyne vs Flutter. Help. | reddit.com/r/golang | 2021-11-19

    Fyne apps crash almost immediately when you resize the window on MacOS, and it's been doing so for more than a year: https://github.com/fyne-io/fyne/pull/960

  • GitHub repo jaeger

    CNCF Jaeger, a Distributed Tracing Platform

    Project mention: How To Use OpenTelemetry With AWS Lambda | dev.to | 2021-11-11

    In production, you would probably want to have this sent to some other tool like Jaeger or an observability vendor.

  • GitHub repo k6

    A modern load testing tool, using Go and JavaScript - https://k6.io

    Project mention: JMeter was too slow for my use case, so I wrote Gocannon | reddit.com/r/golang | 2021-10-31

    If you need more flexibility, there's k6, which you can script, and send stats to an influxdb

  • GitHub repo loki

    Like Prometheus, but for logs.

    Project mention: How to check 1st day's logs of pod which is running from a week | reddit.com/r/kubernetes | 2021-11-08
  • GitHub repo wtf

    The personal information dashboard for your terminal (by wtfutil)

    Project mention: Sponsor wtfutil/wtf | reddit.com/r/devopskhan | 2021-10-27
  • GitHub repo Revel

    A high productivity, full-stack web framework for the Go language.

    Project mention: Best Golang Web Framework for Larg Projects | dev.to | 2021-03-08

    revel

  • GitHub repo hydra

    OpenID Certified™ OpenID Connect and OAuth Provider written in Go - cloud native, security-first, open source API security for your infrastructure. SDKs for any language. Compatible with MITREid.

    Project mention: Simple OpenID Connect (OIDC) Provider? | reddit.com/r/selfhosted | 2021-10-23
  • GitHub repo containerd

    An open and reliable container runtime

    Project mention: Run containers on your Mac with Lima | reddit.com/r/apple | 2021-11-28

    Many of the things you mention there are actually not provided by Docker. The clear and well defined format is OCI, which stands for “Open Container Initiative” (Docker was a founding member, but they aren’t the only one). The underlying runtime for containers that Docker uses is containerd which is an open source product. Docker provides… Docker Hub, and a client app. Docker certainly isn’t the only option, there’s also Kubernetes, Podman, or even just (shudder) containerd itself. Heck, you could write your own.

  • GitHub repo thanos

    Highly available Prometheus setup with long term storage capabilities. A CNCF Incubating project.

    Project mention: Mayday, mayday! I need a scalable infrastructure to migrate on Scaleway Elements! Part 2 - Ops & Container migration | dev.to | 2021-11-12

    Thanos alongside Prometheus. It will be used for long term storing capabilities and federation.

  • GitHub repo watchtower

    A process for automating Docker container base image updates.

    Project mention: Command to update all container images and relaunch? | reddit.com/r/docker | 2021-11-27

    You might want to look into https://containrrr.dev/watchtower/. Available as a container.

  • GitHub repo trivy

    Scanner for vulnerabilities in container images, file systems, and Git repositories, as well as for configuration issues

    Project mention: trivy: Scanner for vulnerabilities in container images, file systems, and Git repositories, as well as for configuration issues | reddit.com/r/CKsTechNews | 2021-11-10
NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2021-11-30.

Go HacktoberFest related posts

Index

What are some of the best open-source HacktoberFest projects in Go? This list will help you:

Project Stars
1 go-formatter 71,460
2 Hugo 55,521
3 prometheus 39,746
4 tidb 29,655
5 Gitea 27,101
6 cli 26,324
7 cockroach 22,567
8 Mattermost 21,483
9 PhotoPrism 17,536
10 croc 17,526
11 Fiber 16,528
12 grpc-go 14,909
13 fyne 14,677
14 jaeger 14,674
15 k6 14,598
16 loki 14,329
17 wtf 12,906
18 Revel 12,456
19 hydra 11,802
20 containerd 9,795
21 thanos 9,744
22 watchtower 9,407
23 trivy 9,356
Find remote jobs at our new job board 99remotejobs.com. There are 33 new remote jobs listed recently.
Are you hiring? Post a new remote job listing for free.
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com