FOSSMeet 2019

FOSSMeet is an annual event at NIT Calicut that brings together the Free and Open Source Community from around the country.

Its a Unix System, I know this! - Building Unix compliant CLI apps in JavaScript

Submitted by Ashish Kurian Thomas (@akts) on Friday, 4 January 2019

videocam_off
Section: Professional Technical level: Beginner

Vote on this proposal

Login to vote

Total votes:  +3

Abstract

There are a lot of Javascript packages finding their way into GNU/Linux distribution repos. If we want to write a simple script in JavaScript that plays well with the $SHELL, there are a few nitpick areas that need to be dealt with. In a nutshell, we’ll learn how to build a CLI app in JS, that will work as smooth and integrated as a system script, built with ruby or python. This will be a live-coding session or a workshop if people are interested in hacking along.
P.S In between, there will be a showcase of some bash(SHELL) tips and tricks, that saves me quite some time, when coding.

Outline

  • Getting familiar with the NodeJS runtime.
  • Understand how a unix/posix compliant program behaves.
  • Understanding modules in NodeJS and how to write one a.k.a how the “require” and “module” modules works.
  • Learn about Javascript classes, objects, method chaining, prototypes and prototype inheritance a.ka a crash course into Object-oriented Javascript.
  • Writing a cli wrapper for a custom(simple) JS library.
  • Learn a bit about the Unix conventions.
  • Putting it all together to get a nice CLI utility that can be distributed with any GNU/Linux distro.

Requirements

  • The very basics of JavaScript. We’ll be going over it anyway, but it helps if you’re prepared.
  • How to use a cli app(if you’ve ever bust open a terminal, you’re cool)

Speaker bio

I work as a Fullstack web developer over at neoito.com. In my spare time, I build tooling for optimising work flow and admire docker from a distance. Currently trying to go full self-hosted with OpenBSD.

Links

Slides

https://www.aktsbot.in/slides/its-a-unix-system.html

Comments

Login with Twitter or Google to leave a comment