https://github.com/trendyol/quarkify
An awesome lightweight React UI Component library
https://github.com/trendyol/quarkify
react react-components typescript ui ui-components
Last synced: 9 months ago
JSON representation
An awesome lightweight React UI Component library
- Host: GitHub
- URL: https://github.com/trendyol/quarkify
- Owner: Trendyol
- License: mit
- Created: 2019-06-26T13:02:33.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2025-03-12T12:48:22.000Z (10 months ago)
- Last Synced: 2025-04-04T11:16:42.462Z (9 months ago)
- Topics: react, react-components, typescript, ui, ui-components
- Language: TypeScript
- Homepage: https://trendyol.github.io/quarkify/
- Size: 16.5 MB
- Stars: 84
- Watchers: 12
- Forks: 9
- Open Issues: 19
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
Quarkify
An awesome lightweight React UI Component library
Explore the docs »
View Demo
·
Report Bug
·
Request Feature
[![Build Status][build-shield]][build-url]
[![codecov][codecov-shield]][codecov-url]
[![contributions welcome][contributors-shield]][contributors-url]
[![MIT License][license-shield]][license-url]
## Table of Contents
* [About the Project](#about-the-project)
* [Built With](#built-with)
* [Getting Started](#getting-started)
* [Installation](#installation)
* [Usage](#usage)
* [Examples](#examples)
* [Contributing](#contributing)
* [License](#license)
* [Acknowledgements](#acknowledgements)
## About The Project
There are many great UI libraries for react available but almost all of them are
highly customizable and full of boilerplate code, so we decided to create our own
lightweight React Component library and you should give it a try.
Here's why:
* Your time will be spent doing actual work instead of creating simple components.
* You will not worry about consistency across your components.
* Each component is implemented with accessibility in mind. :smile:
You may also suggest changes by forking this repo and creating a pull request or opening an issue with the tag.
### Built With
* [React](https://reactjs.org/)
* [Create-React-App](https://github.com/facebook/create-react-app)
* [SASS](https://sass-lang.com/)
* [Jest](https://jestjs.io/)
* [Enzyme](https://airbnb.io/enzyme/)
* [Classnames](https://github.com/JedWatson/classnames)
* [Typescript](https://www.typescriptlang.org/)
## Getting Started
To get a local copy up and running follow these simple example steps.
### Installation
* To add quarkify library to your project
1. Simply run one of the commands below in your project directory.
```sh
npm install quarkify@latest --save
```
or
```sh
yarn add quarkify
```
* To install storybook locally
1. Clone the repo
```sh
git clone https://github.com/Trendyol/quarkify.git
```
2. Install NPM packages
```sh
npm install
```
Or alternatively Yarn
```sh
yarn install
```
3. Run tests
```sh
npm run test
yarn run test
```
4. Run storybook
```sh
npm start
yarn start
```
## Usage
To preview the live demo and see usages of the components please
refer to our [demo][storybook-url]
### Examples
We have several examples on our [document][docsify-url]. Here is the first one to get you started:
```js
import Button from "quarkify/components/button"
function App() {
return (
Hello World
);
}
```
This will render Button component with primary variant:
[![Button Component][button]](#)
As you can see, to import components into your project, you need to specify the path as
```
"quarkify/components/{component-name}"
```
Furthermore, to use `Modal` component:
```js
import Button from "quarkify/components/button"
import Modal from "quarkify/components/modal";
let show = false;
function handleChange() {
show = !show
}
function closeModal() {
show = false
}
function App() {
return (
Toggle Me
Some Title
Some content
Ok
);
}
```
When button is toggled, it will render the modal as it is seen below:
[![Modal Component][modal]](#)
For more examples, please refer to the [documentation][docsify-url]
## Contributing
Any contributions you make are **greatly appreciated**.
1. Fork the Project
2. Create your Feature Branch (`git checkout -b feature/AmazingFeature`)
3. Commit your Changes (`git commit -m 'Add some AmazingFeature'`)
4. Push to the Branch (`git push origin feature/AmazingFeature`)
5. Open a Pull Request
Please don't forget to check our commit message styles as we want to have
consistency across our commit logs.
## License
Distributed under the MIT License. See `LICENSE` for more information.
## Acknowledgements
* [Img Shields](https://shields.io)
* [Choose an Open Source License](https://choosealicense.com)
* [Readme Template](https://github.com/othneildrew/Best-README-Template)
[build-shield]: https://img.shields.io/badge/build-passing-brightgreen.svg?style=flat-square
[build-url]: https://github.com/Trendyol/quarkify/pulse
[codecov-shield]: https://codecov.io/gh/Trendyol/quarkify/branch/master/graph/badge.svg
[codecov-url]: https://codecov.io/gh/Trendyol/quarkify
[contributors-shield]: https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=flat
[contributors-url]: https://github.com/Trendyol/quarkify/issues
[license-shield]: https://img.shields.io/badge/license-MIT-blue.svg?style=flat-square
[license-url]: LICENSE
[storybook-url]: https://trendyol.github.io/quarkify
[docsify-url]: https://quarkify-d871b.firebaseapp.com/
[button]: images/button.png
[modal]: images/modal.png