days
0
-13
-9
hours
-1
-1
minutes
-5
-4
seconds
-1
-9
search
Our favorite GitHub repos

The trendy five: Starting the new year with the best GitHub repos from January 2020

Sarah Schlothauer
github
© Shutterstock/ Veronika 7833

It’s that time of the month again, time to browse the GitHub trending page and pick the best, coolest, or most impressive open source projects for the month. In January 2020, we saw some self-published books on GitHub that dive deep into JavaScript, a new programming language brought to you by an MIT CSAIL Ph.D. student, an interactive tool for creating diagrams with a hand-drawn twist, and more.

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.

Excalidraw

github

Create your own diagram with Excalidraw. Source.

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.

SEE ALSO: Yarn v2 changes migrates codebase from Flow to TypeScript

Taichi

github

The life of a Taichi Kernel. Source.

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
  • Megakernels
  • Two-scale automatic differentiation
  • Embedding in Python

Ramda

Ramda is a “practical function library for JavaScript programmers”. As opposed to various general-purpose JS libraries, Ramda was built with a more narrow goal in mind.

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.

Karate

github

Karate hello world. Source.

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.)

Check out its extensive README on GitHub and browse the demos.

SEE ALSO: JAXenter survey: Which technologies are relevant for you in 2020?

You Don’t Know JS Yet (YDKJSY) 2nd edition

github

Get started with YDKJSY. Source.

The final entry for the month is a little different than usual. YDKJSY is a series of self-published books available on GitHub that go deep into JavaScript’s various concepts.

These books don’t just skim the surface, teaching the same basic concepts as other tutorials. It digs past the topsoil and into the dense nitty-gritty of JavaScript.

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:

Just like the name says, you really don’t know JavaScript until you have a look at these. Read them, re-read them, and re-read them again.

That’s all for this month! See you in March with the next batch.

Author
Sarah Schlothauer

Sarah Schlothauer

All Posts by Sarah Schlothauer

Sarah Schlothauer is an assistant editor for JAXenter.com. She received her Bachelor's degree from Monmouth University and is currently enrolled at Goethe University in Frankfurt, Germany where she is working on her Masters. She lives in Frankfurt with her husband and cat. She is also the editor for Conditio Humana, an online magazine about ethics, AI, and technology.

Leave a Reply