go-mtree
NATS
go-mtree | NATS | |
---|---|---|
7 | 11 | |
74 | 5,161 | |
- | 1.2% | |
5.5 | 9.1 | |
about 2 months ago | 6 days ago | |
Go | Go | |
BSD 3-clause "New" or "Revised" License | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
go-mtree
-
File Integrity and checksums
go-mtree can take care about it. It calculates files hashes and you can use it to compare it later.
-
Monitoring files for changes and corruption
There is old unix utility called 'mtree' (there also is fully binary static compatible with mtree version on github go-mtree ) to check integrity of files. Another solution is - ZFS that do it dynamically
-
Creating a file with the name as the hash of another file
There is FreeBSD utility called mtree that also ported to Linux systems, that walk specified filesystem and creates hashes for all found content which later can be used to check integrity against corruption/modification. If your distribution of choice doesn't have ported version of mtree, you can use multiplatform version go-mtree that replicate the same workflow
-
What is the coolest Go open source projects you have seen?
go-mtree # Integrity
-
[App Discovery] Favorite and Underrated Self Hosted App
go-mtree: portable implementation of well known utility mtree) that can be used to save/test file's integrity as well directory structures. Open source, portable across most popular operation systems, no dependencies, single executable file.
-
Checking backup integrity
There is standard utility for integrity testing mtree) that ported to linux too. Also there is multi platform version of upstream written in Go (read works everywhere from one single file) that called go-mtree
-
Apart from using exec.Command, is there a better way to check version of any external system app in /usr/local/bin like fzf or nodejs using go?
SHA1 is dead, and there is a better dedicated tool mtree(8) for such tasks (which by the way exists as implementation in Go as go-mtree ) but I believe OP wants to check versions (like fzf --version) not an integrity of files
NATS
- High-Performance server for NATS.io, the cloud and edge native messaging system
- Asyncapi with Go
-
What is the coolest Go open source projects you have seen?
nats: Golang client for NATS, the cloud native messaging system
-
Distributed communication patterns with NATS
Install the nats.go package
- Redis vs. Kafka vs. RabbitMQ
-
Distributed messaging with NATS
Now that our NATS server is running, we'll be using Go and Node.js clients to connect to it for simple demonstration. Not familiar with Go or Node? Don't worry NATS has clients available in over 40 languages!
- How do I build a text editor like notepad using wails
-
Plugins vs Microservices
You can build monolith applications and if they need cross communication, rely on something like Nats: https://github.com/nats-io/nats.go
- Modern Communication: Sockets
-
Subscription management in pub/sub system
You could start by looking/reading how it is implemented in production ala https://github.com/nats-io/nats.go
What are some alternatives?
gluetun - VPN client in a thin Docker container for multiple VPN providers, written in Go, and using OpenVPN or Wireguard, DNS over TLS, with a few proxy servers built-in.
nsq - A realtime distributed messaging platform
HedgeDoc - HedgeDoc - Ideas grow better together
Centrifugo - Scalable real-time messaging server in a language-agnostic way. Self-hosted alternative to Pubnub, Pusher, Ably. Set up once and forever.
go-tarfs - Read a tar file contents using go1.16 io/fs abstraction
EventBus - [Go] Lightweight eventbus with async compatibility for Go
Kavita - Kavita is a fast, feature rich, cross platform reading server. Built with the goal of being a full solution for all your reading needs. Setup your own server and share your reading collection with your friends and family.
go-nsq - The official Go package for NSQ
dbus - Native Go bindings for D-Bus
emitter - Emits events in Go way, with wildcard, predicates, cancellation possibilities and many other good wins
Confluent Kafka Golang Client - Confluent's Apache Kafka Golang client
mangos - mangos is a pure Golang implementation of nanomsg's "Scalablilty Protocols"