Table of Contents

Swift 1 vs Swift 2

Swift 2 is the successor to Swift 1, which was released in 2021. Swift 2 builds on and improves Swift 1 with all the many lessons we've learned since then.

What we learned from Swift 1

Swift 1 was released in August 2021, and has grown to be used on more than 85% of all new DynamicWeb solutions. It was initially designed to be 100% configurable, sacrificing easy customizability for the ability to get from zero to a working solution in very little time.

Over the years, though, several things have become apparent:

  • Swift is often used as a base for implementing custom designs, something it wasn't really developed for initially
  • Swift customers and partners really want to update and stay compatible with new Swift releases
  • Editors and content creators find Swift 1 difficult to work with due to too many design-related options being available
  • Swift templates can be confusing, and carry too much logic related to configuration

Based on these lessons learned we are developing Swift 2 - which will feature many improvements in order to - broadly speaking - improve the editor experience and improve the developer experience.

What's new in Swift 2

Swift 2 brings a range of enhancements designed to improve both the editor experience and developer experience. These changes make it easier to maintain consistency across projects, streamline workflows, and reduce the complexity of managing design elements. Here’s an overview of the key differences and improvements:

  • Styling Integrated into DynamicWeb Core:
    Key design elements such as color schemes, typography, and button styles, which were previously defined inside the Swift design, have now been integrated into DynamicWeb Core. This makes it easier to streamline styling across projects and reduces the complexity of managing design options.

  • A New Content Model:
    Swift 2 introduces a redesigned content model aimed at simplifying and standardizing content creation.

    • Reduced Editor Complexity: Many design options have been removed from the editor interface, ensuring a consistent design across the website. Editors can now focus on creating content without being overwhelmed by numerous design configurations.
    • Row and Grid Enhancements: Row and grid definitions have been moved into DynamicWeb, making them easier to define and modify through the UI. Quality-of-life improvements include the ability to modify the layout of existing rows. Native support for colors, background images, and design options such as row width, size, and padding has been added.
    • Improved Technical Structure: Row definitions are now split into multiple files instead of a single file, making it easier to customize rows while remaining upgradable. A unified template for all rows simplifies maintenance and customization.
  • Enhanced Paragraph Layouts:

    • Simplified Templates: Paragraph layouts now use a simple, extendable template system. Customizing layouts no longer requires editing item types, enabling easier upgrades and reusability.
    • Reusability Across Projects: Layouts are stored as separate files, making them easy to copy and reuse across different projects.

As such, Swift 2 represents a significant step forward by focusing on ease of use, upgradability, and a better development experience while maintaining design consistency and simplifying content management. These changes aim to make Swift adapt to the reality of how the design is actually being used in reality.

Other features changed or removed in Swift 2:

Feature Area Reason
Support for Google Analytics Measurement ID Website settings Simplified tracking setup and alignment with best practices using Google Tag Manager
Ecommerce Badges Swift tools Removed to reduce complexity and as part of phasing out the Swift Tools area
Custom CSS Swift tools Removed to reduce complexity and as part of phasing out the Swift Tools area
Animation on scroll (AOS) has been removed Row setting Removed to reduce complexity and simplify settings
Product repository (SwiftProducts) has been split up into ProductsFrontend and ProductsBackend Settings - Repositories Separated to use dedicated indexes for Frontend (Swift) and Backend, improving performance and flexibility
Articles - Article Page and Article List Page has been removed Content Will be replaced with a new way to use categories and tags on content pages for more flexibility and improved filtering options through facets
Support for Address Format has been removed Settings - Products Removed to reduce complexity
To top