Design once. Deliver everywhere.
A modern design system for building progressive applications that scale seamlessly across all devices.
Based on a fork of the World Food Programme UI Kit (WFP-UI) 🇺🇳
Please refer to the Contribution Guidelines before starting any work.
Requirements: node.js 14.x, yarn 1.x
Use the feat/ branches for active development.
Clone the develop branch for the un-core monorepo. TODO: Update Branch naming
The project is using a lerna/yarn mono repository for development. Make sure you have yarn installed globally on your machine.
git clone --branch develop https://github.com/Polyxo/pui.git
yarn install
yarn buildAll packages can be found inside packages/.
layout: breakpoints, spacings, etc. no longer used, now themes!iconsall iconsicons-coretools to generateiconsicons-reactthe react package of the iconsstyles: all components stylesthemes: theming (colors, etc.) TODO: move to themes-corereact: the react components
View available Components [here](https://example.org. Usage information is available when you click the blue Show Info icon in the top right corner of the selected component.
We recommend the use of React Storybook for developing components.
- Generate new tests
npm run test
- Start the server:
npm run storybook
- Open browser to
http://localhost:9000/. - Develop components in the
/componentsfolder. Add the export toindex.jsto include them into the build. - Write stories for your components in
/.componentswith.stories.jsorstories.mdxending.
Use Conventional Commits for commit messages and pre-commit hooks for commiting.
Make sure your commit does not produce any errors while checking:
- ESlint
- jest tests
- correct commit message
Use jest for testing the components. Once commited the branches will be also tested on Travis CI.
npm run test
The UN Core uses Azure Devops, yarn, lerna and semver for automated versioning and the deployment.
- Commits on the
masterbranch will be released as@lastestif a relevant commit is included (e.g. feat, fix, perf, breaking) - Commits on
nextbranch will be released as@nextif a relevant commit is included
yarn publish:alpha-cli
or
git push --follow-tags origin next && npm publish --tag alpha
To publish local changes directly to a alpha release on npm.