@bloomreach/hippo-theme

Hippo theme is a centralised library containing reusable components for Hippo-related projects.

Stats

stars 🌟issues ⚠️updated 🛠created 🐣size 🏋️‍♀️
@bloomreach/hippo-theme
Minified + gzip package size for @bloomreach/hippo-theme in KB

Readme

Hippo Theme

The Hippo theme is a centralised library containing reusable components for Hippo-related projects. You can use it to create clickable mockups or end-projects that need to be in line with the Hippo styling.

Development environment setup

Prerequisites

Installation

Run the commands below in the project root directory.

$ npm ci

Useful commands

Generate build

The build version is located in the dist directory.

$ npm run build

Run tests

The tests need to pass in order to build the demo.

$ npm test

Setup server

The browser will show the demo website which shows all available components for the theme.

$ npm start

Watch task for the Hippo theme during development

When working on end projects that use Hippo theme, sometimes changes need to be made to Hippo theme and you want to see the results right away. For this we can use npm link. First create a global link to the Hippo theme

$ npm link

On OSX, you may need super-user privileges to create this link. Assuming you have a watch task with livereload enabled running in your end project, you can use the npmlink_watch task to watch the Hippo theme files (running two live-reload watch tasks in parallel is not possible)

$ npm run npmlink_watch

Then in your end project run

$ npm link hippo-theme

When the link is no longer necessary, simply remove it on the project side with

$ npm uninstall hippo-theme

and in your global NPM library with

$ npm unlink

This, too, may require super-user privileges on OSX.

Deployment to NPM

$ npm publish

Development

Adding icons

To add an icon to the theme and use it in the CMS Java code, perform the following steps:

  • Add the .svg file to the src/images/icons folder
  • Ensure that there is a copyright header
  • Ensure that the icons does have color by setting 'fill="currentColor"' or 'stroke="currentColor"' where applicable
  • Add the icon to the demo page
  • Add the icon constant to the CMS project's Icon.java (api/src/main/java/org/hippoecm/frontend/skin/Icon.java)

If you find any bugs or have a feature request, please open an issue on github!

The npm package download data comes from npm's download counts api and package details come from npms.io.