go
React
go | React | |
---|---|---|
2,151 | 1,816 | |
123,211 | 227,985 | |
0.8% | 0.5% | |
10.0 | 10.0 | |
5 days ago | 3 days ago | |
Go | JavaScript | |
BSD 3-clause "New" or "Revised" License | 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.
go
-
SwissTable: A High-Performance Hash Table Implementation
In 2022, ByteDance proposed an issue recommending that Golang adopt SwissTable for its map implementation. In 2023, Dolt published a blog post titled SwissMap: A Smaller, Faster Golang Hash Table, detailing their design of a swisstable, which garnered widespread attention. The Go core team is reevaluating the swisstable design and has added some related code in the runtime. With some free time during the holidays, let's delve deeper into the principles, compare it to the runtime map, and understand why it might become the standard for map implementation.
-
Some Go web dev notes
https://github.com/golang/go/issues/54380
I didn't know about that. I agree it qualifies as a "weird issue".
-
The perils of transition to 64-bit time_t
Exactly. This is also highly problematic if you try to perform atomic operations against bare 64 bit integers on those systems, because the atomic instructions do require them to be 8 byte aligned. In C11 and later it’s not an issue, because _Atomic(int64_t)’s alignment may be stricter than int64_t.
This was also an issue in Go, because it tries to use the same alignment rules as C to make cgo work. There they also solved it by adding dedicated atomic types.
https://github.com/golang/go/discussions/47141
- gRPC: onde vive? o que come?
-
gRPC: what is it? An introduction...
gRPC is not more than an abstraction over the conventional RPC, using protobuf as the serializer and making requests over http/2. There are some performance considerations when using http/2, and in some cases, using http/1 can be faster! I recommend you to read this benchmark and this open issue on golang/go about the http/2. However, when dealing with requests with a large/complex body, gRPC turns out to be a great solution due to having the protobuf as the serializer, which is much faster than serializing JSON as an example. Elton Minetto wrote a great blog post explaining better those alternatives and benchmarking them. Another great benefit of using protobuf is solving the contract inconsistency between the client and the server since they both use the same .proto files.
-
Register Allocation in the Go Compiler
Really appreciate the article and the pointer to Go's SSA backend, which appears to implement common optimization passes like SCCP succinctly with good comments[0]. It's always nice to see harder concepts implemented with simplicity and readability in mind.
[0] https://github.com/golang/go/blob/master/src/cmd/compile/int...
-
Decrypt Go: varint
Recently, I discovered that the Go standard library includes a built-in implementation of varint, found in encoding/binary/varint.go. This implementation is similar to the varint used in protobuf. Using the Golang standard library's varint source code, we will systematically learn and review the concept of varint. If you're familiar with protobuf, you probably already know that all integer types (except fixed types like fixed32 and fixed64) are encoded using varint.
- Go crypto package: obtain a FIPS 140-3 validation
-
Interning in Go
We agreed to make the threadsafeness more explicit in the documentation of the 'unique' package: https://github.com/golang/go/issues/69637
-
The implications of running Go in a containerised environment.
Now Go is NOT CFS aware golang/go#33803 therefore GOMAXPROCS will default to using all 8 cores of the Task.
React
-
React Unmasked: Episode 1 - The Anatomy of a React App
React Documentation
-
Run a Virtual Machine in Your Browser
In this guide, we'll use React.js, but I'm keeping things generic so you can adapt everything to plain HTML or whatever framework makes you happy.
-
Bypass bundlers’ detection of the require statement
This enqueueTask is a fallback method used in ReactAct.js
-
A helpful approach to navigating the SEO AI shift
Developers understand imposter syndrome, as a developer I feel this too. Take React, for instance. You spend months getting comfortable with it, building components, managing state, and feeling pretty good about your skills. Then suddenly, everyone's talking about Vite and how it's the next big thing. Should you drop everything and learn Vite? Is React dead now?
- queueMacroTask in React source code
-
Creating a Highlighted Input Component with React and TypeScript
React: A JavaScript library for building user interfaces React.
-
BadMapPolyfill in React Source Code.
In this article, we study the packages/react/src/BadMapPolyfill.js file source code.
-
$FlowFixMe in React source code
// picked from https://github.com/facebook/react/blob/main/packages/shared/ReactTypes.js#L22 … export type ReactPortal = { $$typeof: symbol | number, key: null | string, containerInfo: any, children: ReactNodeList, // TODO: figure out the API for cross-renderer implementation. implementation: any, }; // The subset of a Promise that React APIs rely on. This resolves a value. // This doesn't require a return value neither from the handler nor the // then function. interface ThenableImpl { then( onFulfill: (value: T) => mixed, onReject: (error: mixed) => mixed, ): void | Wakeable; }
-
* text=auto in .gitattributes file
In this article, we analyse the .gitattributes from the react/.gitattributes. When you are part of a team, you and your colleagues often work on projects across different operating systems and development environments. As a result, file formatting issues, especially related to line endings, can arise.
-
`.git-blame-ignore-revs` to ignore bulk formatting changes.
Commit: c998bb1 Message: [compiler] Run prettier, fix snap This commit applies Prettier formatting across the codebase, altering many lines without changing the functionality.
What are some alternatives?
v - Simple, fast, safe, compiled language for developing maintainable software. Compiles itself in <1s with zero library dependencies. Supports automatic C => V translation. https://vlang.io
qwik - Instant-loading web apps, without effort
TinyGo - Go compiler for small places. Microcontrollers, WebAssembly (WASM/WASI), and command-line tools. Based on LLVM.
Alpine.js - A rugged, minimal framework for composing JavaScript behavior in your markup.
zig - General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software.
Vue.js - This is the repo for Vue 2. For Vue 3, go to https://github.com/vuejs/core
Nim - Nim is a statically typed compiled systems programming language. It combines successful concepts from mature languages like Python, Ada and Modula. Its design focuses on efficiency, expressiveness, and elegance (in that order of priority).
SvelteKit - web development, streamlined
Angular - Deliver web apps with confidence 🚀
lit-element - LEGACY REPO. This repository is for maintenance of the legacy LitElement library. The LitElement base class is now part of the Lit library, which is developed in the lit monorepo.
golang-developer-roadmap - Roadmap to becoming a Go developer in 2020
Tailwind CSS - A utility-first CSS framework for rapid UI development.