My mission is to improve my company's front-end and "design system," which includes branding, design, photography and front-end for all its properties. We have a desktop software and I redesigned all of it's front-end by modifying its front-end framework and implementing and adapting google's material design. We want to make things consistent, but I have terrible fear of creating so many custom things that I will spend the rest of my time fixing bugs, so my manager suggested using the top seller templates such as Avada or BE theme, which I think are modified versions of bootstrap. Those themes have lots of templates and drag editors, and also also maintained by professional companies. After I establish good design system (I'm trying to follow an atomic design philosophy) , I want to focus more on UX and improving the user experience. So instead of multiple versions of buttons, or tables, we will just one component, and everything will have a consistent look, this will help us build the right design components we need and save time in the future. We might have other smaller applications (such as a member's only area) with custom code, but should I design from scratch a wordpress theme using google's material design lite CSS framework, use a modified version of a famous wordpress theme that probably is using bootstrap, or should I design from scratch using foundation? I know there are no silver bullets in programming, but I need to make a decision on what will be more maintainable and we will give us the ability to maintain a good and distinct design system. We already have our software UI all designed in photoshop with a good design grid, consistent icons (around 120).
There are advantages to both approaches. Using a theme such as Avada or X (my recommendation) will make the process faster and guarantee consistency, however the downsides are bloated code and potentially slow page load times. If you don't have a large or media-heavy site, this may not be an issue.
Choose a theme that has a solid reputation for customer support and theme updates. Look at all the demos and be sure that you can mix and match the different elements that you like. And keep in mind that they all come with their own page builders and shortcodes, so you will need to choose a theme you want to stick with until you are ready to completely re-design.
The pros of developing a custom theme are having more streamlined code and total control over the updates. The downsides would be an increased time/cost factor, a need to have someone monitor software changes and make necessary updates, and further development for future functional needs. Additional attention will need to be placed on required plugin compatibility. If you use ecommerce solutions, payment processors or email marketing opt ins, you'll need to be sure the custom code plays nice with them.
Both approaches should allow you to create a totally customized design and user experience.
Additional note regarding using a pre-coded theme: Be sure to check the compatibility with your required plugins as well. Most of them take the major ones into consideration, but if you aren't sure, reach out to the developers and ask ahead of time.
Good luck! Feel free to contact me if I can help further.
Agreed with Nicky.
A few other considerations worth mentioning. Using a theme will require more effort to customize layouts/looks to your exact specifications, so you have to ask yourself if ease-of-deployment and a perfected look (that isn't tested yet) worth the risk of more difficulty in layout customization. And if you plan on doing design/layout AB tests or make regular changes to look/feel, how easy will it be to do those things?
You might be able to get the best of both worlds using a powerful and/or clean theme and layer on something like Beaver Builder to be able to iterate much faster and streamline your design workflow tremendously.
That being said, if the website will be a set-it-and-forget-it project I'd likely recommend custom from the ground up. Otherwise, for small business, consider working on a minimum viable deployment with a theme you can dig into deeply and layout builders that you can quickly iterate on.
Of course, "is it worth it" is a fairly loaded question because a lot of that depends on the goal of your project, your budget and skill set, and the timeline for what you're working on.
If your #1 goal is to promote (and sell) your company/product on a WordPress website then I recommend starting with a pre-built theme and using a page-builder (like https://siteorigin.com/page-builder/) to create the functionality and design you're looking for.
Most people spend way too much time and energy on version 1.0 of their site, when they would be better off creating a simple user experience, promoting their product, and upgrading their site as needed once their product is generating sales.
Done is better than perfect!