Encore
jsoniter
Encore | jsoniter | |
---|---|---|
35 | 12 | |
4,556 | 13,076 | |
2.8% | 0.5% | |
9.7 | 0.0 | |
2 days ago | about 1 month ago | |
Go | Go | |
Mozilla Public 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.
Encore
-
Build and deploy a REST API with Postgres database in TypeScript
In this tutorial you will create a REST API for a URL Shortener service using Encore for TypeScript, a new way of building fully type-safe and production-ready distributed systems in TypeScript using declarative infrastructure.
- How I keep myself Alive using Golang
-
Using Pub/Sub for event-driven Go backends
At Encore, we've made it easier by making Pub/Sub is a native component in Encore's Open Source Infrastructure SDK.
- Encore releases automatic tracing in tests
-
Building an Appointment Booking app in Go
⭐️ Support the project by starring Encore on GitHub.
-
Pocketbase: Open-source back end in 1 file
Very cool. Reminds me of the encore framework, also written in go: https://github.com/encoredev/encore
Need to spend some more time looking into these go based frameworks, they seem great for quick prototyping
-
Build a URL Shortener in Go using REST & PostgreSQL 🚀
package url import ( "context" "testing" ) // TestShortenAndRetrieve - test that the shortened URL is stored and retrieved from database. func TestShortenAndRetrieve(t *testing.T) { testURL := "https://github.com/encoredev/encore" sp := ShortenParams{URL: testURL} resp, err := Shorten(context.Background(), &sp) if err != nil { t.Fatal(err) } wantURL := testURL if resp.URL != wantURL { t.Errorf("got %q, want %q", resp.URL, wantURL) } firstURL := resp gotURL, err := Get(context.Background(), firstURL.ID) if err != nil { t.Fatal(err) } if *gotURL != *firstURL { t.Errorf("got %v, want %v", *gotURL, *firstURL) } }
-
Ask HN: What would be your stack if you are building an MVP today?
For something in the same vein but for Go, there is Encore: https://encore.dev / https://github.com/encoredev/encore
-
How to build a Go microservices backend in 5 minutes
The framework is Open Source and the Encore platform provides free cloud hosting for hobby projects.
-
nitric VS encore - a user suggested alternative
2 projects | 9 Dec 2022
Encore is a backend framework for creating cloud backend applications where infrastructure is provisioned automatically from business logic.
jsoniter
-
Handling high-traffic HTTP requests with JSON payloads
Since most of the time would be spent decoding json, you could try to cut this time using https://github.com/bytedance/sonic or https://github.com/json-iterator/go, both are drop-in replacements for the stdlib, sonic is faster.
-
A Journey building a fast JSON parser and full JSONPath
We all know the builtin golang JSON parser is slow.
How about doing comparisons against other implementations?
Like this one: https://github.com/json-iterator/go
-
Polygon: Json Database System designed to run on small servers (as low as 16MB) and still be fast and flexible.
Json-iterator (https://github.com/json-iterator/go), you can replace all of encoding/json with this. It does the same thing but it's faster.
-
How can we umarshal a Big JSON effectively?
Do you want to look at every field all at the same time? If not, you can pick out individual fields. There's other packages such as https://github.com/tidwall/gjson or https://github.com/json-iterator/go that let you pass in paths such as "a.b.c" to extract single fields.
-
Designing a config API for microservices applications built using Go
For each Go type used within the config, we generate a separate unmarshaller function. The unmarshallers use json-iterator to process the output from CUE, while tracking the path within the config to the unmarshalled value. This path tracking will allow the function to check if live overrides have been provided on that path and return the override instead.
- jsoniter+1.18: panic in reflect2
-
What type of software do you write at your workplace?
https://github.com/json-iterator/go an alternative JSON encoding package which allows to stream (flush out) encoded data as soon as it's able to (which is in contrast with the stock package which buffers everything until the encoding is known to be complete and OK).
-
Some Go(lang) tips
What to use Easyjson is about the top of the pack and it's straightforward. The downside of efficient tools is that they use code generation to create the code required to turn your structs into json to minimise allocations. This is a manual build step which is annoying. Interestingly json-iterator also uses reflection but it's significantly faster. I suspect black magic.
-
What are your favorite packages to use?
jsoniter for low level access to JSON encode and decode
-
What is the best solution to unique data in golang
Takes like 10 minutes to write and parses very efficiently. https://github.com/json-iterator/go looks like it can provide such simple parsing
What are some alternatives?
go-kit - A standard library for microservices.
go-json - Fast JSON encoder/decoder compatible with encoding/json for Go
trpc - 🧙♀️ Move Fast and Break Nothing. End-to-end typesafe APIs made easy.
mapstructure - Go library for decoding generic map values into native Go structures and vice versa.
wire - Compile-time Dependency Injection for Go
easyjson - Fast JSON serializer for golang.
gowsdl - WSDL2Go code generation as well as its SOAP proxy
goprotobuf - Go support for Google's protocol buffers
GoSwagger - Swagger 2.0 implementation for go
GJSON - Get JSON values quickly - JSON parser for Go
nitric - Nitric is a multi-language framework for cloud applications with infrastructure from code.
compare-go-json - A comparison of several go JSON packages.