Skip to content
Benedikt Groß edited this page Mar 31, 2020 · 37 revisions

Development Environment Setup

Install Node.js, see https://github.com/hfg-gmuend/openmoji/blob/master/CONTRIBUTING.md#developer-setup

Additional Dependencies

Some of the helper scripts have additional dependencies

librsvg

  • brew install librsvg (macOS)
  • apt-get install librsvg2-bin (ubuntu)

pngquant

  • brew install pngquant (macOS)
  • apt-get install pngquant (ubuntu)

shellcheck

  • brew install shellcheck (macOS)

Check List New Release

https://github.com/hfg-gmuend/openmoji

  • Double check all tests green? npm test
  • Exported production color/black files: npm run generate
  • Export svg for fonts: npm run export-svg-font
  • Update version tag in font/scfbuild-color.yml and font/scfbuild-black.yml
  • Generate the OpenMoji fonts: ./helpers/generate-fonts.sh
  • Generate css font embed file: node helpers/generate-font-css.js
  • Update changelog (version tag, date and text)
  • Update version tag in package.json
  • Export release zips (72x72, 618x618, svg): npm run export-zip
  • Publish release on Github (add release notes, add zips)
  • Publish node package: npm publish

https://github.com/hfg-gmuend/openmoji-website

  • Update version tag in package.json
  • Update OpenMoji dependency in package.json
  • Update svg/png files in openmoji-website/data, run npm install
  • Publish website

Fix case-sensitivity file name issue

How to fix file name differences between case-sensitive file system (Linux) and case-insensitive file system (Windows, macOS) ... see also.

git mv black/svg/2b0c.png black/svg/2B0C.png

bash script code snippet

#!/usr/bin/env bash
SCRIPTPATH="$( cd "$(dirname "$0")" ; pwd -P )"
cd "$SCRIPTPATH"

hexcodes=("2b0c" "2b0d" "2b8f")

for hex_lower in ${hexcodes[@]}; do
  hex_upper=$(echo "$hex_lower" | awk '{print toupper($0)}')
  echo ${hex_lower} ${hex_upper}
  git mv data/black/svg/${hex_lower}.svg data/black/svg/${hex_upper}.svg
  git mv data/color/svg/${hex_lower}.svg data/color/svg/${hex_upper}.svg
done
Clone this wiki locally