A set of libraries with over 200 000 downloads, handling forms in React.

arrow icon


As Vazco we often release our packages as Open Source in order to avoid vendor locking for our clients, and simply because we believe in OS. It saves us testing time and allows to lower costs, in the same time giving our clients an insight into quality of our code. We also simply like to give back to the community.

Managing forms in React can be a really tedious task. When creating a forms package for React, our goal was to speed up development of this very common functionality. We planned to build an automatic form generator, which would be easy to use in simple scenarios, and in the same time powerful enough to support even complex cases.

View online


Radosław Miernik lead the project and created not only a great package, but also a wonderful community around it. As a result, uniforms is now in the top 10 popular React forms packages on GitHub, with over 750 stars and 6000 downloads per month in npm.

We tried a few concepts for gradual automation of forms before we started implementation of uniforms. The final version supports GraphQL, SimpleSchema v.1 and v.2, and allows to generate forms based on a schema. It enables developers to create custom fields with just one line of code and supports easy tweaking of form layouts to make it fit to a custom UI.

The codebase is organized in a multi-package repository managed by Lerna, so that the core and all the themes are released in sync, and we’re treating semantic versioning seriously.

We came up with a very interesting class-based inheritance concept for forms. Basically, there are a few types of forms with different capabilities. You can read more about uniforms in this Medium article: https://blog.meteor.com/managing-forms-in-a-meteor-react-project-with-uniforms-33d60602b43a



  • supports creation of custom fields with one line of code
  • GraphQL support
  • SimpleSchema and [email protected] support
  • wide range of themes

[email protected]
Phone: +48609257363


Opole, 45-470
ul. Wrzosowa 10e


Wrocław, 50-043
ul. Podwale 7/1