0.0.0 • Published 2 years ago

joymo-ui v0.0.0

Weekly downloads
-
License
-
Repository
github
Last release
2 years ago

Joymo UI

This library contains components and styling that may be reused across all the Joymo suite of products. Created with Angular 12.

NPM >= 7 (shipped with Node 15) is required. See nvm or fnm.

Code scaffolding

Run ng generate component component-name to generate a new component. You can also use ng generate directive|pipe|service|class|guard|interface|enum|module.

  • It is recomended to follow the 7-1 pattern when dealing with style rules. This allows us to centralize definitions and reuse/import them accordingly.
  • It is encouraged to define some tests (scaffolding will create a spec file automatically) before you create your code.

Build

  • Run npm run build:demo to build the Playground, which consumes the library's components and assets.
  • Run npm run build:icons to build the icons SVG sprite introduced in PR#39.
  • Run npm run build:ui to build the UI library kit

Serve the demo project

Run npm run build:ui && npm start to serve the app locally.

Publishing

After building you may publish this library to our GitHub Packages Registry by running npm run publish:ui. This command will take care of updating the package version.

  • It is encouraged to follow the Conventional Commits commit structure to help with readability and semantic versioning when publishing*.

    * Until the library reaches a stable, production-ready point, version changes will be frequent and releases do not necessarily follow the Conventional standard. This means that currently all changes strictly produce *patch* bumps only.

Testing

Tests should follow a standard Karma/Jasmine setup.

  • To run tests on a CI environment run the npm test command.
  • For local/development environment you may want to run it on watch, headless mode instead: npm test -- --watch --browsers ChromeHeadless.

Dependency management

Dependabot automatically manages upgrades on a weekly basis, as specified in dependabot.yml.

If you need a new runtime dependency to be installed for the UI kit to work (e.g. ng-select or moment.js) you should:

  • List it as a peer dependency under the projects/joymo-ui package. Note: since NPM v7 is it not necessary to list them as development dependency (reference).
  • Consumer apps (like joymo-ui-demo) can just install these required dependencies as dependencies.
0.0.0

2 years ago

0.0.0-watch

3 years ago