jackal
Echo
jackal | Echo | |
---|---|---|
38 | 123 | |
1,439 | 28,593 | |
- | 1.0% | |
0.0 | 8.0 | |
10 months ago | 14 days ago | |
Go | Go | |
Apache License 2.0 | MIT License |
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.
jackal
-
VoceChat server is ready! Rust written 17MB open sourced chat server--the easiest to host/intergrate chat server you can find.
Take your pick. Or just look here.
-
Extend XMPP Authorization
XMPP servers have the ability to use backend authenticators that can share existing auth infrastructure. This is commonly used for LDAP integration at corporations, for instance. The jackal XMPP server, since it is in Go and this is /r/golang, appears to have some support for this although it appears you'd have to go learn GRPC, the docs basically assume you know what you're doing with that already.
-
Instant Messaging Service | Approach | Protocol | Libraries
How much traffic do you expect ? If you don't expect much traffic and you are happy with single server (or maybe a sharded cluster) you may be able to pull something off by yourself. Otherwise you should go with something already proved, like XMPP. Have a look at https://github.com/ortuman/jackal
-
Instant Messaging: XMPP or GO Socket
Raw sockets are just a "plain pipes" that can carry any logic, while XMPP is already well defined, long established protocol for instant messaging. Check it out: - XMPP Server - XMPP client lib
-
What is the coolest Go open source projects you have seen?
jackal
- Jackal 0.62.0 released - Golang XMPP Server
- Jackal 0.61.0 Released – Go XMPP Server
- Jackal v0.60.0 released – Go XMPP Server
Echo
-
Migrating Next.js App to GO + Templ & HTMX
Echo for the web server.
-
Go + Hypermedia - A Learning Journey (Part 1)
Echo - web framework for Go
-
Error handling in Go web apps shouldn't be so awkward
The three behaviors I've described that we want all depend on two things, the first of which is "idiomatic error handling". We need to be able to simply return err in our handlers. Unfortunately, the standard libray doesn't give us this. But some third-party frameworks do. The most popular one I'm familiar with is labstack echo, whose HandlerFunc looks like this:
-
Creating a Dockerfile for your Go Backend
In this tutorial, I will be using the Echo framework to build the backend. You can learn more about Echo here.
-
Microservices in Go Lang with Postgres (Local, Docker to Render Public hosting)
____ __ / __/___/ / ___ / _// __/ _ \/ _ \ /___/\__/_//_/\___/ v4.11.1 High performance, minimalist Go web framework https://echo.labstack.com ____________________________________O/_______ O\ ⇨ http server started on [::]:8080
-
go-ecommerce-microservices: A practical e-commerce microservices, built with cqrs, event sourcing, vertical slice architecture, event-driven architecture.
Some of the features: - ✅ Using Vertical Slice Architecture as a high level architecture - ✅ Using Event Driven Architecture on top of RabbitMQ Message Broker with a custom [Event Bus](pkg/messaging/bus/) - ✅ Using Event Sourcing in Audit Based services like [Orders Service](services/orders/) - ✅ Using CQRS Pattern and Mediator Patternon top of Go-MediatR library - ✅ Using Dependency Injection and Inversion of Controlon top of uber-go/fx library - ✅ Using RESTFul api with Echo framework and using swagger with swaggo/swag library - ✅ Using Postgres and EventStoreDB to write databases with fully supports transactions(ACID) - ✅ Using MongoDB and Elastic Search for read databases (NOSQL) - ✅ Using OpenTelemetry for collection Distributed Tracing with using Jaeger and Zipkin - ✅ Using OpenTelemetry for collection Metrics with using Prometheus and Grafana - ✅ Using Unit Test for testing small units with mocking dependent classes and using Mockery for mocking dependencies - ✅ Using End2End Test and Integration Test for testing features with all of their real dependeinces using docker containers (cleanup tests) and testcontainers-go library
-
go for web backend
If you come from NodeJS background, you may find Echo (https://echo.labstack.com) most similar to express.
- What is the current ideal choice for server-side rendered web frameworks?
-
[OpenSource] I am building high performance Plex alternative in Go for Movies and TV Show
Can I try to rewrite it using the following? I'll just hand you the code I don't care about credit, I just enjoy cleaning things up. - https://github.com/spf13/cobra - https://echo.labstack.com/ - SQLite - and not a bunch of if statements
-
Could I get a code review?
Use a library for HTTP serving, such as Gin, Chi, or Echo. I personally use Chi, as it's just the right level of abstraction for how I like to work. Despite what others say here, don't try to re-implement everything in a modern serving library using the standard library.
What are some alternatives?
Prosody IM - IMPORTANT: due to a drive failure, as of 13-Mar-2021, the Mercurial repository had to be re-mirrored, which changed every commit SHA. The old SHAs and trees are backed up in the vault branches. Please migrate to the new branches as soon as you can.
Gin - Gin is a HTTP web framework written in Go (Golang). It features a Martini-like API with much better performance -- up to 40 times faster. If you need smashing performance, get yourself some Gin.
etcd - Distributed reliable key-value store for the most critical data of a distributed system
Fiber - ⚡️ Express inspired web framework written in Go
Caddy - Fast and extensible multi-platform HTTP/1-2-3 web server with automatic HTTPS
mux - A powerful HTTP router and URL matcher for building Go web servers with 🦍
easegress - A Cloud Native traffic orchestration system
chi - lightweight, idiomatic and composable router for building Go HTTP services
Sparta - go microservices, powered by AWS Lambda
Iris - The fastest HTTP/2 Go Web Framework. New, modern and easy to learn. Fast development with Code you control. Unbeatable cost-performance ratio :rocket:
Aegis - Serverless Golang deploy tool and framework for AWS Lambda
Beego - beego is an open-source, high-performance web framework for the Go programming language.