It’s called ‘wjs-cli’, why should i be bothered (part 0)

At this point most of you are like ‘yeah nice intro but why learn another javascript framework’. But that is the entire point of wjs-cli, you don’t need to learn anything new.

wjs-cli is here so that you don’t need to learn anything specifically new like syntax or a new language. It does not try to bring new things to the already congested JS framework scene, it actually tries to help you make sense of it all by providing all the tooling you need with a single command ‘wjs’.

Before we go further, a few things to note

1: wjs-cli stands for (Web JavaScript-Command Line Interface)

2: wjs is still in a very early stage as of writing this article

ADVANTAGES:

Space:

I personally know the pain of running out of disk space immediately i run ng new or ionic start. So when i started wjs i decided that projects don’t necessarily need to be large and thus the starter projects have a size of ~5MB

It achieves this by keeping all large dependencies in it’s ‘resources’ folder and linking them with a project when the resource is needed

Versatility:

The entire point of wjs is to make it easier for you to develop web and native apps with the framework of your choice, so it supports major frameworks like Angular , Vue ,React and if you are not in the mood for using these frameworks you could use Typescript or Javascript.

To make things even better you could start a Javascript project and instead use other languages to make your app, e.g

i: CoffeeScript

ii: Stylus

iii: Less

iv: Sass

v: Pug

vi: OCaml (with extra configuration using parceljs)

All because your entry point is a html file located at

src/index.html

Simplicity:

With all the frameworks and languages listed above you would think you need like 5 command line tools or 10 different project structures for everything but OH BOY!!!!, YOU ARE SOOO WRONG!!!!. All of these project types have the same project structure and the same compile target so it does not matter how you write or what you use to write your app it will still run on every major browser including native webviews meaning it can also be used as a native app.

Disadvantages:

NO iOS support (yet).

With all of these features you would need a config file called wjs-config.json which is auto generated after you start your project with ‘wjs init’ .

wjs-config.json for an angular project

Conclusion

This little project is for developers by developers and i would like to get feedback via email ( neutrino2211@gmail.com ) or if you find any bugs open an issue on the github page

In the next part i will put you through creating a project and getting it ready for a production environment.

Thanks for reading