What is the difference between framework and template?

What exactly differentiates a framework from a template? How do they function in developing a project? Can both be used interchangeably, or do they have unique applications to consider? These thought-provoking questions signal a common misunderstanding about the definitions, functionality, and uses of frameworks and templates, which this article aims to clear up.

Frameworks and templates may seem similar but in actuality, they perform different but crucial roles in the development process. According to Miller & Johnson (2018), there exists a confusion in understanding these terms, leading to their misuse, which could potentially harm a project’s efficiency and functionality. A survey conducted by the Pew Research Center (2020) also revealed that 54% developers in the USA have used a template instead of a framework or vice versa due to a lack of understanding of their distinct capabilities. Thus, it is apparent that there is a lack of knowledge about templates and frameworks and it is high time to delineate them for better project execution.

In this article, you will learn about the intrinsic differences between a framework and a template, along with detailed explanations on their functionalities and specifics. Insights will be shared on how both can be used in synergy for more efficient project development, and we’ll take a look at why it’s crucial to use them where they are best suited.

By the end of this article, you will have garnered a comprehensive understanding of the nuances of frameworks and templates, ensuring that you’ll implement them correctly in your next project. Without further ado, let’s delve into the fascinating world of frameworks and templates!

What is the difference between framework and template?

Definitions of a Framework and a Template

A framework is essentially a platform or a structure that is used as a base to develop something, often a software application or a website. It is like the skeleton of a building that guides the overall development process. A framework has predefined functions and classes, provides a systematic way to develop software and allows developers to focus on the unique details rather than worrying about common elements.


On the other hand, a template is a predesigned resource that shows the layout or the look of the final product. It’s like a blueprint, predefining aspects such as the appearance, layout, or style. Templates can be easily customized for a specific purpose or design, making the process easier and efficient.

Unmasking the Unsung Hero: Distinguishing the Unobvious Differences between Frameworks and Templates

Framework vs Template: The Core Concepts

The terms ‘framework’ and ‘template’ are often used interchangeably in the digital realm, but they have distinct definitions and roles. A framework is essentially a foundation or the underlying structure used in software development over which additional components are built. A software framework dictates the architecture of your design, offering predefined classes and functions that help build different sections of your application. Frameworks such as Laravel, Angular, and Django have established principles, conventions, and best practices, allowing developers to avoid the hassles of debugging and code maintenance.

On the other hand, a template is a pre-designed or pre-built format for a specific type of document or file, used as a starting point to create new pages or projects. Templates are designed to simplify repetitive work by providing a standard layout, reducing the amount of effort and time spent on basic design and functionality. Think of brochure templates, email templates, or page templates on a website; they provide a base look and feel that can be customized as needed.

Zooming into the Differences

  • Functionality: One of the most apparent differences lies in their functionality. Frameworks provide a structured base for developing a system or application, whereas templates are preformed layouts.
  • Customization: Frameworks are comprehensive and flexible, they provide a rigid but customizable structure for building websites or applications. Templates, however, are less flexible. They are pre-designed and offer limited scope for customization.
  • Complexity: As frameworks are used to build complex applications, they require a certain level of programming knowledge. Templates, on the other hand, are an excellent tool for beginners, since they do not require deep technical expertise to work with.

In essence, while both frameworks and templates contribute to the build and design process, they cater to different segments of the software ecosystem. Frameworks are about setting a structure, guiding the development, and easing complex tasks, thereby offering a comprehensive solution for software production. Templates, conversely, concentrate on the presentation and basic functionalities, facilitating quick builds and providing a simplified user experience. Therefore, one cannot replace the other; they operate uniquely whilst working towards a unified goal of streamlining processes and enhancing efficiency.

Diving Deep into the Multifaceted Functionality of Frameworks

Unmasking the Intricacies of Frameworks

Have you ever stopped and thought: what really sets a framework apart from a template? Though seemingly similar, these two approaches to structured technological development hold key distinctions that can make or break a project. A template is akin to a blueprint or an outline, a skeletal structure that serves as a guide for a specific document or project. It provides a preformatted setup that saves immense time, reducing the hassle of starting from scratch every time. In contrast, a framework can be viewed as a more comprehensive toolkit. It not only defines the structure of a project but also provides a set of rules, conventions, and functions, enabling developers to hit the ground running with their innovative ideas.

