Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/croz-ltd/nrich-frontend
React monorepo providing bindings to simplify the integration with nrich libraries.
https://github.com/croz-ltd/nrich-frontend
croz nrich react typescript
Last synced: about 1 month ago
JSON representation
React monorepo providing bindings to simplify the integration with nrich libraries.
- Host: GitHub
- URL: https://github.com/croz-ltd/nrich-frontend
- Owner: croz-ltd
- License: apache-2.0
- Created: 2022-04-08T08:09:02.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2024-09-09T07:58:30.000Z (2 months ago)
- Last Synced: 2024-10-10T11:15:01.664Z (about 1 month ago)
- Topics: croz, nrich, react, typescript
- Language: TypeScript
- Homepage:
- Size: 1.94 MB
- Stars: 17
- Watchers: 7
- Forks: 1
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
[![Build](https://github.com/croz-ltd/nrich-frontend/actions/workflows/build.yml/badge.svg)](https://github.com/croz-ltd/nrich-frontend/actions/workflows/build.yml)
[![codecov.io](https://codecov.io/github/croz-ltd/nrich-frontend/coverage.svg?branch=master)](https://codecov.io/github/croz-ltd/nrich-frontend?branch=master)
[![Documentation](https://img.shields.io/badge/API%20Documentation-nrich--frontend-orange)](https://croz-ltd.github.io/nrich-frontend/)
[![License](https://img.shields.io/github/license/croz-ltd/nrich?color=yellow&logo=apache)](https://github.com/croz-ltd/nrich/blob/master/LICENSE)![npm (scoped)](https://img.shields.io/npm/v/@croz/nrich-form-configuration-core?color=yellowgreen&label=@croz/nrich-form-configuration-core)
![npm (scoped)](https://img.shields.io/npm/v/@croz/nrich-notification-core?color=blueviolet&label=@croz/nrich-notification-core)
![npm (scoped)](https://img.shields.io/npm/v/@croz/nrich-notification-mui?color=orange&label=@croz/nrich-notification-mui)# nrich-frontend
React monorepo providing bindings to simplify the integration with [nrich](https://github.com/croz-ltd/nrich) libraries.
The overall project is built on top of the concept of [Yarn workspaces](https://yarnpkg.com/features/workspaces) using [Turborepo](https://turbo.build/repo) as a build management system.
For the demonstration of the integrations provided here, please visit the [nrich-demo-frontend](https://github.com/croz-ltd/nrich-demo-frontend)
repository.### Workspace/module overview
Workspace is divided in `config` and `libs` subcategories.
`config` contains common configuration used throughout the `libs` implementations.`libs` contains implementation of specific modules separated in two categories. First is a `core` module which contains common logic
and custom hooks for the module. Second are adapters for specific UI component library, currently only `mui`.The following workspaces/modules are available:
* [@croz/nrich-form-configuration-core](libs/form-configuration/core/README.md) - contains the core utilities for using nrich form-configuration module
* [@croz/nrich-notification-core](libs/notification/core/README.md) - contains the core utilities for handling common state operations for the nrich notification module
* [@croz/nrich-notification-mui](libs/notification/mui/README.md) - contains the UI implementation of notifications for the MUI component library### Development of new modules
When developing a new module, the workspaces are to be organized as in the example:
* `libs/foo-core`, where `foo` is the name of the module matching the naming conventions of the complementary backend module
* `libs/foo-bar`, where `foo` is the name of the module matching the naming conventions of the complementary backend module, and `bar`
is the name of the UI component library### Common commands
#### Build
To build all modules, run `yarn build`.
To build specific module(s), run `yarn build -filter=foo`, where `foo` is the workspace name (e.g. `@croz/nrich-notification-core`).
This specific command receives a variable number of arguments.#### Clean
To clean build artifacts, run `yarn clean`.
#### Lint
To execute the linting process in a read-only mode (without actually affecting the files), run `yarn lint`.
To automatically apply changes, run `yarn lint --fix`.
#### Test
To run tests, use `yarn test`.