Skip to content

V2

Original Josh is being developed from 2014 with bootstrap 2 and it has lots of backwards compatible code.

A lot has changed in these years, including browsers compatibility, better support for modern CSS and JS.

so We decided to re-imagine Josh with modern code and standards.

Thus, V2 is Born.

Principles

With V2, we wanted to have many new principles while developing it. some of them include

Following Code Guidelines

JavaScript

  • Use only one plugin for each type (ex: select, dropdowns, date pickers) except for charts
  • Prefer JS plugins over jQuery plugins
  • Use plugins which are in active development
  • Avoid jQuery as much possible
  • Use ES6 wherever possible
  • Optimize code for faster page loading

CSS

  • Use sass/scss to generate all css
  • Follow 7-1 Pattern i.e. modular scss files
  • Proper bootstrap over-riding
  • Let npm packages take care of vendor prefixes
  • Compress/minify all output css files.

So at the end, you will find v2 not only faster on browsers but code is also well organized!

Browser Support

We Support all modern browsers also including IE 11, as of 01-2020, it supports 93.88% of Total browsers.

You can find all browsers list here

that % may increase in future.

Note: If you want to support other browsers, you can use polyfills but since bootstrap 4 also doesn't support many older browsers, you need to think your strategy as it can add extra load of work.

Customization

Since Josh is a developer product, we want to make it easy onboarding for new developers, so we will be adding extensive documentation, how to videos.

Options options options

Yes, you read it right...we want to add many options for left menu, colors, breadcrumbs everywhere.

in a nutshell, simple product to master but you can provide different UI for each client so learning curve will be less yet each client gets different product.

The release plan for v2

We will release alpha versions until we make it following modern standards and adding enough features.

And then 2 beta versions

And then the stable release.

We push one update every Saturday.

Alpha Stage:

  • Can have drastic changes to structure ex: scss files
  • Can add/remove plugins

Beta Stage:

  • Will try to make app more stable
  • Bug fixing if any

Then, we will push an update for every week or bi-weekly with more layouts, options, configurations.