Elements
Welcome to the Elements page. Here you’ll learn everything about the building blocks of your templates – what they are, how to add them, and how to shape them into stunning layouts. Whether you’re a seasoned designer or just getting started, this guide will help you work faster and smarter.
Tip: You can add elements from the Toolbar, and adjust their properties in the Properties Panel.
What are Elements?
In Diterrr, an element is any individual component placed on the canvas. Think of elements as the "atoms" of your template – they combine to form the complete visual and interactive experience.
Every element has:
A position — coordinates (left, top) on the canvas
A size — width and height in pixels.
A layer order — z‑index determines which elements appear on top.
Optional field behavior — if configured as a Label or Input.
A set of properties — specific to its type (e.g., text content, image URL, shape type).
Elements can be:
- Added via the toolbar at the bottom of the canvas.
- Selected by clicking them on the canvas or in the Layers Panel.
- Moved by dragging.
- Resized using the resize handle (bottom‑right corner).
- Edited via the Properties Panel on the right.
- Organized within Frames (containers) to create complex layouts.
- Locked to prevent accidental changes.
Universal Properties
Regardless of type, every element shares these core properties:
| Property | Description |
|---|---|
| Name | A unique identifier (e.g., "Heading_1", "Submit_Button"). Helps you find elements in the Layers Panel. |
| Position (Left, Top) | The element's X and Y coordinates on the canvas (or relative to its parent Frame). |
| Size (Width, Height) | The element's dimensions in pixels. |
| Z‑Index | The stacking order. Higher values appear above lower values. |
| Rotation | Angle in degrees (0 to 180, clockwise). |
| Locked | When enabled, prevents the element from being selected, moved, resized, or deleted. |
| Opacity | Transparency level (0 = fully transparent, 1 = fully opaque). |
| Container Opacity | For text/quote elements, controls the opacity of the container (background and border). |
| Background Color | The fill color of the element's container. |
| Border | Width, style (solid, dashed, dotted), and color. |
| Border Radius | Rounded corners (in pixels). |
| Padding | Internal spacing (vertical and horizontal) between the element's border and its content. |
| Shadow | A drop shadow effect (x, y, blur, spread, and color). |
Static vs. Dynamic Elements
Elements in Diterr serve one of two roles:
Static Elements
These are purely visual – they display content but do not accept user input.
- Text headings, paragraphs, and quotes.
- Decorative images and shapes.
- Frames (as containers).
Use case: Designing the visual layout of a flyer, adding branding, or creating structure.
Dynamic Elements (Form Fields)
These are interactive – they capture user input and can be submitted.
- Labels (display text, like "Email Address").
- Inputs (text fields, dropdowns, radios, checkboxes, file uploads, date pickers).
Use case: Building forms, surveys, registration pages, or any data‑collection interface.
Convertible: Any Text, Quote, or Image element can be converted into a dynamic field by changing its Field Type in the Properties Panel.
Element Types
TextBox
The smart text block
A Textbox is a rectangular container that holds and displays text. It’s the foundation for every piece of written content in your template – from headlines and paragraphs to form labels and input fields.
- Inline editing – double‑click to start typing.
- Rich styling – fonts, colors, sizes, alignment, and more.
- Responsive resizing – choose how the box adapts to content.
- Smart shrinking – auto‑reduce font size when text overflows.
- Field conversion – turn any Textbox into a Label or Input.
Example of a Textbox element on the canvas with styling options visible in the Properties Panel
To add a Textbox, click the Text button in the Toolbar. A new text box will appear on the canvas. Double‑click on the text to edit its content. You can also drag the handles to resize the box. The Properties Panel provides extensive typographic controls, including font family, size, weight, style, alignment, and color. You can also set a background color, border, and shadow.
Default Settings
When you add a new Textbox, it comes with a clean, neutral style – designed to look good out of the box while being easy to customize.
| Property | Default Value | Purpose |
|---|---|---|
| Font Size | 16px | Readable body text size |
| Font Family | Arial, sans-serif | Clean, web‑safe fallback |
| Font Weight | 400 (Normal) | Balanced readability |
| Font Style | Normal | Standard upright text |
| Color | #1e293b (slate-800) | Dark, high‑contrast text |
| Text Align | Left | Natural reading direction |
| Vertical Align | Top | Text starts at the top of the box |
| Line Height | 1.5 | Comfortable spacing between lines |
| Letter Spacing | 0px | Default character spacing |
| Text Decoration | None | No underline/strikethrough |
| Text Transform | None | Preserves original casing |
| Background | #ffffff (white) | Clean, opaque background |
| Border Width | 1px | Subtle definition |
| Border Color | #e2e8f0 (gray-200) | Soft, neutral border |
| Border Style | Solid | Continuous line |
| Border Radius | 8px | Soft rounded corners |
| Padding | 8px vertical, 12px horizontal | Comfortable internal spacing |
| Resize Behavior | Fixed | Box stays the same size |
| Shrink to Fit | Off | Font size does not auto‑adjust |
| Field Type | Label | Behaves as static text by default |
Typography Properties
The Textbox gives you granular control over every aspect of your text’s appearance.
Font Family
Choose from hundreds of Google Fonts via the built‑in font picker. Search by name and select instantly. The font is automatically loaded and applied.
- Default: Arial, sans-serif
- How to change: Click the font picker in the Properties Panel, search for a font, and select it.
- Tip: The font picker includes a search bar – just type the name of any Google Font (e.g., "Inter", "Roboto", "Playfair Display").
Font Size
Set the size of your text in pixels (px).
- Range: 4px – 100px (or higher, depending on content)
- Default: 16px
- How to change: Use the number input or slider (if available) in the Properties Panel.
Font Weight
Control the thickness of your text.
| Value | Common Use |
|---|---|
| 300 (Light) | Subtle, elegant headings |
| 400 (Normal) | Body text, paragraphs |
| 500 (Medium) | Semi‑bold emphasis |
| 600 (Semi‑Bold) | Stronger emphasis |
| 700 (Bold) | Headings, highlights |
| 800 (Extra‑Bold) | Heavy display text |
Font Style
- Normal – upright, standard.
- Italic – slanted, often used for quotes or emphasis.
Line Height
Controls the vertical spacing between lines of text.
- Default: 1.5 (150% of font size)
- Range: 1.0 (tight) to 2.0 (spacious)
- Effect: Lower values create dense text; higher values improve readability.
Letter Spacing
Adjusts the space between individual characters (tracking).
- Default: 0px
- Positive values: Increase spacing (airier text).
- Negative values: Decrease spacing (tighter text).
Text Decoration
- None – no decoration.
- Underline – underline the text.
- Strikethrough – strike through the text.
Text Transform
- None – preserves original casing.
- Uppercase – ALL CAPS.
- Lowercase – all lowercase.
- Title Case – Capitalize Each Word.
Text Shadow
Adds a shadow effect behind the text. Enter a CSS text-shadow value.
- Example:
2px 2px 4px rgba(0,0,0,0.3) - Format:
offset-x offset-y blur-radius color
Layout & Spacing
Horizontal Alignment
- Left – aligns text to the left edge (default for most languages).
- Center – centers text within the box.
- Right – aligns text to the right edge.
- Justify – spreads text to fill the full width.
Vertical Alignment
Controls the vertical position of text within the box.
- Top – text aligns to the top edge.
- Middle – text centers vertically.
- Bottom – text aligns to the bottom edge.
Padding
Internal spacing between the text and the box's border.
- Vertical (Padding Y) – top and bottom padding.
- Horizontal (Padding X) – left and right padding.
- Tip: Increase padding to make the text feel more spacious; decrease for a compact look.
Background & Border
- Background Color – fills the entire box behind the text.
- Border – width, style (solid, dashed, dotted), and color.
- Border Radius – rounds the corners of the box.
Resizing Behaviors
The Textbox can adapt to its content in different ways. Choose the behavior that fits your design:
Fixed (Default)
The box stays exactly the size you set. If text exceeds the box, it is clipped or overflows depending on the container's overflow setting.
- Use when: You have a fixed layout and text length is predictable.
- Tip: Enable Shrink to Fit to automatically reduce font size when text overflows.
Auto Width
The box expands horizontally to fit the text content, but the height stays fixed.
- Use when: You want the box to grow wider as the user types (e.g., short labels, dynamic headings).
Auto Height
The box expands vertically to fit the text content, but the width stays fixed.
- Use when: You have a fixed‑width container and the text may span multiple lines (e.g., paragraphs, descriptions).
Auto Both
The box expands both horizontally and vertically to fit the text content.
- Use when: You want the box to wrap around the text completely (e.g., tags, badges, small labels).
Shrink to Fit
When Shrink to Fit is enabled, the Textbox automatically reduces the font size when text overflows the box. This ensures all text remains visible without expanding the container.
- How it works: The font size is reduced in real time as you type, delete, or paste content. The algorithm finds the largest font size that allows all text to fit within the box's width and height. The font can shrink down to 4px (minimum) and can grow back up to the original size when text is removed. The maximum font size is preserved, so the text never grows larger than the user‑set size.
- Use cases: Dynamic labels where text length varies; fixed‑width containers; responsive designs.
- How to enable: Select the Textbox, find the Shrink to Fit toggle in the Properties Panel, and turn it ON.
Tip: Shrink to Fit works best when combined with Fixed resizing behavior – the box stays the same size, and the font adjusts to fit.
Field Behavior
Any Textbox can be converted into a form field by changing its Field Type in the Properties Panel.
Label
Displays static text that describes or identifies an input field.
- Label Title – the main text displayed (e.g., "Email Address").
- Description – helper text shown below the label (e.g., "We'll never share your email").
- Required Indicator – a symbol or text that marks the field as required (e.g., "*").
- Placeholder – placeholder text shown inside the input (when linked to an Input).
Input
Converts the Textbox into an interactive input field that accepts user input.
- Supported input types: Textbox, Select, Radio, Checkbox, File, Number, Email, Tel, URL, Date, Time.
- Validation options: Max Length, Min Length, Pattern (regex), Required, Custom Validation Message.
- Advanced options: Associated Label, Default Value, Placeholder, Options (for Select/Radio/Checkbox), Accepted File Types.
Label & Input
Combines both – displays a label above or beside an input field in a single element.
- Ideal for compact form rows where label and input are tightly grouped.
- All label and input settings are available in one place.
Use Cases
- Headings & Titles: Font size 24–48px, Bold (700) or Extra‑Bold (800), Center or Left alignment.
- Body Text / Paragraphs: Font size 14–16px, Normal (400), Line height 1.5–1.8, Left (justified optional).
- Form Labels: Field Type: Label, Font size 14px, Medium (500) or Bold (700).
- Form Inputs: Field Type: Input, Input Type: Textbox (or specific type), used for collecting user data.
- Interactive Dropdowns & Radios: Field Type: Input, Input Type: Select, Radio, or Checkbox with defined options.
- Dynamic Quotes / Testimonials: Use the Quote element (styled Textbox) with font size 18–22px, Italic, Center alignment.
Tips & Best Practices
Typography
- Limit font families – stick to 2–3 fonts per template for visual consistency.
- Contrast matters – ensure text color contrasts well with the background (use a contrast checker).
- Use heading hierarchy – size distinguishes importance; don't rely solely on color.
Resizing
- Use Fixed + Shrink to Fit for dynamic content in fixed layouts.
- Use Auto Height for long‑form text that may expand (e.g., descriptions).
- Use Auto Both for compact, content‑driven elements like tags or badges.
Field Behavior
- Always link Inputs to Labels for accessibility and clarity.
- Set Required on mandatory fields to prevent incomplete submissions.
- Use custom validation messages to guide users ("Please enter a valid email").
- Test all field types – especially Select, Radio, and Date – to ensure they work as expected.
Performance
- Avoid excessive font families – each loaded font adds weight to the page.
- Use Shrink to Fit sparingly – it requires recalculating on every keystroke; use only where needed.
Pro tip: Use Google Fonts by selecting from the font dropdown. All fonts are loaded dynamically.
Quote Element
Highlighted, expressive content
The Quote element is a specialised variant of the Textbox, designed for displaying testimonials, pull quotes, epigraphs, and other forms of emphasised text. It inherits all the power of a Textbox but comes with a distinct visual identity that draws attention and conveys authority.
- Elevated defaults – serif font, larger size, italic style, and a creative purple colour.
- Fully customisable – every typographic and layout property can be adjusted.
- Field conversion – turn it into a Label or Input while keeping its unique styling.
- Responsive resizing – choose how it adapts to content length.
- Perfect for – testimonials, pull quotes, opening statements, and highlighted messages.
Example of a Quote element on the canvas with its distinct styling and properties
The Quote element is not just a stylistic choice – it is a functional distinction that signals to the reader: “This is important. This deserves your attention.” It breaks the visual rhythm of a page, adding personality and depth to your templates.
Default Settings
When you add a new Quote element, it comes with these carefully chosen defaults to make it immediately usable for highlighted content:
| Property | Default Value | Why This Choice |
|---|---|---|
| Font Size | 18px | Slightly larger than body text for prominence |
| Font Family | Georgia, serif | Classic serif that feels trustworthy and refined |
| Color | #4c1d95 (purple-900) | Deep purple conveys creativity, wisdom, and value |
| Font Style | Italic | Suggests a distinct, reflective voice |
| Text Alignment | Center | Creates a balanced, authoritative presentation |
| Vertical Alignment | Top | Text starts at the top of the container |
| Line Height | 1.6 | Generous spacing for readability |
| Letter Spacing | 0.5px | Slight breathing room for elegance |
| Text Decoration | None | No underlines or strikethroughs |
| Text Transform | None | Preserves original case |
| Background | #ffffff (white) | Clean backdrop for high contrast |
| Border Width | 1px | Subtle definition |
| Border Color | #e2e8f0 (gray-200) | Soft, unobtrusive border |
| Border Style | Solid | Continuous line |
| Border Radius | 8px | Gentle rounding |
| Padding | 8px vertical, 12px horizontal | Comfortable internal spacing |
| Resize Behavior | Fixed | Box stays the same size |
| Shrink to Fit | Off | Font size does not auto‑adjust |
| Field Type | Label | Behaves as static text by default |
When to Use a Quote
Testimonials
Customer testimonials are the most common application. The Quote element gives their words the weight and credibility they deserve, with the serif font and italic style evoking sincerity and the centred alignment creating a moment of pause.
Pull Quotes
In long-form content, a pull quote is a short excerpt displayed prominently to draw attention. The Quote element turns a fragment of your writing into a visual anchor that breaks up dense paragraphs and reinforces key messages.
Epigraphs and Opening Statements
An epigraph at the beginning of a document sets the tone. The Quote element’s elevated styling establishes mood, introduces a theme, and invites the reader with anticipation.
Highlighted Messages
When you need to emphasise a single sentence – a value proposition, a special offer, or a key insight – the Quote element makes that message pop and ensures it is not lost in surrounding text.
Attributions
Crediting someone – a guest author, a subject matter expert, or a source – the Quote element lends their name and words a sense of authority and respect.
Typography and Styling
While the Quote element comes with thoughtful defaults, you can customise every aspect to suit your needs.
Font Family
The default Georgia serif is classic, but the font picker gives you access to hundreds of Google Fonts. Swap to a sans-serif like Inter for a modern look, or Playfair Display for a more literary feel.
Font Size
Defaults to 18px – larger than body text for prominence. Increase for hero quotes, decrease for subtle asides.
Color
The default purple (#4c1d95) is bold and creative. Change to any colour that aligns with your palette – dark grays and deep blues for sophistication, warm oranges or rich reds for energy.
Italic and Decoration
The italic style suggests a distinct voice. You can keep it or switch to normal. Underlines or uppercase can add further emphasis.
Alignment
Centred alignment gives a formal, balanced look. Use left alignment for longer quotes to improve readability, or justified to fill the width.
Layout and Spacing
Padding and Margins
Adjust vertical and horizontal padding to make the quote feel more spacious or more compact, depending on the visual weight you want it to carry.
Background and Border
Change the background colour to make the quote stand out more. Adjust the border width, style, and colour, or remove it entirely. Use border radius to control corner rounding – larger radii create a softer feel.
Text Shadow
Add a text shadow for a lifted, three‑dimensional effect – especially effective over busy backgrounds. Use it sparingly for subtle depth.
Resizing Behavior
The Quote element offers the same resizing options as the Textbox:
- Fixed – container stays the size you set; text may overflow. Works well when you know the quote’s length in advance.
- Auto Width – container wraps tightly to the text horizontally; height stays fixed. Ideal for short, single‑line quotes.
- Auto Height – container expands vertically to fit the text; width stays fixed. Better for longer quotes that span multiple lines.
- Auto Both – expands in both directions, wrapping completely around the text. Perfect for quotes of unpredictable length.
- Shrink to Fit – automatically reduces font size when text overflows, ensuring all content remains visible without expanding the container. Especially useful for fixed‑width layouts and dynamic content.
Tip: Combine Fixed with Shrink to Fit when you need a stable container size but variable text length.
Field Behavior
Like the Textbox, the Quote element can be converted into a form field by changing its Field Type in the Properties Panel.
- Label – displays static text that describes or identifies an input field. The label title, description, required indicator, and placeholder all inherit the quote’s styling.
- Input – becomes an interactive text field that collects user input. The same styling (italic, serif, centred) applies to the user’s response, making it feel personal and thoughtful.
- Label & Input – combines both in a single element, ideal for compact form rows.
Use Cases and Examples
Customer Testimonial
“Working with this team has been an absolute delight. Their attention to detail and commitment to quality is unmatched.”
Presented with Georgia serif, purple text, and centred alignment, this reads as sincere and credible. The italics convey a personal touch, while the padding and subtle border give it a framed, polished appearance.
Pull Quote
“Design is not just what it looks like and feels like. Design is how it works.”
A short, punchy pull quote benefits from the Quote element’s elevated typography. The serif font gives it a timeless quality, while the centred layout creates a moment of visual rest.
Epigraph
“In the middle of difficulty lies opportunity.” — Albert Einstein
An epigraph at the start of a document sets the tone and invites reflection. The Quote element’s styling – larger font, elegant serif, italic – lends weight and authority to the words.
Highlighted Value Proposition
Save 50% on your first year.
A promotional message made to pop with the Quote element. The distinct styling draws the eye immediately, ensuring the offer does not go unnoticed.
Tips & Best Practices
Keep It Concise
Quotes are most effective when short and impactful. Aim for one to three lines – enough to convey the message, short enough to be remembered.
Use Contrast Wisely
The Quote element should stand out from the surrounding text. Use colour and background to increase contrast, but avoid making it so loud that it feels out of place.
Match the Mood
Typography should reflect the quote’s tone. A formal quote benefits from a classic serif; a modern, energetic quote from a bold sans‑serif.
Test with Real Content
A quote that looks beautiful with placeholder text may look awkward with real text. Pay attention to line breaks, spacing, and overall balance.
Use Shrink to Fit for Flexibility
If you are displaying dynamic content – user‑submitted testimonials or automatically generated quotes – enable Shrink to Fit to ensure the text always fits within the container.
Keep It Accessible
Ensure your quote has sufficient colour contrast against its background. Avoid using colour alone to convey meaning.
Pro tip: The Quote element is perfect for creating visual rhythm. Place a quote between two paragraphs of body text to give your readers a moment of pause and reflection.
Image Element
Visual storytelling made easy
The Image element allows you to display photographs, logos, illustrations, icons, and any other graphical content. More than a simple picture holder, it comes with rich controls for cropping, scaling, tiling, enhancing, and styling – giving you the power to make every image look its best without leaving the editor.
- Upload – choose an image from your device; stored as a data URL.
- Object‑fit – control how the image fills its box (cover, contain, stretch, original, scale‑down).
- Tile – repeat the image to create patterns.
- Enhancements – fine‑tune exposure, contrast, saturation, temperature, tint, highlights, and shadows.
- Effects – opacity, blur, border, border radius, drop shadow.
- Field behavior – convert into a Label or Input for form‑based image uploads.
Example of an Image element on the canvas with its properties panel visible
The Image element is your gateway to visual storytelling. Whether you are adding a hero image to a flyer, a product photo to a catalog, or a decorative background to a form, it provides the flexibility and control you need to achieve professional results.
Default Settings
When you add a new Image element, it comes with these defaults:
| Property | Default Value | Purpose |
|---|---|---|
| Size | 140 × 140px | Balanced starting size |
| Placeholder | Grey box with "Image Field" text | Visual indicator that an image can be uploaded |
| Background | #f9fafb (gray-50) | Subtle background framing the placeholder |
| Opacity | 1.0 (fully opaque) | Maximum visibility |
| Blur | 0px | No blurring applied |
| Border Width | 0px | No border by default |
| Border Radius | 0px | Sharp corners |
| Object‑fit | Cover | Image fills the container, cropping if necessary |
| Tile | False | Image displayed once, not repeated |
| Tile Size | 100px | Default tile size (if tiling is enabled) |
| Drop Shadow | None | No shadow effect |
| Field Type | Label | Static decorative element by default |
Uploading and Managing Images
Uploading an Image
To add an image, select the Image element and click the "Choose Image" button in the Properties Panel. This opens a file picker. Supported formats include JPG, PNG, GIF, WebP, BMP, SVG, TIFF, ICO, AVIF, and HEIC.
The image is converted to a data URL (base64 encoded) and embedded directly into the template's JSON. This makes the element self‑contained and portable – it persists after page refresh and does not require an external server.
- File size – data URLs increase template size. Optimise images before uploading (compress, resize).
- Browser limits – very large images may hit practical limits; compress first.
- Persistence – once uploaded, the image is part of the template and can be shared without the original file.
Clearing an Image
Click the "Clear" button in the Properties Panel to remove the uploaded image and revert to the placeholder.
Filename Display
The filename is shown below the upload buttons, giving you a quick reference to the source file.
Sizing and Scaling
Width and Height
Adjust the width and height manually using the number inputs in the Properties Panel (in pixels).
- Maintain aspect ratio by adjusting both dimensions proportionally.
- Consider responsiveness – fixed sizes work well for stable layouts.
Object‑Fit
Object‑fit determines how the image fills its container. Choose the option that best suits your design:
| Option | Description | Best For |
|---|---|---|
| Cover | Image fills the container, cropping excess to maintain aspect ratio. | Hero images, backgrounds |
| Contain | Image fits entirely within container; may leave empty space. | Product photos, logos |
| Stretch | Image stretched to fill, potentially distorting aspect ratio. | Decorative backgrounds |
| Original | Image at original resolution, centered. | Small icons, thumbnails |
| Scale‑down | Image scaled down to fit if needed, never scaled up. | Preserving quality for small containers |
Tiling
The Tile feature repeats the image to create a pattern or texture.
- How to use: Toggle Tile ON in the Properties Panel, then adjust Tile Size (in pixels).
- Effect: The image is displayed as a repeating pattern, filling the container horizontally and vertically.
- Use cases: Background textures, wallpaper effects, seamless patterns.
- Note: Tiling sets the image as a CSS background with
background-repeat: repeat. The original<img>is hidden.
Image Effects
Opacity
Controls transparency (0 = fully transparent, 1 = fully opaque). Useful for watermarks, overlays, and subtle backgrounds.
Blur
Applies a Gaussian blur (in pixels). Creates a dreamy effect, background depth, or privacy blur.
Border
Add a border with Width, Style (solid, dashed, dotted), and Color. Use for framing, highlighting, or separation.
Border Radius
Rounds the corners of the image container (in pixels). Use 50% for circular images (when width equals height).
Drop Shadow
Add a shadow behind the image with five properties: X offset, Y offset, Blur, Spread, and Color. Expand the Effects section in the Properties Panel to add or remove a shadow.
Image Enhancements
The Image element includes a powerful set of enhancement sliders that adjust CSS filters in real time.
Exposure
Adjust overall brightness (range: -100% to +100%). Maps to CSS brightness().
Contrast
Adjust difference between light and dark areas (range: -100% to +100%). Maps to CSS contrast().
Saturation
Control colour intensity (range: -100% to +100%). Maps to CSS saturate().
Temperature
Adjust warmth/coolness (range: -100% cooler to +100% warmer). Implemented with sepia() and hue-rotate().
Tint
Adjust green/magenta balance (range: -100% to +100%). Maps to CSS hue-rotate().
Highlights
Adjust brightness of the brightest areas (range: -100% to +100%).
Shadows
Adjust brightness of the darkest areas (range: -100% to +100%).
Tip: Make subtle adjustments – extreme values can degrade image quality. Combine enhancements for creative effects, and always preview in context.
Field Behavior
The Image element can be converted into a form field by changing its Field Type in the Properties Panel.
As a Label
Displays static visual content – typically an icon or illustration that accompanies a form field.
- Label Title – main text (e.g., "Profile Photo").
- Description – helper text.
- Required Indicator – e.g., "*".
- Placeholder – text shown inside the input.
As an Input
Becomes an interactive file upload field. Users click to select an image, which is then displayed.
- Field Name / Key – identifier for form data.
- Associated Label – link to a Label for accessibility.
- Input Type – set to "File".
- Accepted File Types – restrict extensions (e.g., .jpg, .png).
- Default / Pre‑filled Value – optional default image URL.
- Placeholder – text before an image is selected.
Use Cases
- Hero Images – full‑width cover images for flyers or landing pages.
- Product Photos – display with Contain object‑fit, add drop shadow.
- Logos – use transparent PNG, Contain fit.
- Background Textures – enable Tile with a small tileable image.
- Profile Photos – set border radius to 50%, use Cover fit, and convert to Input for user upload.
- Decorative Accents – add border, shadow, or reduce opacity/blur for subtle backgrounds.
- Form Upload Fields – convert to Input of type "File" with accepted file types.
Tips & Best Practices
Image Optimization
- Compress images before uploading (use TinyPNG, ImageOptim, Squoosh).
- Resize to the display size – uploading a 2000×2000px image for a 140×140px container is wasteful.
- Use WebP format for better compression.
Object‑Fit Selection
- Use Cover for backgrounds and hero images.
- Use Contain for product photos and logos.
- Avoid Stretch unless distortion is intentional.
Tiling Considerations
- Use tileable images (edges that seamlessly repeat).
- Experiment with tile size to control pattern density.
Enhancement Sliders
- Make small, incremental adjustments for best results.
- Combine multiple sliders for dramatic transformations.
- Always preview within the full design.
Accessibility
- Use descriptive alt text (currently not in Diterr, but consider adding captions if the image conveys information).
Field Behavior
- Set accepted file types to prevent unsupported uploads.
- Provide clear labels and descriptions to guide users.
Pro tip: The Image element is perfect for creating dynamic user profiles. Combine it with form fields to let users upload their own photos, and use border radius to create circular avatars.
Shape Element
Geometric visual structure
The Shape element is a geometric figure that adds visual structure, emphasis, and personality to your templates. From simple rectangles to expressive stars and hearts, shapes are the unsung heroes of visual design, providing the building blocks for everything from subtle dividers to bold accent pieces.
- Five shapes – rectangle, circle, triangle, star, and heart.
- Geometric precision – clean, crisp edges with mathematical accuracy.
- Color control – fill with any hex color to match your brand.
- Scalable – resize freely without losing quality.
- Layering – stack, overlap, and arrange in any z‑order for depth.
Example of different Shape types on the canvas – rectangle, circle, triangle, star, and heart
Shapes are the most basic yet infinitely versatile elements in Diterr. Their simplicity is their strength – with just a few shapes, you can create frames, badges, icons, backgrounds, and intricate patterns that bring your templates to life.
Default Settings
When you add a new Shape element, it comes with these defaults:
| Property | Default Value | Purpose |
|---|---|---|
| Shape Type | Rectangle | The most versatile and recognisable shape |
| Size | 150 × 150px | Balanced starting size |
| Background Color | #f97316 (orange-500) | Warm, energetic colour that stands out |
| Border | 1px solid rgba(0,0,0,0.1) | Subtle definition for edges |
| Border Radius | 8px (rectangle) / 50% (circle) / 0px (others) | Varies by shape type |
| Rotation | 0° | Neutral orientation |
| Z‑Index | Auto-assigned | Layering order based on placement |
Shape Types
The Shape element offers five distinct geometric forms, each with its own character and use cases.
Rectangle
The most fundamental and versatile shape. Used as background blocks, dividers, card frames, and decorative elements.
- Default styling: Border radius 8px, orange-500 colour.
- Use cases: Section backgrounds, card frames, dividers, buttons, headers and footers.
Circle
A shape of harmony, completeness, and motion. Draws attention and creates focal points.
- Default styling: Border radius 50% (perfect circle), orange-500 colour.
- Use cases: Profile photos, badges, buttons, accent dots, background elements.
Triangle
A shape of stability, direction, and focus. Sharp angles convey energy and movement.
- Default styling: Clip-path: polygon(50% 0%, 0% 100%, 100% 100%), 0px border radius, orange-500 colour.
- Use cases: Arrow indicators, play buttons, ribbons and tags, decorative elements, directional cues.
Star
A shape of excellence, quality, and achievement. Instantly recognisable and often associated with ratings and awards.
- Default styling: Clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%), 0px border radius, orange-500 colour.
- Use cases: Ratings, badges, decorative elements, awards, seasonal themes.
Heart
A shape of love, care, and personal connection. Organic curves make it perfect for emotional or relationship-focused content.
- Default styling: Clip-path: path("M50 85 C20 60, 0 35, 0 20 C0 5, 20 -5, 50 20 C80 -5, 100 5, 100 20 C100 35, 80 60, 50 85 Z"), no border, orange-500 colour.
- Use cases: Romantic themes, health and wellness, customer appreciation, decorative elements, social media.
Customization Options
Changing the Shape Type
Use the dropdown in the Properties Panel. The shape updates instantly, preserving previously applied styles (color, size, rotation).
Changing Background Color
Set the fill to any hex color using the color picker in the Properties Panel. The colour applies uniformly across the entire shape.
- Use brand colors – match to your brand palette.
- Contrast with background – ensure visibility.
- Create gradients – layer multiple shapes with different opacities.
Resizing
Resize by dragging the resize handle or entering width/height values in the Properties Panel. Shapes have no aspect ratio constraints.
- Circle – set width and height equal for a perfect circle.
- Star and heart – adjust both dimensions carefully to avoid distortion.
- Triangle – resizing changes proportions; adjust carefully.
Rotation
Use the rotation slider (-180° to +180°). The shape rotates around its center point.
- Triangle – rotate to change direction (90° = point right, 180° = point down).
- Rectangle – rotating creates a diamond shape.
- Star and heart – rotation creates interesting visual dynamics.
Layering (Z‑Index)
Adjust the z-index in the Properties Panel. Higher numbers bring the shape forward; lower numbers push it back.
- Background shapes – place behind text and images for depth.
- Overlays – place shapes with low opacity over other elements.
- Accents – place small shapes on top to draw attention.
Creative Applications
- Background blocks – use large rectangles or circles as section backgrounds with low opacity.
- Dividers and separators – thin rectangles or circles create elegant separators.
- Iconography – combine shapes to create custom icons (e.g., rectangle + triangle = house).
- Pattern building – layer shapes of different sizes, colours, and rotations.
- Highlighting – use stars or hearts to highlight important content.
- Visual hierarchy – larger shapes draw more attention; smaller shapes guide the eye.
Limitations
- No child elements – shapes are decorative and cannot contain text, images, or other elements. Use a Frame for containers.
- No text support – layer a Textbox over a shape if you need text.
- No gradients – shapes support only solid colours. Layer multiple shapes for gradient effects.
- No field behavior – shapes cannot be converted into Labels or Inputs.
- No border radius control – only rectangles have custom border radii; other shapes have fixed values.
Tips & Best Practices
Use Shapes Sparingly
Shapes are most effective when used intentionally. Overusing shapes can make a design feel cluttered and amateurish. Use them to highlight, separate, or accent – not to fill space unnecessarily.
Match the Mood
- Rectangles – professional, structured, reliable.
- Circles – inclusive, harmonious, friendly.
- Triangles – dynamic, directional, energetic.
- Stars – excellent, premium, achievement-oriented.
- Hearts – loving, caring, personal.
Consider Color Psychology
- Warm colors (orange, red, yellow) – energetic, attention-grabbing.
- Cool colors (blue, green, purple) – calm, trustworthy, professional.
- Neutrals (gray, white, black) – clean, minimalist, elegant.
Combine Shapes
Layering multiple shapes creates sophisticated visual effects:
- A large circle behind a star creates a badge effect.
- A rectangle with a triangle on top creates a ribbon effect.
- Overlapping circles with different opacities create a watercolour or bubble effect.
Use Opacity for Depth
Reduce shape opacity to create subtle background elements. This is especially effective for large circles or rectangles that sit behind text.
Experiment with Rotation
- A rotated rectangle becomes a diamond.
- A rotated triangle changes direction.
- A rotated star or heart creates interesting visual dynamics.
Maintain Consistent Styling
When using multiple shapes, maintain consistent styling (colour palette, sizing, positioning) to create a cohesive design.
Pro tip: Combine shapes to create custom icons without leaving Diterr. A rectangle + triangle = a house icon. A circle + triangle = a play button. The possibilities are endless.
Frame Element
The power of containers
The Frame is the most powerful organisational tool in Diterr. It is a container that can hold other elements – text boxes, images, shapes, and even other frames – as children. Think of a Frame as an artboard, a group, or a clipping mask. It provides structure, hierarchy, and control over complex layouts.
- Organise – group related elements together.
- Move as a unit – drag the Frame and all children move together.
- Clip content – hide parts of children that extend beyond bounds.
- Layer efficiently – control stacking order of entire groups.
- Build complex layouts – nest frames within frames.
Example of a Frame containing multiple child elements on the canvas
Frames are essential for building sophisticated templates. They let you group related content, enforce boundaries, and create nested layouts that are easy to manage and manipulate. Whether you are designing a multi‑section flyer, a complex form, or a reusable component, frames give you the organisational power you need.
Default Settings
When you add a new Frame to your canvas, it comes with these defaults:
| Property | Default Value | Purpose |
|---|---|---|
| Size | 300 × 200px | Generous starting size |
| Background | rgba(255,255,255,0.1) | Semi‑transparent – visible but unobtrusive |
| Border | 2px dashed #3b82f6 (blue‑500) | Clear, identifiable container marker |
| Border Radius | 8px | Softened corners for modern look |
| Padding | 16px all around | Internal spacing from edges |
| Overflow | Hidden | Children are clipped if they extend beyond bounds |
| Locked | False | Editable by default |
| Children | Empty | No child elements initially |
Key Behaviors
Nesting Elements
The primary purpose of a Frame is to contain other elements. You can nest any element – text boxes, images, shapes, or other frames – inside a Frame.
- Drag and drop – click and drag an element from the canvas onto the Frame. The element becomes a child, and its position becomes relative to the Frame.
- Select Frame + Add – select the Frame, then click any "Add" button from the toolbar. The new element will be placed inside the Frame, centred by default.
- Nesting depth – elements can be nested arbitrarily deep. A Frame can contain a Frame, which contains another Frame, and so on.
- Unnesting – drag an element outside the Frame's bounds to remove it from the Frame.
Moving a Frame
When you drag a Frame, all its children move with it. This lets you reposition entire sections of your design in one gesture.
- The Frame's
leftandtopproperties update when dragged. - Children's positions are relative to the Frame, so they remain in perfect synchrony.
- Use case: A section with a heading, paragraph, image, and button – group them in a Frame and move the entire section at once.
Resizing a Frame
When you resize a Frame, its children are clipped if they extend beyond the Frame's new bounds (due to overflow: hidden).
- Drag the resize handle to adjust width and height.
- Children extending beyond new bounds are hidden.
- Use cases: Masking (circular frame with image inside), controlling overflow, responsive layouts.
- Tip: For overlapping effects or drop shadows, consider a different layout structure.
Locking a Frame
Locking a Frame prevents accidental selection, movement, resizing, or deletion of the Frame and its children.
- Toggle the Lock checkbox in the Properties Panel.
- When locked: the Frame and children cannot be selected or modified; the resize handle is hidden.
- Use cases: Protect finished sections, prevent unwanted edits, temporary protection while working elsewhere.
- Note: Locking does not affect children's data – they remain intact and are restored when unlocked.
Adding Children
- Add new element – select the Frame, click any "Add" button from the toolbar. The new element is placed inside, centred.
- Drag existing element – drag from the canvas or Layers Panel onto the Frame.
- The child's
parentIdis set to the Frame's ID, and its position becomes relative to the Frame.
Styling a Frame
Frames are highly stylable, allowing you to customise their appearance to match your design.
Background Color
Fills the entire Frame area. Set to any color, including transparent.
- Use cases: Section backgrounds, card effects (white background + shadow), transparent clipping masks.
- How to change: Use the color picker in the Properties Panel.
Border
Defines the edge of the Frame. Customise width, style (solid, dashed, dotted), and color.
- Default: 2px dashed #3b82f6 – clearly identifies Frames.
- Use cases: Visible grouping, guide lines (dashed), design accents.
Border Radius
Rounds the corners of the Frame. Higher values create more pronounced rounding.
- Default: 8px – soft but not extreme.
- Use cases: Card layouts, circular masks (50%), modern design.
Padding
Internal spacing between the Frame's edges and its children. Prevents children from touching the border.
- Default: 16px all around.
- Use cases: Card layouts, form groups, section backgrounds.
- How to change: Adjust Padding X (left/right) and Padding Y (top/bottom) in the Properties Panel.
Image‑Frames
An Image‑Frame is a special variant that also displays a background image. It behaves exactly like a regular Frame – it can contain children, be moved, resized, locked, and styled – but it also shows a persistent image behind its content.
- How to create: Upload a background image via the Flyer upload box in the Layers Panel. The image becomes the background of the Image‑Frame.
- Key differences: No border by default, 0px padding, no children initially.
- Use cases: Full‑page backgrounds, poster designs, branded templates, photo collages.
- Note: Image‑Frames support all regular Frame styling and behaviors.
Tip: When you need a background image, use the Flyer upload to create an Image‑Frame. This gives you the power of a Frame with the visual impact of an image.
Use Cases
- Layout Grouping – group related elements (header with logo, nav, CTA) to move as a single unit.
- Card Layouts – create product cards, profile cards, testimonial cards with white background and shadow.
- Form Groups – group form fields and labels for better organisation and styling.
- Masking and Clipping – create circular profile photos by placing an Image inside a Frame with border radius 50%.
- Reusable Components – design a component inside a Frame, then duplicate it for reuse.
- Background Blocks – use a Frame as a coloured background for a section, place content inside.
Tips & Best Practices
Use Frames for Hierarchy
Create structure by organising your design into logical groups – headers, footers, content sections, form groups. This improves Layers Panel readability.
Lock Finished Frames
Once a Frame and its contents are finalised, lock it to prevent accidental edits – especially important for large templates.
Avoid Excessive Nesting
While frames can be nested deeply, keep nesting to 2‑3 levels unless you have a specific reason to go deeper.
Use Padding Consistently
Use consistent padding values across similar Frames to maintain visual harmony.
Consider Overflow
Remember that children are clipped by default. For drop shadows or overlapping effects, adjust the layout accordingly.
Style Frames as You Go
Use dashed borders to mark sections during design, then remove or hide them when complete.
Use Image‑Frames for Backgrounds
When you need a background image, use the Flyer upload to create an Image‑Frame – combining container power with visual impact.
Pro tip: Use Frames to create reusable components. Design a testimonial card once inside a Frame, duplicate it, and update the content – saving time and maintaining consistency.
Line Guides
Perfect alignment, every time
Line Guides are thin horizontal or vertical lines that help you align elements precisely on the canvas. They are not part of the final design, but they snap other elements to their position, making it easy to create balanced and professional layouts.
- Align – snap elements to the guide when dragging close.
- Drag to reposition – move the guide anywhere on the canvas.
- Resizable – adjust length without changing thickness.
- Invisible in exports – guides appear only in the editor.
- Perfect for spacing – create consistent margins, columns, and rows.
Example of vertical and horizontal line guides on the canvas
Line Guides are essential for creating pixel‑perfect layouts. They serve as visual reference points while you build, and because elements snap to them, you can easily maintain consistent spacing and alignment throughout your template.
Default Settings
When you add a new Line Guide, it comes with these defaults:
| Property | Default Value | Purpose |
|---|---|---|
| Orientation | Vertical | Creates a vertical guide by default |
| Line Thickness | 4px | Visible but not overpowering |
| Color | #3b82f6 (blue‑500) | Clearly distinguishable |
| Z‑Index | 10000 | Guides stay above other elements |
| Locked | False | Editable by default |
| Parent | None | Guides are always root elements |
Key Behaviors
Adding a Line Guide
You can add a guide from the toolbar by clicking the Guide icon and choosing either Vertical or Horizontal.
- Vertical guide – appears as a thin vertical line spanning the full height of the canvas.
- Horizontal guide – appears as a thin horizontal line spanning the full width of the canvas.
- The guide is centred on the canvas by default.
Moving a Line Guide
Drag the guide to reposition it anywhere on the canvas.
- Drag the line itself, or use the small handle at one end for easier grabbing.
- Vertical guides move only horizontally; horizontal guides move only vertically.
- The guide’s position updates in real time as you drag.
Resizing a Line Guide
You can adjust the length of a guide without changing its thickness.
- Vertical guides – drag the bottom handle to change height (length).
- Horizontal guides – drag the right handle to change width (length).
- The thickness remains fixed, keeping the guide clean and unobtrusive.
Snapping Elements to Guides
When you drag an element near a guide, it will snap to align with the guide’s position.
- Vertical guide – snaps the element’s left edge, centre, or right edge to the guide.
- Horizontal guide – snaps the element’s top edge, middle, or bottom edge to the guide.
- Snapping is strong but can be overridden by moving far enough away.
- Only elements that are not excluded from snapping (e.g., background flyers) will snap.
Styling a Line Guide
You can customise the appearance of a guide in the Properties Panel:
- Orientation – switch between vertical and horizontal.
- Color – change the guide’s colour to stand out or blend in.
- Line Thickness – adjust the thickness in pixels.
- Position – enter a precise position number (or just drag the guide).
Use Cases
- Centre alignment – place a vertical guide at the centre to align key elements.
- Consistent margins – create guides at the edges of your safe area.
- Row & column layouts – use multiple guides to define a grid.
- Baseline alignment – place horizontal guides where text baselines should sit.
- Temporary reference – add a guide, align elements, then delete the guide.
Tips & Best Practices
Use Guides for Consistency
Set up guides for your template’s margins and columns before adding content. This ensures everything stays aligned.
Keep Guides Uncluttered
Use only the guides you need; too many can be distracting. Delete them after alignment if necessary.
Use Different Colours
Colour‑code guides (e.g., blue for margins, green for centre) to distinguish their purposes.
Remember They Are Invisible in Exports
Guides never appear in your published template or generated images, so you can safely leave them in the editor.
Adjust Length for Clarity
If a guide spans the entire canvas but you only need it for a section, shorten it to avoid confusion.
Pro tip: Create a set of guides with consistent spacing before designing a multi‑column layout. Then lock them (or leave them) while you place content – perfect alignment every time.
Working with Multiple Elements
Master your design workflow
As you build increasingly complex templates, you will inevitably find yourself managing multiple elements on the canvas. A typical design might contain dozens of elements – text boxes, images, shapes, and nested frames – all interacting with one another. Understanding how to efficiently select, organise, layer, align, duplicate, and group these elements is essential to maintaining a smooth workflow.
- Z‑Index layering – control depth and visual hierarchy.
- Alignment tools – achieve visual harmony and precision.
- Grouping – temporary, flexible assembly of elements.
- Duplication – rapid reuse and iteration.
- Layers Panel – comprehensive management and organisation.
Example of the Layers Panel showing multiple elements in a hierarchical structure
In this guide, we will explore the core concepts and tools that Diterr provides for working with multiple elements. From the fundamental principle of z‑index layering to the practical convenience of grouping and duplication, you will learn how to take full control of your design's structure and composition.
The Layering System: Z‑Index
Every element on the canvas occupies a position in the third dimension – the depth axis. This is controlled by the z‑index property, which determines the stacking order of elements. Elements with a higher z‑index appear above elements with a lower z‑index. When elements overlap, the one with the higher z‑index is visible on top, while the lower one is partially or fully hidden behind it.
By default, Diterr assigns z‑index values automatically based on the order in which elements are added. The first element you place has the lowest z‑index, and each new element is placed on top of the previous ones.
Three ways to manage z‑index:
- The Layers Panel – click and drag any layer to a new position in the list; this automatically updates its z‑index.
- The Properties Panel – directly edit the numeric z‑index value for precise control.
- Keyboard Shortcuts – use "Bring Forward" and "Send Backward" buttons to move an element one step up or down.
Best practice: Think of your design as a stack of transparent sheets. Place background elements (shapes, image frames) at the bottom, and foreground elements (text, buttons) at the top.
Alignment: Achieving Visual Harmony
Alignment is the foundation of clean, professional design. When elements are properly aligned, they create a sense of order, balance, and cohesion. Diterr provides a set of alignment tools that allow you to align multiple elements in relation to each other or to the canvas as a whole.
To use these tools, select two or more elements by holding Ctrl (or Cmd on Mac) while clicking each element, or by clicking and dragging a selection rectangle over them.
| Alignment Option | Description |
|---|---|
| Align Left | Aligns left edges to the same vertical position |
| Align Right | Aligns right edges to the same vertical position |
| Align Top | Aligns top edges to the same horizontal position |
| Align Bottom | Aligns bottom edges to the same horizontal position |
| Align Center (Horizontal) | Aligns centers on the same vertical axis |
| Align Center (Vertical) | Aligns centers on the same horizontal axis |
- Distribution tools – evenly space selected elements along a horizontal or vertical axis – perfect for grids, menus, and lists.
- When to use: Group related elements, create symmetry, organise grids.
Grouping: Temporary Containers
While Frames provide permanent, structural grouping, sometimes you need a temporary way to treat a set of elements as a single unit – for example, when you want to move them together, scale them proportionally, or apply a transformation to all of them at once. This is where Grouping comes in.
- How to group: Select elements, press
Ctrl+G(orCmd+G). - How to ungroup: Select the group, press
Ctrl+Shift+G(orCmd+Shift+G). - When to use: Temporary rearrangement, proportional scaling, applying transformations, experimental layouts.
| Feature | Group | Frame |
|---|---|---|
| Persistence | Temporary | Permanent |
| Background/Border | None | Highly stylable |
| Clipping | No | Yes |
| Best for | Quick adjustments | Structured components |
Duplication: The Power of Reuse
Duplication allows you to create copies of elements quickly, saving time and ensuring consistency across repeated components.
- Keyboard Shortcut:
Alt+Drag(mouse)– creates a duplicate offset from the original. - Copy and Paste:
Ctrl+C/Cmd+CandCtrl+V/Cmd+V– paste at cursor position. - Duplicate Button: Available in the Properties Panel.
When you duplicate an element, Diterr creates an exact copy including all properties – content, styling, size, position, and parent relationship. The duplicate is placed at a small offset and automatically selected.
- Use cases: Creating repeated elements, building complex layouts, preserving styling, creating variations.
- Tip: Use
Alt+Drag(mouse)for rapid iteration – faster than copy-paste for offsets.
The Layers Panel: Your Command Center
The Layers Panel, located on the left side of the interface, is your primary tool for managing elements. It provides a comprehensive, hierarchical view of every element on the canvas, organised by parent-child relationships.
- Select elements – click any layer to select it on the canvas.
- Reorder elements – drag and drop layers to change z‑index.
- Rename elements – double‑click a layer's name for descriptive labels.
- Lock elements – click the lock icon to prevent accidental changes.
- Delete elements – hover to reveal the trash icon.
- View hierarchy – indentation shows parent-child relationships.
Practical Workflow: Combining the Tools
Here is how these tools work together in a typical workflow:
- Add the main elements – add a header Frame, hero image, section heading, and body text.
- Organise with Frames – place the heading and body text into a Frame as a content block.
- Adjust layering – in the Layers Panel, drag the hero image below the header Frame.
- Duplicate a section – select the content block Frame, press
Alt+Drag(mouse), and drag the duplicate to a new position. - Align elements – select both section Frames, use align-top, then distribute-vertical to space them evenly.
- Lock finished sections – lock both sections to avoid accidental changes.
- Refine and iterate – rename layers in the Layers Panel for easier navigation.
Pro tip: A well‑organised design makes collaboration, maintenance, and future updates significantly easier. Take the time to name your layers and use Frames for structure.
Summary
Working with multiple elements is where the true power of Diterr shines. The combination of:
- Z‑Index layering – for controlling depth and visual hierarchy.
- Alignment and distribution – for achieving visual harmony and precision.
- Grouping – for temporary, flexible assembly of elements.
- Duplication – for rapid reuse and iteration.
- The Layers Panel – for comprehensive management and organisation.
…gives you complete control over even the most complex templates. By mastering these tools, you can work faster, maintain consistency, and create designs that are both beautiful and easy to manage.
Remember: a well‑organised design is not just about aesthetics – it also makes collaboration, maintenance, and future updates significantly easier.
Final tip: The Layers Panel is your best friend for complex designs. Rename your elements as you go – "Header Logo", "Product Card 1", "Submit Button" – your future self will thank you.