The trendy five: Starting the new year with the best GitHub repos from January 2020
Every month, we go over the GitHub trending page for any cool repos that stand out from the crowd. We choose five of the most innovative, interesting, and well-thought-out projects to highlight in our monthly report. As always, it was tough to narrow down the list of GitHub repos to our five favorites.
So, in no particular order, here are our top picks from January 2019.
Built with React, Rough.js, and Netlify, Excalidraw is an interactive whiteboard tool for creating diagrams with a charming hand-drawn aesthetic.
The tool itself is a little rough around the edges and does not have many options but is off to a great start. However, its UI is minimalistic and easy to jump right into. With a few clicks, you can quickly sketch up a diagram to share and help visualize your ideas. Quickly draft up flowcharts, diagram mock-ups, chart, or just doodle a stick figure between meetings.
You can view the code sandbox for the GitHub repository here. From there, you can send pull requests.
Taichi is a data-oriented “productive programming language for portable, high-performance, sparse & differentiable computing” created by MIT CSAIL Ph.D. student Yuanming Hu. The language is proving its mettle. So far, 10 differential physical simulators have been built using Taichi.
January 2020 and December 2019 saw consistent updates made to the language, so we will keep an eye out for its future and its short-term goals.
According to its docs, the design decisions include:
- Decouple computation from data structures
- Domain-specific compiler optimizations
- Two-scale automatic differentiation
- Embedding in Python
According to its README, it was built for a pure functional programming style and aims to make it easier when creating functional pipelines, without mutating user data. With Ramda, users can build functions as sequences of simpler functions, which then transform data and pass the data to the next function.
Read the intro to Ramda and see how it came to be.
Do you know karate? Karate is an open source tool that combines API test-automation, mocks, and performance testing all in one simple framework.
Even non-programmers can use Karate and begin testing with its stand-alone single executable, which does not require any Java knowledge. (You do, however, require the Java Runtime Environment.) All of its scripts are written in plain-text. With Karate, tests are highly-readable and easy to comprehend
Users who have some familiarity with Cucumber/Gherkin will see plenty of similarities in Karate’s syntax. (View how they compare.)
You Don’t Know JS Yet (YDKJSY) 2nd edition
Thus, newcomers to JS should skip these books for now. Pin them to your favorites and come back when you have some more experience and they will be a helpful companion for years to come.
Some JS tutorials skip entire portions of the language and assert that there good parts or bad parts. However, You Don’t Know JS Yet covers the entirety of JS: good parts, so-called ‘bad parts’, all parts.
From the preface:
“You may have been told, or felt yourself, that JS is a deeply flawed language that was poorly designed and inconsistently implemented. Many have asserted that it’s the worst most popular language in the world; that nobody writes JS because they want to, only because they have to given its place at the center of the web. That’s a ridiculous, unhealthy, and wholly condescending claim.
…My mission with YDKJSY is to empower every single JS developer to fully own the code they write, to understand it and to write with intention and clarity.”
The following titles are included in the YDKJSY 2nd edition:
- Get Started
- Scope & Closures
- Objects & Classes
- Types & Grammar
- Sync & Async Performance
- ES.Next & Beyond
That’s all for this month! See you in March with the next batch.