Carbon is a library of reusable React components.
See the demo and documentation site for live examples, or see create-carbon-app to get started.
- Assets
- Immutable
- Validations
- Decorators
- Services
- Integrating Carbon with other UI
- Testing changes to Carbon in your project
- Releasing Carbon
As Carbon is just React components, we support any test suite you prefer to use. However we also provide out-of-the-box test tooling through Carbon Factory.
- Clone the carbon repository (
git clone [email protected]:Sage/carbon.git
) cd carbon
npm install
npm start
- Navigate to http://localhost:8095/ in your favourite browser
Note: MockAPI for tables and dropdowns is disabled locally as it conflicts with HotReloading. To enable see
src/main.js
file
- Use renogen, or add a yml file manually to
./changelog/next
e.g../changelog/next/my-update.yml
. - Update or add an appropriate heading in the style shown below for each change:
Bug Fixes: "Modal: The Modal is now centered in the browser."
The following is a list of technologies Carbon utilises:
- React (JSX) - Components are written using React, as well as the useful JSX syntax.
- Immutable.js - For better performance and data handling, the components rely on using immutable data.
- Node (CommonJS) - The components (or modules) are written using the CommonJS pattern. This allows for modularity and creating isolated/independent components.
- Webpack - In order to consume the modular components in the browser, the code is compiled through Webpack. This also allows managing other dependencies such as stylesheets and images.
- Babel (ES6) - To benefit from ES6 (and ES7) features, the code is compiled through Babel (this also compiles the JSX).
We support and test the Carbon Library against the latest versions of the following browsers:
Carbon is licensed under the Apache-2.0 licence.
Copyright (c) 2018 Sage Group Plc. All rights reserved.