Member
Account Settings
Share AgencyGenius
Know someone who might benefit from AgencyGenius? We'd love it if you shared our platform with your networking group!
AI Prompts, tests, and trend logs from the front lines. This is where we try things, break things, and share what’s actually working.
When AI Doesn't Cooperate
Essential guidance for working with AI prompts effectively. Understanding AI limitations and how to get better results.
Read moreA Note on Working with AI
When AI Just Doesn't Cooperate
Let's be honest – AI can be amazing, but it can also be incredibly frustrating at times. Even with the perfect instructions, these systems occasionally miss the mark completely, which can be really stressful when you're trying to get something done.
Many of these AI models are still in beta. The technology is improving rapidly, but that means there will inevitably be times when it just doesn't work as expected—no matter how carefully you've written your request.
After countless hours of working with these systems (and plenty of our own frustrating moments), we've found that taking a very human approach to this very AI problem makes all the difference.
What Actually Helps When You're Stuck
When you find yourself getting frustrated with an AI that just isn't getting it, try these surprisingly simple approaches:
- 1 Take a breath (seriously). It sounds cliché, but stepping away from the keyboard for a minute can make a world of difference. AI can be maddening when it's not working, and a clear head helps.
- 2 Start fresh in a new chat. Copy what you need from the previous conversation and start over. For whatever reason, this simple human solution fixes AI problems about 99% of the time. Just say "In another chat, we tried to do X but ran into issues. Let's try again."
- 3 Ask it to think about what went wrong. Instead of trying the same thing again, ask it to analyze what might be causing the issue. Sometimes just getting its perspective on the problem leads to a breakthrough.
- 4 Get options, not solutions. Ask it to suggest a few different ways to approach your problem without actually implementing any of them. Then you can pick the one that makes the most sense to you.
- 5 Reach out to other humans. If you're still stuck, our Slack community has probably encountered similar issues before. Sometimes just knowing you're not the only one experiencing these challenges is reassuring.
HTML Widget Friendly Prompt
A prompt template that helps convert complex code into properly structured, self-contained HTML widgets for websites. Perfect for those just dipping their toe in dev work.
HTML Widget Friendly Prompt
Overview
This prompt template ensures that code generated for HTML widgets is properly structured and self-contained. It's ideal for situations where you need to convert complex code components into a format that works correctly within HTML widget environments.
How It Works
Simply copy your HTML, CSS, and JavaScript code into a chat with an AI assistant, add this prompt at the end, and hit enter. The AI will restructure your code into a properly formatted, self-contained HTML widget that's ready to be embedded in your website.
- ✓ Ensures all code is wrapped in a single div with a unique ID
- ✓ Contains all CSS and JavaScript inside the wrapper
- ✓ Adds clear comments throughout for easy maintenance
- ✓ Properly escapes script tags to prevent implementation errors
Prompt Template
Copy the prompt below and add it after your code in an AI chat:
- Z index requirements,.
- Overflow controls.
- Specific detail that may override or contradict instructions within your custom instructions.
Ensure that events you may use to achieve the desired outcome do not conflict therefore prevent behaviours to happen as expected.
Important: If you code anything with a generate code function in a tool for example you must properly escape script tags to prevent errors during implementation.
Additional Styling Prompt
Generate custom styling prompts for client websites. Specify brand colors, fonts, and styling preferences to maintain consistent branding across AI-generated components.
Additional Styling Prompt Generator
Overview
Create custom styling prompts for AI assistants to ensure consistent branding across components. This tool helps agencies specify brand colors, spacing, and styling preferences at the beginning of AI conversations, ensuring that generated code matches client brand guidelines.
Brand & Style Information
Generated Styling Prompt
Copy this prompt and place it at the beginning of your conversation with an AI assistant to ensure consistent styling for your client:
How To Use
Follow these steps to ensure consistent styling across AI-generated components:
- 1 Fill in the brand information and styling details above
- 2 Generate your custom styling prompt
- 3 Copy the prompt and paste it at the beginning of your AI conversation
- 4 Follow with your specific component request to the AI
Style Transfer Prompt
Reuse styling from previously created components for consistent branding. This prompt helps AI assistants apply existing style patterns to new components without recreating brand guidelines.
Style Transfer Prompt
Overview
This prompt helps you reuse styling from previously created components without having to recreate brand guidelines from scratch. It instructs AI assistants to extract and apply existing style patterns from code you've already had generated to new components you need.
Prompt Template
Copy the prompt below and use it along with a previously created component:
Take the styling from the attached component you made for me in a previous conversation and apply it to this new component I need described below. As this component is for the same website, maintain the same look and feel throughout. Here's what I need:
[Describe the new component you need here]
How To Use
Follow these steps to maintain consistent styling across components:
- 1 Copy the style transfer prompt
- 2 Start a new conversation with the AI assistant
- 3 Paste your previous component's code (the one with styling you want to reuse)
- 4 Add the style transfer prompt and describe the new component you need
Design Ideation Assistant
Combat designer's block with AI-powered design ideation. Get multiple alternative design concepts for components, sections, or full pages when you're stuck on how to present content effectively.
Design Ideation Assistant
Overview
This prompt helps web designers overcome creative blocks by leveraging AI to generate multiple design alternatives for page components, sections, or full layouts. Whether you're stuck on how to display specific content or just want to explore different approaches, this prompt helps you visualize various design possibilities quickly.
How It Works
Choose between two prompts depending on your situation - one for when you already have an ongoing conversation about a brand or project, and another for starting fresh. Both prompts ask AI to generate 3-4 alternative design approaches for your content. After receiving the ideas, you can refine specific aspects, request artifacts of individual components, or use screenshots with multimodal AI to optimize particular elements.
- ✓ Generates multiple design alternatives for any content
- ✓ Works with components, sections, or full page layouts
- ✓ Includes guidance for iteration and refinement
- ✓ Can focus on specific design elements or full concepts
Prompt Template - Existing Conversation
Use this prompt when you've already been discussing a brand or project with AI and want design alternatives:
Prompt Template - Fresh Start
Use this prompt when starting a new conversation without established context:
Refining Your Results
After receiving design alternatives, try these approaches to refine the results:
- 1 Mix and match elements:"I like the header from design #1 and the content layout from design #3. Can you create a hybrid version combining these elements?"
- 2 Request specific artifacts:"Can you create an HTML/CSS artifact of just the card component from design #2?"
- 3 Use screenshots with multimodal AI: Take screenshots of the designs you like and upload them with specific feedback like "I like this layout but want to explore different navigation patterns"
- 4 Specify design constraints:"This is great, but we need to ensure it works well on very small screens. How would you modify design #2 to be more mobile-friendly?"
Example Usage
This prompt is particularly useful for these design challenges:
- ✓ Product feature showcases
- ✓ Team/staff member displays
- ✓ Service comparison sections
- ✓ Content-heavy pages with diverse information
- ✓ Call-to-action areas that need fresh approaches
Prompt Builder
Generate effective and clear custom agent prompts that optimize AI responses. Perfect for creating structured prompts that deliver precise results.
Prompt Builder
Overview
Prompt Builder is an expert AI prompt engineer with expertise in generating effective and clear prompts for AI assistants. This prompt template helps you craft structured prompts that guide AI models to produce more accurate, relevant, and useful responses.
How It Works
This prompt template creates an AI assistant that specializes in prompt engineering. It helps you define problems clearly, implement effective prompt priming, and employ proven prompting techniques to enhance your results with AI assistants.
- ✓ Clear problem definition for focused prompts
- ✓ Step-by-step reasoning for complex tasks
- ✓ Response length specification for appropriate outputs
- ✓ Formatting guidance for consistent results
Prompt Template
Copy the prompt below to create your own Prompt Builder assistant:
You are PromptPro, an expert AI prompt engineer with the expertise in generating effective and clear prompts for AI assistants.
Purpose: To optimize prompts for AI assistants
Instructions:
- Define the Problem: Clearly define the problem or goal that you want to achieve. Use relevant keywords and phrases to craft a concise prompt that communicates the required information and task.
- Prompt Priming: Consider implementing prompt priming by providing initial input that guides the model towards generating a relevant and coherent response. This can be done by including relevant context, background information, or specific instructions.
- Employ Prompting Techniques:
Employ various prompting techniques to enhance the accuracy of the responses:
- Step by step: Encourage the model to explain its reasoning process by using prompts that ask for step-by-step explanations.
- Modifiers: Use qualifiers, adjectives, adverbs, and intensifiers to refine the tone and specificity of the prompts.
- Focused Prompt Frameworks: Use frameworks that enhance precision by specifying the framework within which the model should generate responses.
- Desired Response Length: Specify the desired length of the response. This will help the AI assistant generate a response that aligns with your expectations.
- Provide Examples and Formatting: Include examples of preferred responses and formatting to guide the AI assistant in generating responses that meet your requirements.
- Organize Complex Instructions: Use brackets and markdown to organize and clarify complex multi-step instructions. This will ensure that the AI assistant understands the instructions accurately and generates coherent responses.
Example Usage
After adding this prompt, you can ask Prompt Builder to help you create effective prompts for specific tasks:
- ✓ "Help me create a prompt for generating creative story ideas"
- ✓ "I need a prompt that helps an AI analyze financial data"
- ✓ "Create a prompt for explaining complex technical concepts simply"
Duda Widget Builder Assistant
A comprehensive prompt that transforms your existing code into properly structured Duda widgets with separate HTML, CSS, and JavaScript components and detailed implementation guidelines.
Duda Widget Builder Assistant
Overview
This prompt helps agencies and developers transform existing code into properly structured widgets compatible with Duda's Widget Builder. It analyzes your code and provides separated HTML, CSS, and JavaScript components along with detailed implementation guidelines for content and design editor configurations.
How It Works
Simply paste your existing code into a conversation with an AI assistant, add this prompt, and hit enter. The assistant will analyze your code and provide all the components needed to implement it as a Duda widget, including proper variable naming, selectors, and a comprehensive implementation guide.
- ✓ Separates code into proper HTML, CSS, and JavaScript sections
- ✓ Suggests optimal input types for content and design editors
- ✓ Creates appropriate variable names and selectors
- ✓ Provides detailed implementation guides for each component
Prompt Template
Copy the prompt below and add it after your code in an AI chat:
I want you to take the code that I've attached and help me create a widget using Duda's Widget Builder. The code should give you an idea of what we're trying to accomplish, though I may provide additional context about its purpose.
If the code I share has multiple structures of the same thing within it, but different values then in this case, you should take the inference that users will want to create their own individual own - think testimonials etc.
All widgets must mobile optimised. Naming shouldn't follow the code given, it should be generalised.
When implementing this in Duda's Widget Builder, please provide the code in the proper sections:
- HTML- This should contain only the HTML structure, without embedded CSS or JavaScript
- CSS- This should be provided separately for the global CSS field
- JavaScript- This should be provided for the JavaScript section (without the function wrapper as it's already provided)
When guiding me through implementing this as a Duda widget, please focus on:
- Choosing optimal input types
based on their actual purpose, not just technical possibility:
- Use specialized controls like Text Style, Background, and Rounded Corners for their intended purposes
- Reserve Layout Selectors only for true visual layout variations that benefit from preview images
- Use simpler controls (Dropdowns, Radio Buttons, Toggles) for basic configuration options
- For each input type you suggest, briefly explain why it's the optimal choice compared to alternatives
- Creating a user-friendly experience
with meaningful customization options:
- Only include settings that add value
- Arrange inputs in a logical order where dependent settings come after their prerequisites
- Organize related settings into properly configured groups
- Providing complete configuration for each input:
- For EACH input field, provide ALL applicable configuration options including:
- Variable name
- Descriptive label
- Default value (always specify an appropriate default)
- Placeholder text (where applicable)
- Tooltip text (where helpful)
- Required/optional status
- Validation rules (where needed)
- Show if conditions (for dependencies)
- Group membership (parent-child relationships)
- For EACH input field, provide ALL applicable configuration options including:
- Properly configuring groups:
- For each group, always specify:
- Variable name (required)
- Descriptive label
- Display type (embed, container, side menu, expandable)
- Show if conditions (if applicable)
- Clearly indicate which inputs belong inside each group
- For each group, always specify:
- Balancing power and usability- these widgets should extend Duda's capabilities while remaining intuitive for non-technical users.
Widget Basics
First, determine:
- A suitable widget name
- The appropriate category (Basics, Advanced Widgets, Media, Business, Social, Other)
- Widget search tags (comma seperated)
Content Editor Options
The Content Editor allows for user input configuration. Here are all available input types and the fields available to populate for each one respectively:
Input Types:
- Text: Variable name, descriptive label, bind to connected data, default value, placeholder text, tooltip text, required field, validation, validation error message, show if
- Checkbox: Variable name, descriptive label, default value (i.e. on or off), show if
- Description: Free text (UI element only)
- Divider: Visual separator (UI element only)
- Dropdown:
- Variable name, descriptive label
- Options type: Static list (label/value pairs), Numeric options, or Dynamic (API-based)
- Default value, show if
- Group: Layout (embed, container (preferred), side menu, expandable), variable name, descriptive label, show if
- Icon: Variable name, descriptive label, default icon, show if - for context this allows the users to choose an icon
- Link: Variable name, descriptive label, bind to connected data, layout, required field, show if - For context, this allows the user to either list a URL, link it to an existing site page built within the Duda platform, link it to a pop-up, an anchor, an email address, i.e. mail to, click to call, or a file to download.
- List: Variable name, descriptive label, bind to connected data, default items, tooltip text, add item text, link item labels to input, show if - For context, this input type essentially acts as a parent, so input types, the fields nested. So think of it like, as an example, if you wanted to make a testimonial, therefore you would need text. For the text field, for the names field, for the job role, maybe an image for the avatar, etc.
- Large Text: Variable name, descriptive label, bind to connected data, default value, placeholder text, option to allow rich text editing, tooltip text, required field, show if
- Image: Variable name, descriptive label, bind to connected data, default image URL, tooltip text, required field, show if
- Video: Variable name, descriptive label, default value, required field, show if - For context, this input type allows the user to select a video from the video library that has been uploaded to YouTube, Vimeo or Dailymotion URL.
- Audio: Variable name, descriptive label, default value, required field, show if - For context, this input type allows the user to select an audio file that has been uploaded to the media manager.
- Date: Variable name, descriptive label, default date, show if - For context, the default date can either be today or a specific day that's set.
- Radio Buttons: Variable name, descriptive label, labels for each option & values, default value, required field, show if
- Toggle: Variable name, descriptive label, default value (on/off), tooltip text, show if
- Slider: Variable name, descriptive label, default value, unit (px/%), min/max values (whole numbers only), show if - For context, this doesn't allow decimal places.
Design Editor Options
The Design Editor allows for styling configuration. Here are all available design inputs and the fields available to populate for each one respectively:
Design Input Types:
- Background: Descriptive label, custom selector - For context, this allows the user to choose a colour.
- Border: Descriptive label, custom selector - For context this allows the user to decide the thickness, the borderline and the colour.
- Button: Descriptive label, custom selector - For context, this allows the user to set the width, height, whether or not to keep proportions, as well as setting color of image to be used as the buttons background, additionally it contains controls to set the buttons hover behaviour and also the typotgraphy settings, font family, size, allignment, colour etc.
- Checkbox: Descriptive label, variable name, default value
- Color Picker: Descriptive label, CSS property, CSS output or variable, custom selector
- CSS Slider: Descriptive label, CSS properties, unit (px or %), min/max values, custom selector
- Description: Free text (UI element only)
- Dimensions: Descriptive label, dimension options (height/width, width only, height only), custom selector - For context we can also decide to allow you users to see a keep proportions toggle or not as part of this input type
- Divider: Visual separator (UI element only)
- Dropdown:
- Variable name, descriptive label
- Options type: Static list (label/value pairs), Numeric options, or Dynamic (API-based)
- Default value, show if
- Group: Layout (embed, container, side menu, expandable), variable name, descriptive label, show if - (UI element)
- Image Design: Descriptive label, custom selector - For context, this allows the user to specify the image shape (square, circle etc) the image height and width, border thickness & color, corner radius, shadow etc.
- Layout Selector: Variable name, layout options (name, value, image URL) - For context, this essentially is like the drop down menu with the added ability to show a visualisation of what it might look like with a low fidelity mockup.
- Reset inner CSS when changing layout - If set to true, all CSS set to inner elements by other widget design controls will be reset when user changes layout. CSS set on main wrapper will not be reset.
- Radio Buttons: Variable name, descriptive label, labels for each option & values, default value, required field, show if
- Rounded Corners: Descriptive label, custom selector - use for border radius styling
- Text Style: Descriptive label, custom selector - use for complete typography styling (font, size, weight, color, format, allignment, direction etc.)
- Toggle: Descriptive label, variable name, default value, tooltip text
- Slider: Descriptive label, unit (px or %), min/max values, variable name, default value - For context, no decimal places.
- Floating: No options for us when creating this, although it gives the user the ability to allow making the widget float on top of everything else. Imagine like a live chat.
Best Practices for creating Duda Widget Builder:
- Use Text Style for any typography-related styling instead of creating separate controls
- Use Rounded Corners for border radius instead of CSS Slider
- Use Background for background styling rather than separate color pickers
- Use Border for border styling rather than separate controls
- Use Dimensions for controlling element size
- Group related controls logically using the Group input type
- Use descriptive labels and tooltips to clarify what each control does
- Only use Layout Selector when there are true visual layout choices that benefit from preview images
- A widget should always be 100% wide, allowing the user, their site, to manually do it through widget resizing. So any dimensions should just be for the content of the widget, not the widget itself.
- Ensure all interactive or clickable elements (buttons, arrows, tooltips, modals, etc.) have sufficient z-index values. Explain briefly why the chosen value ensures proper layering above surrounding content.
- Specify how overflow (overflow: hidden or visible) should be handled when hover animations or transitions might alter content dimensions, to avoid clipping effects.
- When using Color Picker inputs in the Design Editor, explicitly state whether colors should output directly to CSS properties or to CSS variables. Prefer CSS variable outputs (var(--accent-color)) for maintainability and theme consistency. Provide a clear default color.
- Allow users to customize navigation icons, positioning, and visibility directly within the Content Editor or Design Editor. Specify the most intuitive input type (Icon, Dropdown, or Toggle).
- Clearly define whether hover effects apply to individual elements or to the entire widget simultaneously. Each hoverable item should function independently unless explicitly stated otherwise.
- When providing the final code (HTML, CSS, JavaScript), always deliver it as complete, ready-to-use blocks—not partial snippets or isolated changes. Assume the user prefers full implementation for clarity.
- Keep CSS simple with minimal variables. Handle dynamic styling in JavaScript instead of trying complex conditionals in CSS. This prevents parsing errors and makes widgets more reliable.
Widget Resizing
The entire widget resizing permissions can be controlled:
- Height and width
- Only width
- None
Code Separation Best Practices
While you can embed CSS within the HTML in Duda widgets, it's generally better practice to separate them for:
- Better organization and maintainability
- Easier debugging
- Proper use of Duda's widget architecture
However, for certain CSS that's specific to the HTML structure and unlikely to change, embedding within the HTML section can sometimes be appropriate. Use your judgment based on the complexity of the widget.
Remember that functionality and customization are key, but focus on making the widget intuitive to use despite users' potential lack of technical knowledge. Always choose the most appropriate input type for each customization option to create a better user experience.
Final Note: Duda can't install third-party JavaScript. So if the code that I give you has things like GSAP in it, etc, etc, you'll need to find an alternate where to do it.
Example Usage
This prompt is particularly useful for converting the following types of code into Duda widgets:
- ✓ Content carousels and sliders
- ✓ Testimonial or review displays
- ✓ Interactive forms and calculators
- ✓ Custom navigation elements
- ✓ Pricing tables and comparison charts
NO-ACCESS
Only for Desktop Users
This page is only available on desktop.
Please Log in on a desktop to gain access.