Skip to Content
Build with FinquStorefrontTheme Architecture

Theme Architecture

Understanding the architecture and design principles of themes.

Overview

Finqu themes are built to be modular, flexible, and easy to customize. The architecture separates content, layout, and presentation, allowing developers to create unique storefronts while maintaining maintainability and scalability.

A theme consists of templates, sections, blocks, assets, and configuration files. These components work together to define the structure, appearance, and behavior of a storefront.

Theme Engine

The theme engine processes theme files and renders storefront pages dynamically. It interprets Liquid templates, processes section and block schemas, and merges user settings to generate the final HTML output. The engine supports localization, dynamic content, and extensibility through custom sections and blocks.

Template Structure

Templates define the overall layout and structure of pages. They use placeholders like content_for_index to render sections and can include specific sections or blocks using tags. Templates are stored in the templates directory and are responsible for the page’s main structure, such as headers, footers, and content areas.

Sections

Sections are modular components that can be added, removed, or reordered within templates. They are stored in the sections directory and defined by a schema that describes their settings, blocks, and appearance. Sections are rendered using the content_for_index placeholder or the section tag.

Blocks

Blocks are reusable content elements that live inside sections. They are defined in the blocks directory and configured via a schema. Blocks cannot contain other blocks or sections. They are rendered within sections using the container tag or can be rendered statically with the block tag.

Asset Pipeline

Assets such as CSS, JavaScript, images, and fonts are stored in the assets directory. The asset pipeline processes and delivers these files efficiently to the storefront, supporting features like minification, versioning, and caching.

Settings and Configuration

Theme settings are defined in settings_schema.json and individual section/block schemas. These settings allow merchants to customize the look and feel of their store without editing code. Settings are exposed in the theme editor and merged with defaults during rendering.

Best Practices

  • Keep templates, sections, and blocks modular and reusable.
  • Use settings and schema definitions to maximize flexibility.
  • Organize assets and configuration files logically.
  • Test themes thoroughly to ensure compatibility and performance.

This architecture enables developers to build powerful, maintainable, and customizable themes for the Finqu platform.

Last updated on