What is ProppyJS?

ProppyJS is a tiny 1.5kB JavaScript library for composing props (object that components receive to render themselves).

The generated props can then be used in your favourite components-based UI framework (like React or Vue.js).


The primary purpose of this library is to lift the state one level above your UI components. So that your components are always stateless themselves, while you compose your props separately.

This helps keep your components layer functional and small, while giving you the flexibility to test your Components and the behaviour of their props differently as needed.


Package Status Size Description
proppy proppy-status 1.5K Core package
proppy-react proppy-react-status 1.0K React integration
proppy-vue proppy-vue-status 0.7K Vue.js integration
proppy-preact proppy-preact-status 1.1K Preact integration
proppy-redux proppy-redux-status 0.6K Redux integration
proppy-rx proppy-rx-status 0.6K RxJS integration


There are already many framework-specific utility libraries out there. Proppy is different because it aims to stay agnostic of any specific framework, and maintain a small dependency-free core library.

It supports other frameworks via additional integration packages, which you can use as your application's requirements grow.

Proppy aims to only deal with the data layer, in the form of props composition. Either you want to use them in a ReactJS, Vue.js or a plain JavaScript application is totally up to you.


Original inspiration for this project has been recompose and frint-props.