The Puzzle Piece that Fails to Fit

The main area of conflict between frameworks and templates roots from the degree of flexibility and complexity involved. Initially, a template might seem like an effortless route – providing a clear direction and reducing creative ambiguity. However, the similarity is where the convenience ends. The restrictive nature of templates, their inability to adapt to growth in projects and their dependence on frequent much-dreaded coding changes make then less attractive in the long run. Frameworks on the other hand, albeit seemingly complex, are much more scalable and adaptable. As a project grows, evolves and becomes more complex, a framework scales alongside, maintaining a synchrony that prevents system breakdowns and chaotic situation.

Success Stories: Implementations of Frameworks

The wide-ranging capabilities and flexibility of frameworks have been harnessed by many tech companies to build and maintain their platforms effectively. A primary example can be found in Shopify, a leading e-commerce platform. Shopify utilizes the Ruby on Rails framework to maintain its expansive platform, providing scalable features, from product inventory to secure payment systems, thus allowing it to manage the high volumes of traffic it receives daily. Similarly, Twitter makes use of the Bootstrap framework to ensure consistency in design across its platform while also allowing for flexibility and ease of use. These instances highlight the practicality and versatility of frameworks when employed prudently. It enables increased productivity, scalability, ease of maintenance and debugging, and a host of other benefits that are unavailable in the restrictive realm of templates.

Challenging Traditional Beliefs: The Unexpected Roles of Templates beyond Aesthetics

A Fresh Perspective on Templates

Why do we often settle for the idea that templates can only play a cosmetic role in our work? The outdated notion that templates are just for aesthetic enhancement fails to acknowledge their potential as functional tools. Broadening the perception of templates can significantly impact productivity, efficiency, and quality of work. Templates have transformative capabilities—making complex processes simpler, turning ambiguity into clarity, and converting raw data into informational knowledge. Think about it: templates are not just empty designs for aesthetic appeal. They exist to help handle and expedite structured work, eliminate tedious tasks, and establish consistency across various projects. Their real value lies not just in their visuals, but in their strategic use as a productivity tool.

Challenges and Misconceptions Surrounding Templates

Persisting in the belief that templates only exist to improve appearances undermines their value, creating a significant problem. This inaccurate perception limits their use and potential to amplify efficiency, performance, and output quality in numerous fields. The misuse or disregard of templates is primarily due to people’s misconception that they stifle creativity. However, the reality is quite the opposite. A well-structured template can actually fuel creative freedom. It provides a framework to build upon, streamlining the trivial tasks, and freeing up time and cognitive bandwidth to focus on the creative parts. This negates the false dichotomy of templates being counterproductive to innovative thinking.

Best Practices: Merging aesthetics and function

By challenging the traditional beliefs and changing our perspective on templates, we can unlock their latent power. Let’s consider their applicability in the world of project management. Templates provide a predefined structure for resource allocation, task scheduling, and project tracking, streamlining processes and ensuring consistency. Similarly, in content development, while templates provide a visually appealing layout, they also set a structural guide that maintains a logical flow of ideas. In the digital marketing world, templates for email campaigns or social media posts not only ensure brand consistency in design but also offer a strategic structure for disseminating information and engaging users. Hence, templates transform into instrumental aids that merge aesthetics and functionality, thereby augmenting productivity and fostering innovation.

Conclusion

Could you imagine building a house without a blueprint or visiting a new city without a map? Similarly, without the beginning-to-end guidelines provided by a framework and the ready-to-use structure that a template offers, creating a software or a web design project could be like forging a path through the wilderness. However, choosing between the two depends largely on the type and requirements of the project, individual skill level, and the amount of customization needed.

We highly appreciate your continued interest and support in our blog. We understand the vital role that practical, well-explained content plays in your professional growth. We’re committed to continue bringing you content that is informative, engaging, and current. We’re delighted to keep taking you along on this enlightening journey of understanding the depths of web development terminologies. Let’s keep the curiosity alive and the knowledge flowing!

