Balance Mobile
Balance Mobile is the Design System for creating Reckon's React Native applications.
Geting Started
To start using Balance in your React Native App, please ensure you have SSH access to Reckon's BitBucket organsiation.
Then, you can install it like so...
yarn add git+ssh://git@bitbucket.org/reckonhq/design-system.git#v1.52.1# Ensure you update the version number above
and you are ready to use the components!
import { Box } from 'reckon-mobile-design-system`
Demo app
This repo includes a demo app, which allows you to view and test components while you dev.
Make sure you install expo-cli
globally on your machine...
npm install -g expo-cli
...then run the following commands in your terminal...
yarn && yarn demo
About releasing and versioning
Releasing a new version of the Mobile Design System is done by merging a PR from dev to master.
This Design System follows the Semantic Versioning convention. This repository is configured to generate version tags and changelog notes automatically with semantic-release. When a new commit is added to master
branch (for example when a pull request is merged) semantic-release
will inspect the git log and generate a changelog and appropriate version tag based on the changes it finds.
To make it easier to document changes in the codebase we use a formalise commit message convention. A simple commit message might look like:
feat(button): Implement weight props
As per this guide, the commit type must be one of the following:
- build: Changes that affect the build system or external dependencies (example scopes: gulp, broccoli, npm)
- ci: Changes to our CI configuration files and scripts (example scopes: Circle, BrowserStack, SauceLabs)
- docs: Documentation only changes
- feat: A new feature
- fix: A bug fix
- perf: A code change that improves performance
- refactor: A code change that neither fixes a bug nor adds a feature
- test: Adding missing tests or correcting existing tests
PRs from Dev to Master must be merged via a 'merge commit' rather than squashing, to retain all of the commit descriptions for the semantic versioning bot.
To read more about this commit message format and how it's used by semantic-release
check out the docs. Or to get started try using the built-in helper:
yarn commit