fixedop-part-epc-nuget-package
v0.0.7
Published
This repo exists to show how an application may be set up to use within the CDK Global UI space. If you intend to actually start an application with this codebase, be sure to check in with CDK UI Devs to be sure it is up to date.
Readme
DMS Modernization Starter Template
Purpose of this repo
This repo exists to show how an application may be set up to use within the CDK Global UI space. If you intend to actually start an application with this codebase, be sure to check in with CDK UI Devs to be sure it is up to date.
Top-Level Consistency
There are many options for how to architect an application. As of August 2023, These are the tools deemed most important. In order for the entire UI Dev crew to be able to troubleshoot issues, please use the following tools at the very minimum:
| Requirement | Tool | | --------------------------- | ----------------------------------- | | Environment/Package Manager | Node/NPM (use nvm) | | Library | React / create-react-app | | Language | Typescript (for all new apps) | | Compiler | Webpack | | UI Components | RDS (cdk-radial v6+) | | Linting | airbnb style guide | | Localization | react-intl | | Unit tests | jest, through React Testing Library | | End to End Testing | Cypress |
Standardized Guidance for Development Workflow (in process)
We are looking to provide some "standardized guidance" (as application needs vary widely) for how we desire to provide quality code. Here we may include things like pre-commit linting hooks, pre-push unit testing, using GitHub Actions to automate Cypress e2e tests before a merge, along with Internationalization and Sonar standards. Come back soon for more.
Internationalization (as of 2021, the below may change)
This application relies on react-intl/formatjs to internationalize messages. All words, numbers, and dates displayed to a user must be internationalized.
Recommendations:
Per formatjs suggestions, internationalization should be declared inline with its usage.
TSX/JSX elements such as
FormattedMessage,FormattedDate, etc. are generally preferred over using the imperative API.
