Happy Nu Year 2020

2019 was quite the year for Nushell. We landed the initial commit on May 10th, and 1881 commits later we find ourselves at the end of 2019. What all happened this year?

We started off with quite the bang! After quietly working on Nu for a few months, we wrote up a blog post to explain what Nu was. To our surprise, the post got a surprisingly warm reception! Soon, we were recording a podcast with the Changelog to talk about Nu.

As the excitement calmed back to everyday levels, we got to the work of turning this minimum-viable product into the real thing. More than 65 people joined us to help fix bugs, test code, write docs, and explore new directions.

Where are we?

At the end of 2019, where are we?

We now have a website, a blog, three different books, and the results of our first survey

We released 6 different releases: 0.2, 0.3, 0.4, 0.5, 0.6, and 0.7.

Nu gained features. Lots of them. New table designs, new file formats, lots of new commands, improvements to error reporting, plugins (in C++, Go, Python, and Ruby), new colors, support for streaming tables, vi mode, moved to the stable Rust compiler, login shell support, recycle bin support, starship.rs support, fuzzy matching, duration and date comparison, ranges, improved autocomplete, and a bunch of internal improvements to make way for 2020.

Thanks to all the reports, PRs, and help debugging we’ve made a ton of progress in making Nu more stable and complete

What’s ahead?

That said, it’s “def early days” for Nu, as one recent user put it. We couldn’t agree more. It’s not quite ready for people to use as their everyday shell. Things we’re working on in 2020 to make it possible for everyone to use Nu in their day-to-day work:

Stability fixes! We’ll be working hard to make Nu rock solid.

Aliases, variables, functions, scripts

Better integration with the native OS

Improved line editing

A better motto (lots of people confused about what “Github-era” means)

In short, it’s been a lot of fun, a lot of work, and we met some new friends along the way. A very big “thanks!” to all our contributors this year!

Nushell repo

> fetch https://api.github.com/repos/nushell/nushell/stats/contributors | get author | sort-by login | get login ────┬─────────────────── # │ <value> ────┼─────────────────── 0 │ Aloso 1 │ BatmanAoD 2 │ BradyBromley 3 │ BurNiinTRee 4 │ Detegr 5 │ DrSensor 6 │ Flare576 7 │ GuillaumeGomez 8 │ JesterOrNot 9 │ JonnyWalker81 10 │ Paradiesstaub 11 │ Porges 12 │ Southclaws 13 │ aidanharris 14 │ andrasio 15 │ bndbsh 16 │ chhetripradeep 17 │ coolshaurya 18 │ cristicismas 19 │ davidrobertmason 20 │ devnought 21 │ djc 22 │ drmason13 23 │ eoinkelly 24 │ est31 25 │ gilesv 26 │ iamcodemaker 27 │ incrop 28 │ ineol 29 │ jankoprowski 30 │ jdvr 31 │ jerodsanto 32 │ jonathandturner 33 │ landaire 34 │ lesichkovm 35 │ marcelocg 36 │ max-sixty 37 │ mfarberbrodsky 38 │ miller-time 39 │ mlbright 40 │ nalshihabi 41 │ naufraghi 42 │ notryanb 43 │ oknozor 44 │ orf 45 │ oskarskog 46 │ piotrek-szczygiel 47 │ pizzafox 48 │ pka 49 │ pmeredit ────┴─────────────────── ────┬─────────────── # │ <value> ────┼─────────────── 50 │ quebin31 51 │ ramonsnir 52 │ rnxpyke 53 │ rtlechow 54 │ sdfnz 55 │ sebastian-xyz 56 │ svartalf 57 │ t-hart 58 │ taiki-e 59 │ tchak 60 │ thegedge 61 │ tim77 62 │ twe4ked 63 │ uma0317 64 │ vsoch 65 │ vthriller 66 │ wycats 67 │ yaahc 68 │ yahsinhuangtw ────┴───────────────

Nushell book repo

> fetch https://api.github.com/repos/nushell/book/stats/contributors | get author | sort-by login | get login ────┬───────────────── # │ <value> ────┼───────────────── 0 │ Andrew-Webb 1 │ andrasio 2 │ boisgera 3 │ jankoprowski 4 │ jonathandturner 5 │ landaire 6 │ lord 7 │ marcelocg 8 │ mistydemeo 9 │ mlh758 10 │ pizzafox 11 │ pka 12 │ romanlevin 13 │ rtlechow 14 │ sebastian-xyz 15 │ ymgyt ────┴─────────────────

Contributor book

> fetch https://api.github.com/repos/nushell/contributor-book/stats/contributors | get author | sort-by login | get login ───┬───────────────── # │ <value> ───┼───────────────── 0 │ andrasio 1 │ daveremy 2 │ jankoprowski 3 │ jonathandturner 4 │ sebastian-xyz ───┴─────────────────

Cookbook

> fetch https://api.github.com/repos/nushell/cookbook/stats/contributors | get author | sort-by login | get login ───┬───────────────── # │ <value> ───┼───────────────── 0 │ jonathandturner 1 │ notryanb 2 │ sebastian-xyz ───┴─────────────────

Blog