Salesforce is a robust, adaptable platform. The draw of using Salesforce is the concept that you have the power to create apps and experiences that are custom to your organization. Now with the wide adoption and stability of the Lightning Experience, Salesforce has become a playground for administrators to create configurable experiences with even more ease. Each quarter, Salesforce releases powerful new features in Lightning that empower admins to truly manage their custom apps without the need for customization.
Salesforce does a great job of offering a wide set of tools, but there are definitely still times when it makes sense to go custom. Our design team breaks this down in a few ways when we approach the potential of creating a custom component in Salesforce Lightning.
1. Puzzle Pieces
What helps us understand Lightning is keeping in mind we have a bunch of different puzzle pieces (components) to work with to create layouts that are optimized for a user’s experience. So, when we go down the custom route, we really think about what the platform does well and we push that as much as we can. Once we find that the platform does not please the basic needs, we then begin to think about building a new puzzle piece. When using the Lightning App Builder, you can pull these custom puzzle pieces (components) onto a layout. If done well, that layout can adapt based on its surroundings to compliment a user’s experience.
2. Weigh the Pros and Cons ― Is this really needed?
We get that question a lot when we recommend a custom component to be built. The need can be measured from three specific points of view:
What is the opportunity gained for a user if this component is built? How much time will it save that user? If we understand how much time it will save, we can then understand how much money it can save a business. The ease of using something with efficient speed is something we can put numbers behind and prove the value to a business.
Based upon the potential savings from a user experience, how does this weigh against the development cost? Does the cost improvement justify building this component?
Knowing all of the above, what could the potential maintenance cost?
3. Think Smart and Thorough
When recommending a component, we work closely with our Technical Architects to ensure we are building the most efficient and smart component for the problem. We think about how responsive and adaptable it will be in different layouts, can this new pattern be reused in other areas, etc.
4. Cohesive Design
The Lightning Experience is a well developed and thoughtful design experience that should be maintained as much as possible. If we are building a puzzle piece that needs to fit into a platform layout, we must think about how that puzzle piece fits in from a design perspective. We rely heavily on the Lightning Design System to guide our decisions. We ask clients if their branding is a must in this situation; if so, we usually recommend a subtle integration of their logo icon or mark. We highly recommend to not try and take over with a design that is completely different than the Lightning Experience, it just doesn’t make sense and will potentially disrupt the ease of use of their targeted user.
Creating custom components will most likely be a need that will not go away with Salesforce. It is impossible to provide solutions for every specific business need that is out there. Salesforce has done a really good job of providing tools and directions on how to get there, but sometimes you need an expert like CodeScience to come in and support you to the end result. We’re happy to lend a hand if you contact us!