Welcome to our documentation! Uniform is a different kind of product, one that may be unlike anything else you've encountered. We're not offended when people describe it this way. But that's exactly why we created it. There isn't anything else like it, but the world needs it. So here we are.
We're developers too, so we understand the desire to jump right into code. But we strongly recommend you read the information on this page. Or, at the very least, the overview below. Understanding what Uniform is and what problems it was designed to solve will make working with the product much easier.
We've distilled our introductory content to its bare essentials for you. If you read nothing else before diving into the rest of our documentation, please read this. It will help you to understand what all this stuff is.
What is Uniform?
Uniform enables you to build and maintain composable systems without having to build and maintain all the connections between those systems yourself.
What is composability?
It is pretty rare for a single system to be able to provide all of the functionality you need in an application, be it a web application or a mobile application or any other kind of application. Multiple systems need to work together in order to solve real-world problems. A composable architecture is one in which you are able to decide which products make up your technology stack.
It has never been easy to get multiple, independent systems to work together, but over time it has become easier. Think about all of the headless systems available today. Those systems are designed to be connected with other systems. That was a huge breakthrough for packaged software. These products were created with the expectation that they'd be integrated.
But that's a matter of these products being composable. Composability is something different. It's when your architecture enables you to add and remove products fairly easily. It's where none of the products in your architecture are so tightly coupled that you're unable to update the products in your architecture. It's when no single product in your architecture is irreplacable or dominant.
If you buy a bunch of vegetables at the grocery store are you going to eat healthy? Those foods have the potential for you to prepare a healthy meal, but you could also dump them into a deep fryer, or cover them in butter. You might end up with a delicious meal, but it's not guaranteed to be a healthy meal.
The same is true with composable products. Just because you select a bunch of composable products doesn't mean you're going to end up with a composable architecture. If those products are connected in a way that tightly couples the products so you cannot easily add or remove products, you don't have a composable architecture.
This is what Uniform is all about: making it possible for you to create a composable architecture without having to take on the responsibility to connect all of your products yourself.
Uniform's capabilities can be divided into the following categories. Uniform is designed to be adopted incrementally, so it is common for people to start with one or two of these capabilities, and then add more over time:
|Composition||Layout management for omnichannel digital experiences with a composable architecture.|
|Integration||Pre-built connectors for the systems that make up your composable architecture.|
|Orchestration||Engine that coordinates activity across the systems that make up your composable architecture.|
|Classification||Features that enable you to define and track visitor activity in order understand interests and intent.|
|Personalization||Tools to define and deliver personalized experiences at scale and with the fastest possible performance.|
|A/B testing||Tools to test changes to content and presentation across multiple channels.|
Uniform's capabilities are implemented in several products:
|Capability||Uniform Canvas||Uniform Context||Uniform Mesh|
Who is Uniform for?
While people who play a wide variety of roles get the benefits of Uniform, developers and architects are the primary audience for the Uniform product. These are the people responsible for designing, building and maintaining applications and the architectures they run on.
So if you're a developer or architect, you're in the right place. And if you're not, of course you're welcome here. But we do make some assumptions about the knowledge you have and the tools you have access to.
Get your hands on some code by completing our Getting started tutorial. This will get you up and running with Uniform in 30 minutes or less.
Not a developer? Or do you want to learn more before jumping into the product? A great place to go is the capabilities section. There you can learn about what Uniform is, what is can do, and how it works.
Navigating the docs
Our documentation is broken into the following categories:
- Getting started is this section! It provides the background information you need in order to be able to navigate the rest of the documentation and the product.
- Capabilities dive deep into the building blocks that make up Uniform. This is where you will find the information you need to fully understand what Uniform is and how it works.
- Tutorials are designed to get you up and running with Uniform as quickly as possible. Each is a self-contained lesson on a particular aspect of Uniform. If you like jumping right into a new product, this is where you should go.
- Guides provide instructions on how to do things with Uniform. Unlike the tutorials, which take you through very specific scenarios, guides are more generalized. For example, a tutorial might cover how to add personalization to a product detail page in a web shop, where a guide might cover how to add personalization to a component using Uniform.
- Integrations provide details about the various connectors Uniform offers.
- Reference is where you will find all the details developers need in order to incorporate Uniform capabilities into their applications. This section also provides information to help map Uniform marketing concepts (like product names) to actual capabilities.