Difference between revisions of "Bower"

From OpenEMR Project Wiki
Line 19: Line 19:
:#'bower install' command
:#'bower install' command
:#Remove .gitignore and .gitattributes files(if they are present) from the installed package.
:#Remove .gitignore and .gitattributes files(if they are present) from the installed package.
:#Remove any scripts that may cause vulnerability (such as example scripts that allow file uploading).


==Manual Method (only if bower method is not supported by package)==
==Manual Method (only if bower method is not supported by package)==

Revision as of 20:18, 9 July 2016

Overview

Added this to attempt to standardize the assets that are used by openemr.
Assets that are collected via bower are stored at public/assets; note this location is flexible since we are not sure where we will be storing these in the future as migrate to MVC architecture.
  • The path is set to a global ($GLOBALS['assets_static_relative']) here in the codebase(so the path will be easy to change in the future) and also would need to be changed in the .bowerrc file):
  • Incorporating the versions in the paths of the libraries.

ignoredDependencies setting in .bowerrc file.

Using "ignoredDependencies" in .bowerrc file to ignore sub-dependencies which makes things messy(would bring in paths without versions of which would be a redundant library).
  • datatables
  • jquery
  • imagesloaded
  • react

Add New Asset

Bower Method (preferred)

  1. Add entry to the bower.json file.
  2. 'bower install' command
  3. Remove .gitignore and .gitattributes files(if they are present) from the installed package.
  4. Remove any scripts that may cause vulnerability (such as example scripts that allow file uploading).

Manual Method (only if bower method is not supported by package)

  1. If there is no bower support and package is not a supported git repo, then will need to bring in manually. See below shortcut.js-2-01-B asset for example.
  2. Remove .gitignore and .gitattributes files(if they are present) from the installed package.

Current Assets

AnythingSlider-1-9-4 (pending Ray's optho form)

  • Removed .gitignore and .gitattributes files.

bootstrap-3-3-4 (pending Ray's optho form)

Chart.js-2-1-3 (pending Ray's optho form)

  • Removed .gitignore file.

datatables-1-10-11 (pending Kevin's EDI project)

datatables-fixedcolumns-3-2-1 (pending Kevin's EDI project)

datatables-fixedheader-3-1-1 (pending Kevin's EDI project)

datatables-scroller-1-4-1 (pending Kevin's EDI project)

font-awesome-4-6-3

  • Removed .gitignore file.

jquery-panelslider-0-1-1 (pending Ray's optho form)

jquery-ui-1-10-4 (pending Kevin's EDI project)

jquery-ui-1-11-4 (pending Ray's optho form)

  • Removed .gitignore file.

literallycanvas-0-4-13

moment-2-13-0 (pending Ray's optho form)

pure-0-5-0 (pending Ray's optho form)

qtip2-2-2-1 (pending Ray's optho form)

react-15-1-0

shortcut.js-2-01-B (pending Ray's optho form)

  • Not supported by bower, so brought in manually to the manual-added-packages sub-directory.

undone.js-0-0-1 (pending Ray's optho form)

  • Removed .gitignore and .gitattributes files.

Questions

Development is ongoing for this project:
  • Ideal directory for this stuff (this is why we have made it flexible so can easily change this in the future)
  • Ideal syntax of the bower openemr package
  • Use this only for front-end libraries (css/js)?
  • Use composer for back-end libraries? If so, use separate directory?

Forum