EF React Native Style Framework
!CircleCIcircleci-badgecircleci
!Code Coveragecodecov-badgecodecov
!NPM Versionnpm-version-badgenpm
!Licenselicense-badgelicense
!NPM Weekly Downloadsnpm-downloads-week-badgenpm
!NPM Monthly Downloadsnpm-downloads-month-badgenpm
!NPM Yearly Downloadsnpm-downloads-year-badgenpm
!NPM Total Downloadsnpm-downloads-total-badgenpm
!Node Versionnode-version-badgenode-version
!Semantic Releasesemantic-release-badgesemantic-release
!Commitizen friendlycommitizen-badgecommitizen
!Conventional Commitscoventional-commits-badgecoventional-commits
!Direct Dependencies Statusdavid-dm-direct-badgedavid-dm
!Developer Dependencies Statusdavid-dm-dev-badgedavid-dm
!Peer Dependencies Statusdavid-dm-peer-badgedavid-dm
!Optional Dependencies Statusdavid-dm-optional-badgedavid-dmStyling for React Native components
Usage
yarn add @ef-carbon/react-native-style
Read the documentationdocs for API guidance. See
@ef-carbon/react-native-demo
demo for an example application.
View the presentationpresentation for a quick overview of the project.Development
The project attempts to make the workflow as frictionless as possible. Any suggestions to improve the work processes are welcomed :metal:Getting Started
Get up and running using yarnyarn:yarn install
yarn build
IDE
Install Atomatom IDEatom-ide with the TypeScriptatom-ide-typescript and XTermatom-xterm pluginsHacking
Runyarn watch:test
. Unit tests will re-run after any changes to the source code.Testing
The unit tests use Jestjest.Releases
Releases are performed automatically viasemantic-release
semantic-release. When commits are merged to master
the Conventional Commitscoventional-commits are read and version number determined automatically.Scripts
There are various scripts available that provide the workflow steps for the project:| Name | Description | | ------------------ | ----------------------------------------------------------------------------------------------- | |
commit
| Starts the commitizencommitizen CLI |
| distclean
| Returns the project to initial state |
| clean
| Returns the project to postinstall state |
| build
| Builds the project |
| build:ts
| Builds the TypeScript files into the JavaScript output |
| format
| Formats the project |
| lint
| Lints the project |
| lint:fix
| Fixes up simple linting rule violations automatically |
| lint:ci
| Validates the CI configuration file |
| lint:ts
| Performs linting of TypeScript files |
| lint:ts:fix
| Fixes up simple rule violations in TypeScript files |
| lint:format
| Checks the formatting of the TypeScript source code |
| lint:format:fix
| Automatically fixes up formatting violations |
| lint:commit
| Makes sure the commits follow the conventional commitscoventional-commits style |
| watch:ts
| Watches the TypeScript source files for changes |
| watch:test
| Re-runs unit tests on any file changes |
| test
| Tests the project |
| coverage
| Provides test coverage statistics for the project |
| ci
| Runs a set of commands that are needed to pass the CI workflow |
| fix
| Performs formatting and linting fixes |
| docs
| Builds API documentation |
| docs:open
| Opens up the built API documentation in the default browser |