A collection of Vue components used in the Betterez UI

Before we start

Remember that Node v6.9.5 is needed.

How we work: reusable, generic components

Keep in mind that we are aiming to create a collection of reusable, generic components.

So, instead of creating a ReservationsList component that knows how to render a list of reservations, in turn create a generic List component that delegates rendering each item to other components, in this case, ReservationListItem.

An example of this is the BtrzGrid and BtrzProductItem components.

To achieve rendering delegation we use Vue's Scoped Slots.

Naming components

All components must begin with the "Btrz" prefix.

Other prefixes shall be used as needed, the only consideration being that they should go from generic to specific. For instance: btrz-input, btrz-input-date, btrz-input-time.

Component's styles

Only the compontent specific styles should be inside the component file.