Broadleaf provides a rich, unified admin application built to interact with headless APIs. The admin application comes configured with support for managing all of Broadleaf’s microservices. In addition, the admin is highly extensible and provides mechanisms to not only change out-of-box views, but add new ones for managing new services.
There are several guiding principles we took as we designed and developed the admin application for managing our set of microservices.
It was essential for us to create an admin that was flexible enough to work with any headless API we throw at it. Not only is this important for our internally developed services, but this is important for our customers, who often have existing services that they may want to centrally manage.
It was essential for us to create an admin that was highly extensible. Our out-of-box admin screens and services often work as they come for many customers, but when they do not, it is important to provide ways to customize. We have put a lot of work into creating intuitive and powerful ways to extend and customize the admin to fit business needs.
It was essential for us that we keep up on the latest technologies and best practices. We chose to use React with modern tooling for our frontend, and the latest of Spring Boot for many of our services.
The Broadleaf admin application includes a frontend written in React, and several supporting services delivered as independent Spring Boot applications.
The diagram above calls out several important components of the admin application:
The frontend admin client written in React. This is a single-page application responsible for rendering the admin within a user’s browser. See the Admin Client section for more on the admin client.
The services used to support different parts of the admin application.
The service responsible for providing expressive metadata as JSON that is used to drive the content and layout of the admin views and forms. See the Metadata section for more on the metadata service.
The service responsible for providing the navigation hierarchy for the admin. See the Navigation section for more on the navigation service.
The OAuth2 authorization server responsible for issuing access tokens for accessing Broadleaf Services.
The services Broadleaf provides that the admin is pre-configured to manage and interact with.
The services you choose to expose and manage from within the admin application.
Learn more about the admin, how it works, and what you can do with it:
Metadata: Learn more about the metadata service, and how you can build and adjust highly configurable, metadata-driven views.
Navigation: Learn more about the navigation service, and how you can make changes to the admin navigation.
Client: Learn more about the frontend client for the admin, and how it works.
Security: Learn more about security within the admin, and how you can manage users, roles, and permissions.