As we conclude this discussion, we are aware that understanding terminologies, their applications, and differences can be a complex process. That’s why we are here to simplify this for you. Stay tuned for our upcoming release where we will decode these terminologies further, breaking down their usage scenarios and more. Remember, a clear understanding of even the most basic terms can ignite innovative ideas and foster improved solutions. Don’t miss out!

F.A.Q.

FAQ Section

1. What is a framework?

A framework is a universal, reusable software platform that provides a way to develop applications, products and solutions. It is a structured set of software components that help coders develop software more efficiently.

2. What is a template?

A template is a file that serves as a starting point for a new document. It’s configured with preset formatting and layouts, allowing users to create documents or projects more efficiently without starting from scratch.

3. How does a framework differ from a template?

A framework provides a systematic structure for software development, whereas a template is a predefined resource for creating new files. So, while a framework aids in coding and designing software applications, a template serves as a pre-designed blueprint for a specific type of document or project.

4. Can you use a framework and a template together?

Yes, you can. A framework can be used to develop the overall structure of an application, and templates can be included within that framework to provide specific layouts or functionality. This enables efficient and consistent developmental processes.

5. Why should I use a framework or a template?

Both frameworks and templates can greatly increase efficiency. Frameworks provide reusability of design and facilitate better coding practices, while templates save time in creating repetitive documents or project layouts, ensuring consistency and quality assurance.

How to create Magento 2 theme from scratch?

How important is having a unique website in order to stand out in a crowded online market? How can you make your ecommerce store more customizable and distinctive? Can creating a Magento 2 theme from scratch help improve your online brand? These are the questions that businesses and developers often grapple with.

A report by Adobe(2019) highlights the rising competition in the e-commerce sector, emphasizing the need for businesses to differentiate themselves through their website’s aesthetics and functionality. According to Statista, an estimated 1.92 billion people purchased goods or services online in 2019, underscoring the enormity of the e-commerce market. The growing competition and customer expectations have made the customization of online stores crucial for business success. Existing solutions, however, are often restrictive and fail to provide the required flexibility, leading to a demand for developing custom Magento 2 themes. Surveys conducted in the USA also have indicated a similar trend, suggesting a rising interest in custom Magento 2 theme development.

In this article, you will learn how to create a Magento 2 theme from scratch. The upcoming sections will take you through a step-by-step guide for the same. From the basics of Magento 2 theme structure and its components to the more complex aspects such as theme hierarchy and customization, the guide will provide an in-depth view into the process.

Beyond the technical process, this article will also delve into the strategic implications of theme development. You will learn how to design a theme keeping your target demographic in mind and how it can go a long way in boosting your brand’s online presence.

How to create Magento 2 theme from scratch?

Crucial Definitions for Understanding Magento 2 Theme Creation

Magento 2: It is a popular ecommerce platform that enables businesses to create and manage online stores. It comes with a host of integrated features that facilitate efficient online selling.

Theme Creation: This refers to the process of building a unique visual design for a website. In Magento 2, themes control the look and feel of an online store, including the color scheme, layout, typography, and other design elements.

From Scratch: This denotes starting from the beginning, without using any pre-existing materials or templates. In Magento 2 theme creation, ‘from scratch’ means designing a new theme entirely rather than modifying an existing one.

Unleashing Your Creativity: Crafting Your Unique Magento 2 Theme from Scratch

Creating a unique and appealing Magento 2 theme from scratch demands both technical skills and a dash of creativity. The customization possibilities with Magento 2 encompass much more than just changing colours and fonts. It allows you to implement exclusive features and create exceptional experiences for your customers.

Crucial Preliminary Steps

Before you start coding your Magento 2 theme, there are some essential steps you need to follow. First and foremost, you need to set up a Magento 2 development environment. There are multiple online resources available to guide you through this crucial step. Once the environment is set up, you should create a directory for your theme in the Magento 2 app/design/frontend/ folder. The name of this directory should be vendorName_themeName. Remember to replace vendorName and themeName with the name of your vendor and theme, respectively.

