Awesome react based components catalog which provide you markdown documentation and live examples. :boom:
If you interested in project development, please star it and send us your pull-requests!
Click gif image and press Download to zoom

We have preconfigured project template with webpack, babel, tests, etc. (full overview)
Install template generator globally
npm install -g @opuscapita/react-showroom-template
Create empty directory
mkdir my-react-project && cd my-react-project
Init project and ask several questions
showroom init
Install deps
npm install
Done :star2: Let's run it!
npm start
Open in browser: http://localhost:3000
You can easilly add new component.
showroom add and specify component name
Component will be added to src/client/components directory
Component is a directory includes:
Need help with integration to your open-source project? Create an issue or contact us :innocent:
The fundamental ideas of ReactJS is modularity and code reuse. You should't rewrite same things every time.
What ReactJS creators say about it:
How do you know what should be its own component? Just use the same techniques for deciding if you should create a new function or object. One such technique is the single responsibility principle, that is, a component should ideally only do one thing. If it ends up growing, it should be decomposed into smaller subcomponents.
As you start to build large libraries of components, you'll appreciate this explicitness and modularity, and with code reuse, your lines of code will start to shrink. :)
O.K., ReactJS creators :+1: We are sure you are clever. We understand your ideas. But if we want to have a large libraries of components we must have a easy way to organize and browse this library.
Facebook have thousands of components.
In contrast - now we have no common UI composable pieces which allow developers to construct complex busines logic components fast with modern user interface for a better user experience. Happy customer => happy seller
Twitter Bootstrap/React Bootstrap don't solve the problem. It have a good looking typography and a simple for use grid system. It have only a little number of basic components like buttons and inputs.
For example if you have a vertical split-screen, default bootstrap grid system based on html media-queries became useless. Media-queries reacts on main viewport size changes, but with split-screen we have two virtual viewports. Simple react component tracking size of specified DOMNode can solve the problem. If we can't find at http://npmjs.com we can write it themselves and reuse in future.
Written by different people with a different methodology of development and styles organization (style conflicts are not a rarity)
We can't change them when met a limitations of API
~~Allen Carr~~ The easy way to start organize a libraries:
/dev/null again.! Now it require exposed components from
mainnpm package file
| Alexey Sergeev | |
|---|---|
| Kirill Volkovich |
Contributing are welcome. We need YOU! :metal:
npm start npm script of @opuscapita/react-showroom-client can confuse if you want to contribute to showroom. Use this npm goal only to start showroom in server variant.
More prefered way is: run npm link, then npm run link-mode;
Install showroom-template separately.
Before run showroom-template's npm start run npm link @opuscapita/react-showroom-client. After that you can change showroom's source-code and see result.
If you need more info about contribution - please create an issue.
OpusCapita Showroom is licensed under the Apache License, Version 2.0. See LICENSE for the full license text.
$ claude mcp add react-showroom-client \
-- python -m otcore.mcp_server <graph>