This is a template for creating a new component. It includes a basic structure for the component, as well as a set of scripts for building, testing, and documenting the component.
To create a new component, you can use this template as a starting point. To do so, click the "Use this template" button at the top of the repository page. This will create a new repository with the same structure as this one.
Once you have created a new repository, you can clone it to your local machine and start working on your component.
git clone- Before creating a new component, first install the dependencies:
npm install- Then run the
testto ensure everything is in working order:
npm testnote: a coverage and test report will be generated in the
coveragedirectory andreportdirectory, respectively.
- Finally, run the
documentscript to generate the component API documentation:
npm run documentnote: The API documentation will be generated in the
docsdirectory. You can review this by opening theindex.htmlfile in thedocsdirectory in a web browser.
To create a new component, you should first update the package metadata:
Update the package name across all relevant files in this project:
-
Specifications: update name and add package metadata in the
component.specifications.jsonfile in thespecificationsdirectory. -
Package:
package.jsonin therootdirectory. -
Typescript Config: both
tsconfig.jsonfiles are in therootdirectory. -
ES Module:
importmap.jsfiles in theimportmapdirectory. -
Component: update the file names in
srcfolder and class name. -
Unit Testing: The
wallaby.jsandkarma.conf.jsfiles are in therootdirectory, the file names and the package name used in unit tests:test/unit -
Demo: The
index.jsfile in thedemodirectory. -
Confirm that the component name has been updated in all relevant files by running the
testscript:
npm testTo create a new component:
- Review the directory and file structure of the fake
componentimplementation. - Study this software architecture implementation policies (available from repository owner).
- Define the component specifications using the
component.specifications.jsontemplate file provided. - Stickly follow a TDD development approach in feature branches.
- After complete implementation of a feature,
test,build, and generate thedocumentation(see below) - Update the demo scaffold in the
demodirectory to reflect the new component's API and functionality. - Lastly do a pull request to the
mainbranch and merge it if everything checks out.
To test the component, you can use the test script. This script will run the component's test suite and generate both a test and coverage report.
npm testTo document the component API, you can use the docs script. This script will generate a set of documentation files for the component.
npm run documentThis software and its documentation are released under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International Public License (CC BY-NC-SA 4.0). This means you are free to share, copy, distribute, and transmit the work, and to adapt it, but only under the following conditions:
Attribution: You must attribute the work in the manner specified by the author or licensor (but not in any way that suggests that they endorse you or your use of the work).
NonCommercial: You may not use this material for commercial purposes.
ShareAlike: If you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.
For more details, please visit the full license agreement.