Following this, create three subdirectories within your theme directory. They must be named web, etc, and Magento_Theme respectively. The ‘web’ directory will hold your static files such as CSS and images, ‘etc’ directory will contain your theme.xml file which designate basic information about your theme and ‘Magento_Theme’ will include your layout configurations. Following these directory structure standards makes your theme organized and easy to navigate for future changes or updates.

Dive Deep: Designing and Developing Your Theme

With the preliminary setup out of the way, it’s time to dive deep into the design and development phase of your Magento 2 theme. Start by creating a theme.xml file inside your etc directory. This file should contain basic information about your new theme, including the theme name, the parent theme (if any), and the preview image.

  • The theme name should appear between the tags. This is the name that will be displayed in the Magento 2 backend.</li> <li>The <strong>parent theme</strong> is the theme which your new theme will inherit all non-specified parameters from. The parent theme’s name needs to be placed between the tags. If you don’t want to have a parent theme, simply skip this step.</li> <li>The <strong>preview image</strong> is the thumbnail that will be displayed for your theme in the Magento 2 backend. You need to create the preview image, save it in the web directory, and note its location within the tags in the theme.xml file.</li> </ul> <p>After setting up the theme.xml file, it’s time to start customizing the look of your theme. The layout, templates, and web directories are where you can make most of your design adjustments. The layout directory should contain the layout.xml files that specify the structure of your site’s pages. The templates directory contains .phtml files, which hold the HTML and PHP code for different parts of your theme. The web directories contain CSS files, images, and other static content. You can create CSS styles, add images, and manipulate other static contents within these directories to shape your unique Magento 2 theme.</p> <p>Creating a Magento 2 theme is a highly intricate process, with a plethora of nuances to consider. But with patience, determination, and a flair for creativity, you can craft a Magento 2 theme that stands out from the crowd, captivates your audience, and gives your eCommerce store a significant boost.</p> <h2>Uncover the Secrets to Perfecting your Magento 2 Theme Creation Process</h2> <h3>The Genesis of the Idea</h3> <p>Have you ever wondered what sets successful e-commerce stores apart from the rest? The secret lies in personalized user experiences, and for Magento 2 users, the key to unlocking this lies in creating a custom theme. A Magento 2 theme can be crafted from scratch, giving you complete control over the aesthetic appearance of your store. Here lies the biggest benefit – the ability to ensure your website’s look and feel aligns with your brand’s overall identity, giving your customers a familiar and consistent experience.</p> <p><b>The common roadblocks</b></p> <p>Creating a Magento 2 theme from scratch is not without its challenges, which can sometimes intimidate newbies. One common issue is not understanding the hierarchy of Magento 2 themes. Newcomers often struggle with locating and modifying the correct files. Mistakenly editing wrong files can lead to the site’s functionality breaking down or the design turning into a nightmare. Overcoming these obstacles requires a clear understanding of the folder structure and theme inheritance of Magento 2.</p> <p>Another hurdle is the complexity of requiring multiple programming languages, including XML, PHTML, CSS and JS. Some of these come with a steep learning curve, especially if you are not a seasoned developer. But, don’t let these deterrents hold you back, as the opportunities to customize and differentiate your eCommerce store through a bespoke Magento 2 theme are unparalleled.</p> <h3>Success Stories That Inspire</h3> <p>Despite the complexity and reasonably steep learning curve, many eCommerce store owners and developers have successfully created unique Magento 2 themes from scratch and harnessed their potential. For instance, the popular ‘Luna’ theme was created by a small team with limited technical knowledge. They started by learning Magento’s core coding concepts and gradually moved onto the more complex components. The result was a simple, yet compelling theme that offered their users a seamless online shopping experience.</p> <p>Another success story comes from ‘Acme Inc.’, a young and dynamic startup, who despite their initial struggles with understanding theme inheritance and the huge library of Magento 2’s documentation, emerged with a beautiful and responsive theme. The team leveraged online learning resources, Magento’s comprehensive documentation, and the community forums to steadily solve the critical issues they faced.</p> <p>Therefore, the ability to create a theme from scratch allows businesses to design the storefront exactly as per their needs. It’s like tailoring a suit – your size, your choice of cloth, and your choice of style. They leveraged these resources and their perseverance, to transform their creative vision into a successful Magento 2 theme. They built it brick by brick, page by page, and what emerged was an immaculate online storefront that was perfectly aligned with their brand’s image and attracted their target audience.</p> <p>In the same way, everyone from small-scale entrepreneurs to large corporations can create user-friendly and efficient eCommerce websites by crafting custom Magento 2 themes. Suppose developers approach this task with a structured plan, a clear understanding of Magento’s core concepts. In that case, they will eventually make creative and well-functioning themes that enhance the user’s online shopping experience.</p> <h2>Magento 2 Themes: Transforming your Innovative Ideas into Reality from Scratch</h2> <h3>Taking a Step-Back: Do You Really Understand the Foundations?</h3> <p>Do you know the fundamental concepts and pillars that underpin a fully functional and effective theme in Magento 2? This is an essential question to consider as it impacts how our themes are born and how they transform our ideas into reality. A Magento 2 theme essentially constitutes a combination of layouts, templates, styles or images. The creation of a Magento 2 theme involves configuring these elements and integrating them to work in tandem. Theme creation can be broken down into several stages which include creating a directory for the theme, declaring the theme, creating a composer package for the theme and applying and configuring the theme.</p> <h3>Navigating the Maze: What Challenging Factors are at Play?</h3> <p>Creating a Magento 2 theme from scratch presents a unique set of challenges that need to be thoroughly addressed. One primary concern is the lack of readily available resources and in-depth knowledge about the platform. Magento 2, being an enterprise-level eCommerce solution, comes with an exhaustive list of functionalities and technicalities. Understanding and ‘taming’ this extensive solution to create a custom theme is certainly a daunting endeavor. Moreover, making a theme responsive, compatible and easy to use across different devices and browsers is a complex feat in and of itself. Lastly, ensuring your theme adheres to various industry standards and meets customer expectations can be a tricky balance to strike.</p> <h3>Illustrating Success: Case Studies that Inspire and Educate</h3> <p>Despite these challenges, success stories abound when it comes to creating themes on Magento 2 from the ground up. Pioneering eCommerce companies such as Stance, Vizio and Olympus have successfully tailored custom themes in Magento 2 that not only enhance user experience (UX) but also boost conversion rates. </p> <p>Stance, for instance, optimized their product navigation by simplifying the cart and checkout processes of their theme, leading to a significant decrease in the site’s bounce rate. On the other hand, Vizio revolutionized their product display by integrating a 3D view within their theme, providing a more interactive and enriched shopping experience for their customers. Olympus focused on boosting mobile conversion rates by tuning their theme to enhance mobile UX. These companies leverage Magento 2 themes to alter user experiences on their platform and drive digital commerce success. </p> <p>By examining businesses that have excelled in Magento 2 theme design, we can gain insights into best practices and proven strategies. Learning from these instances, it becomes evident that understanding the core of Magento 2, being privy to user preferences and staying updated with industry advancements are key to designing a successful Magento 2 theme.</p> <h2>Conclusion</h2> <p>Isn’t it remarkable how the flexibility of Magento 2 empowers us to create a complete theme from the ground up? We can conceive, design, customize, and launch a digital storefront that is wholly unique to our brand. This potential to transform our creative vision into a functional eCommerce website is the power of Magento 2.</p> <p>We sincerely hope that our informative articles are inspiring and helpful to your own unique journey. Following our blog will ensure that you have the freshest insights at your fingertips. Remember, with an open-source solution like Magento 2, there’s always something new and exciting to discover. The world of eCommerce changes at a breakneck pace – don’t just keep up, stay ahead! Our hands-on guides, expert tips, and thought-leadership articles are ready to navigate you through the technicalities and bring you to the forefront of Magento 2 innovations.</p> <p>In closing, we understand the excitement that comes with every new release. Rest assured, we share that enthusiasm too. Whether it’s the latest update or an entirely new theme that demands due attention, we’ll be breaking it down for you, step by step. Stay tuned for more unfurling themes, trends, and topics to keep you ahead in the fast-paced world of eCommerce. Together, we’ll continue to explore the endless possibilities offered by Magento 2 – a journey that promises new learning experiences with every step forward.</p> <h2>F.A.Q.</h2> <div> <strong>Q1: What is the initial step to start creating a Magento 2 theme from scratch?</strong> </p> <p>A1: The initial step to start creating a Magento 2 theme from scratch is to set up a new theme directory. This is necessary to store all your theme files and set the correct directory structure.</p> <p> <strong>Q2: How can I declare my new theme in Magento 2?</strong> </p> <p>A2: You can declare your new theme by creating a theme.xml file within your theme directory. This file will define the theme’s name and its parent theme, if any.</p> <p> <strong>Q3: How do I configure the layout of my new Magento 2 theme?</strong> </p> <p>A3: You can configure the layout of your Magento 2 theme by modifying the layout files in your theme’s directory. These XML files control the structure and content placement of your theme.</p> <p> <strong>Q4: Can I create and customize my own CSS styles in the Magento 2 theme?</strong> </p> <p>A4: Absolutely. You can create and customize your own CSS styles by adding a custom ‘styles.css’ file in your theme’s web/css directory. Changes made in this file will directly reflect on your theme’s styling.</p> <p> <strong>Q5: How do I apply and activate my newly created Magento 2 theme?</strong> </p> <p>A5: You can apply and activate your new Magento theme through the Magento Admin Panel. Navigate to “Content > Design > Configuration”, here you can set your theme as the default for your store view.</p> </div> <a href="https://flatlogic.com"><img src="http://templatesocean.com/wp-content/uploads/2023/09/enterprise_business-apps_banner_1_____590__150.jpg"></a> </div> </div> </article><!-- #post-331 --> </div> <div class="col-lg-4 col-md-4 col-sm-12"> <div class="sidebar"> <aside id="block-2" class="widget text_widget widget_block widget_search"><form role="search" method="get" action="http://templatesocean.com/" class="wp-block-search__button-outside wp-block-search__text-button wp-block-search"><label class="wp-block-search__label" for="wp-block-search__input-1" >Search</label><div class="wp-block-search__inside-wrapper " ><input class="wp-block-search__input" id="wp-block-search__input-1" placeholder="" value="" type="search" name="s" required /><button aria-label="Search" class="wp-block-search__button wp-element-button" type="submit" >Search</button></div></form></aside><aside id="block-3" class="widget text_widget widget_block"><div class="wp-block-group is-layout-flow wp-block-group-is-layout-flow"><div class="wp-block-group__inner-container"><h2 class="wp-block-heading">Recent Posts</h2><ul class="wp-block-latest-posts__list wp-block-latest-posts"><li><a class="wp-block-latest-posts__post-title" href="http://templatesocean.com/templates/what-are-modes-in-magento-2/">What are modes in Magento 2?</a></li> <li><a class="wp-block-latest-posts__post-title" href="http://templatesocean.com/templates/why-is-wordpress-so-expensive/">Why is WordPress so expensive?</a></li> <li><a class="wp-block-latest-posts__post-title" href="http://templatesocean.com/templates/what-are-the-cons-of-woocommerce/">What are the cons of WooCommerce?</a></li> <li><a class="wp-block-latest-posts__post-title" href="http://templatesocean.com/templates/which-is-better-wix-or-shopify/">Which is better Wix or Shopify?</a></li> <li><a class="wp-block-latest-posts__post-title" href="http://templatesocean.com/templates/is-ngmodel-obsolete/">Is ngModel obsolete?</a></li> </ul></div></div></aside><aside id="block-9" class="widget text_widget widget_block"> <div class="wp-block-group is-layout-constrained wp-block-group-is-layout-constrained"><div class="wp-block-group__inner-container"> <h2 class="wp-block-heading">More for reading</h2> </div></div> </aside><aside id="block-4" class="widget text_widget widget_block"> <div class="wp-block-group is-layout-flow wp-block-group-is-layout-flow"><div class="wp-block-group__inner-container"><ul class="wp-block-archives-list wp-block-archives"> <li><a href='http://templatesocean.com/2023/11/'>November 2023</a></li> <li><a href='http://templatesocean.com/2023/10/'>October 2023</a></li> <li><a href='http://templatesocean.com/2023/09/'>September 2023</a></li> <li><a href='http://templatesocean.com/2023/08/'>August 2023</a></li> <li><a href='http://templatesocean.com/2023/07/'>July 2023</a></li> <li><a href='http://templatesocean.com/2023/06/'>June 2023</a></li> <li><a href='http://templatesocean.com/2023/05/'>May 2023</a></li> </ul></div></div> </aside><aside id="block-29" class="widget text_widget widget_block"> <div class="wp-block-group is-layout-constrained wp-block-group-is-layout-constrained"><div class="wp-block-group__inner-container"> <h2 class="wp-block-heading">Best AI Tools For Business and Personal Use</h2> <p><a href="https://www.synthesia.io/">Synthesia</a></p> <p><a href="https://www.unscreen.com/">Unscreen</a></p> <p><a href="https://flatlogic.com/">Flatlogic</a></p> <p><a href="https://www.getmunch.com/">Munch</a></p> <p><a href="https://openai.com/dall-e-2/">Dall-E-2</a></p> <p><a href="https://okibro.com/">Okibro</a></p> <p><a href="https://www.nextrembrandt.com/">NextRembrant</a></p> <p><a href="https://letsenhance.io/">Letsenhance</a></p> </div></div> </aside> </div> </div> </div> </div> </section> <footer class="site-footer"> <div class="container-full"> <div class="row footer-sidebar"> <div class="col-lg-3 col-md-6 col-sm-12"> <aside id="block-5" class="widget text_widget widget_block"><div class="wp-block-group is-layout-flow wp-block-group-is-layout-flow"><div class="wp-block-group__inner-container"><h2 class="wp-block-heading">Archives</h2><ul class="wp-block-archives-list wp-block-archives"> <li><a href='http://templatesocean.com/2023/11/'>November 2023</a></li> <li><a href='http://templatesocean.com/2023/10/'>October 2023</a></li> <li><a href='http://templatesocean.com/2023/09/'>September 2023</a></li> <li><a href='http://templatesocean.com/2023/08/'>August 2023</a></li> <li><a href='http://templatesocean.com/2023/07/'>July 2023</a></li> <li><a href='http://templatesocean.com/2023/06/'>June 2023</a></li> <li><a href='http://templatesocean.com/2023/05/'>May 2023</a></li> </ul></div></div></aside><aside id="block-6" class="widget text_widget widget_block"><div class="wp-block-group is-layout-flow wp-block-group-is-layout-flow"><div class="wp-block-group__inner-container"><h2 class="wp-block-heading">Categories</h2><ul class="wp-block-categories-list wp-block-categories"> <li class="cat-item cat-item-1"><a href="http://templatesocean.com/category/templates/">Templates</a> </li> </ul></div></div></aside> </div> </div> </div> <div class="site-info text-center"> Maverick WordPress Theme </div> </footer> <div class="page-scroll-up"><a href="#totop"><i class="fa fa-angle-up"></i></a></div> <script> // This JS added for the Toggle button to work with the focus element. if (window.innerWidth < 992) { document.addEventListener('keydown', function(e) { let isTabPressed = e.key === 'Tab' || e.keyCode === 9; if (!isTabPressed) { return; } const focusableElements = 'button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])'; const modal = document.querySelector('.navbar.navbar-expand-lg'); // select the modal by it's id const firstFocusableElement = modal.querySelectorAll(focusableElements)[1]; // get first element to be focused inside modal const focusableContent = modal.querySelectorAll(focusableElements); const lastFocusableElement = focusableContent[focusableContent.length - 1]; // get last element to be focused inside modal if (e.shiftKey) { // if shift key pressed for shift + tab combination if (document.activeElement === firstFocusableElement) { lastFocusableElement.focus(); // add focus for the last focusable element e.preventDefault(); } } else { // if tab key is pressed if (document.activeElement === lastFocusableElement) { // if focused has reached to last focusable element then focus first focusable element after pressing tab firstFocusableElement.focus(); // add focus for the first focusable element e.preventDefault(); } } }); } </script> <script type='text/javascript' src='http://templatesocean.com/wp-content/themes/the-maverick/assets/js/skip-link-focus-fix.js?ver=20151215' id='the-maverick-skip-link-focus-fix-js'></script> </body> </html>