# DesignSetGo > DesignSetGo gives you 50\+ professionally designed blocks, 15 powerful extensions, and 70\+ ready\-to\-use patterns — everything you need to create beautiful, responsive websites\. ## Pages # Privacy Policy # Privacy Policy **Effective Date**: November 11, 2025 **Last Updated**: March 23, 2026 ## Introduction This Privacy Policy explains how DesignSetGo ("we", "us", "our", or "the Plugin") handles information in connection with our WordPress plugin and related services. ## Information Collection and Use ### Plugin Usage **DesignSetGo operates entirely on your WordPress installation and does NOT:** - Collect or transmit any personal data to external servers - Track user behavior or analytics - Use cookies or similar tracking technologies - Phone home or communicate with our servers - Store any data outside your WordPress database **The Plugin DOES:** - Store block configurations locally in your WordPress database - Save your design settings and preferences within your WordPress installation - Process data entirely on your server ### Website and Direct Contact If you interact with us outside the plugin (website, email, support): **Information We May Collect:** - Name and email address (when you contact us) - Message content (in support requests) - IP address and browser information (standard server logs) - WordPress version and plugin version (for support purposes only, if voluntarily provided) **We DO NOT:** - Use third-party analytics or tracking services - Sell or rent your information to third parties - Share your information except as described below - Send marketing emails without your explicit consent ## How We Use Information Information collected through direct contact is used solely to: - Respond to your support requests and inquiries - Troubleshoot technical issues - Improve the plugin based on feedback - Send plugin updates (only if you opt in) - Comply with legal obligations ## Data Storage and Security **Plugin Data:** - All plugin data is stored locally in your WordPress database - You have complete control over this data - We do not have access to your WordPress installation - Uninstalling the plugin removes all plugin-specific data from your database **Contact Data:** - Stored securely using industry-standard practices - Retained only as long as necessary for the purposes described - Protected against unauthorized access **Security Measures:** - Encryption in transit (HTTPS) - Secure data storage - Regular security reviews - Limited access to any collected data ## Data Retention **Plugin Data:** - Retained in your WordPress database until you uninstall the plugin or manually delete it - We do not retain copies of your plugin data **Contact Information:** - Support emails: Retained for 2 years for reference - Opted-in email lists: Retained until you unsubscribe - Server logs: Retained for 30 days ## Data Sharing and Disclosure We do NOT sell, trade, or rent your personal information. **We may share information only in these limited circumstances:** - **Legal Requirements**: When required by law, court order, or government request - **Safety and Protection**: To protect our rights, safety, or property, or that of others - **Business Transfer**: In connection with a merger, sale, or transfer of assets (you will be notified) **We do NOT share with:** - Advertisers or marketing companies - Data brokers - Third-party analytics services ## Your Rights You have the right to: - **Access**: Request a copy of personal information we hold about you - **Correction**: Request correction of inaccurate information - **Deletion**: Request deletion of your personal information - **Portability**: Request your data in a portable format - **Opt-Out**: Unsubscribe from communications at any time - **Withdraw Consent**: Withdraw consent for data processing **To exercise these rights, contact us at**: justin@nealey.pro We will respond within 30 days. ## Regional Privacy Rights ### For European Union (EU) and UK Users – GDPR **Legal Basis for Processing:** - Consent: When you voluntarily provide information - Legitimate Interest: For plugin functionality and support - Legal Obligation: When required by law **Your Additional Rights:** - Right to object to processing - Right to restrict processing - Right to lodge a complaint with your data protection authority - Right to not be subject to automated decision-making **Data Controller**: Justin Nealey — justin@nealey.pro **Data Transfers**: We do not transfer data outside the EU/UK. If we do in the future, we will ensure appropriate safeguards. ### For California Residents – CCPA/CPRA **Your Rights Under CCPA:** - Right to know what personal information is collected - Right to know if personal information is sold or shared - Right to opt-out of sale/sharing of personal information - Right to delete personal information - Right to correct inaccurate information - Right to limit use of sensitive personal information - Right to non-discrimination for exercising rights **Our Practices:** - We do NOT sell personal information - We do NOT share personal information for cross-context behavioral advertising - We do NOT collect sensitive personal information through the plugin **To Submit a Request**: Email justin@nealey.pro or use our website contact form **Verification**: We may request additional information to verify your identity before processing requests. **Authorized Agent**: You may designate an authorized agent to make requests on your behalf. ### For Other Jurisdictions We comply with applicable data protection laws in all jurisdictions where the plugin is used. Contact us for jurisdiction-specific questions. ## Children's Privacy DesignSetGo is not intended for children under 13 (or 16 in the EU). We do not knowingly collect information from children. If you believe we have collected information from a child, contact us immediately for deletion. ## Cookies and Tracking **The Plugin**: Does not use cookies or tracking technologies. **Our Website** (if applicable): May use essential cookies for functionality. We do not use advertising or tracking cookies. You can control cookies through browser settings. ## Third-Party Links The plugin or our communications may contain links to third-party websites. We are not responsible for the privacy practices of these sites. Review their privacy policies before providing information. ## Third-Party Services DesignSetGo does not integrate with third-party services for analytics, advertising, or data collection. If this changes, we will update this policy and notify users. ## Data Breach Notification In the unlikely event of a data breach affecting personal information, we will: - Notify affected users within 72 hours (or as required by law) - Report to relevant authorities as required - Take immediate steps to contain and remedy the breach ## International Data Transfers Currently, all data processing occurs within the United States. If we transfer data internationally in the future: - We will ensure adequate protection mechanisms - We will update this policy - We will notify users in affected regions ## Changes to This Privacy Policy We may update this Privacy Policy to reflect: - Changes in legal requirements - New plugin features - Improvements to privacy practices **Notice of Changes:** - Updated "Last Updated" date at the top - Material changes will be prominently posted - Continued use after changes constitutes acceptance - For significant changes, we may email registered users **Version History**: Available upon request ## Do Not Track (DNT) Since the plugin does not track users, DNT settings do not apply to plugin functionality. Our website (if applicable) respects DNT signals. ## Your Responsibilities To protect your privacy: - Keep your WordPress installation secure and updated - Use strong passwords and security best practices - Backup your WordPress database regularly - Review and configure WordPress privacy settings - Be cautious about what information you include in support requests ## Contact Information **For Privacy Questions or Requests:** Email: justin@nealey.pro Response Time: Within 30 days **For Data Protection Officer (if applicable):** Email: justin@nealey.pro **For Security Issues:** Email: justin@nealey.pro ## Complaints and Disputes If you have concerns about our privacy practices: 1. Contact us first – we will work to resolve the issue 2. EU/UK users: Contact your national data protection authority 3. California users: Contact the California Attorney General 4. Other jurisdictions: Contact your local privacy regulator ## Legal Compliance We comply with: - General Data Protection Regulation (GDPR) - California Consumer Privacy Act (CCPA/CPRA) - California Online Privacy Protection Act (CalOPPA) - Children's Online Privacy Protection Act (COPPA) - Other applicable privacy laws ## Accessibility This privacy policy is written in plain language. If you need this policy in an alternative format, contact us. ## Verification If you submit a privacy request, we may ask for: - Email verification - Account information (if applicable) - Recent interactions with us This ensures we provide information only to the correct person. --- ## Quick Summary (Plain Language) **What We Collect:** - Nothing through the plugin itself - Only info you voluntarily send us (name, email, support messages) **What We Do:** - Use your info only for support and plugin improvements - Store everything securely - Never sell your information **Your Rights:** - Request your data - Delete your data - Opt out of communications - Control your information **Contact Us:** justin@nealey.pro --- # Home Free WordPress Plugin Build ***stunning*** WordPress sites without writing a single line of code! 50+ professionally designed blocks. 15 powerful extensions. 70+ ready-to-use patterns. Everything you need to build beautiful, responsive websites — inside the block editor you already know. [Download from WordPress.org](https://wordpress.org/plugins/designsetgo/) 20,000+ downloads **0** **0** **0** **0** Four categories · One plugin Everything you need, none of what you don't. From contact forms and interactive elements to layout systems and visual components — DesignSetGo has the blocks you need to build anything. No shortcodes, no page builder bloat. 01 Layout Systems ### Build any layout you can imagine Sections, rows, grids, and fifty-fifty splits. Desktop-first design with separate tablet and mobile breakpoints. 02 Interactive ### Engage visitors with dynamic content Accordions, tabs, flip cards, modals, sliders, countdown timers. Every interaction is keyboard accessible. 03 Scroll & animation ### Scroll-driven storytelling Entrance animations, parallax backgrounds, scroll-pinned slides, sticky stacking sections. This page is a live demo. 04 Forms & data ### Collect data, show stats, compare plans Form builder with 11 field types, animated counters, progress bars, comparison tables, and timelines. See it in action Blocks you can *actually* play with. Don't just read about our blocks — try them right here on this page. ### Tab Accordion block · try it ### Smooth, keyboard-accessible accordions. Click any row to expand. Native ARIA roles, focus management, and a configurable animation duration — all with zero JS from you. **Accordion Item** 50+ blocks covering layouts, interactive elements, scroll effects, data visualization, forms, and visual components — from simple sections to complex scroll-driven animations. **Accordion Item** Every block integrates with WordPress's native controls — colors, typography, spacing, and borders all work out of the box. Advanced blocks add their own controls in the inspector panel. **Accordion Item** Yes — 100% free with no premium tier, no feature gates, and no upsells. Every block and extension is included. Download from WordPress.org and use everything. **Accordion Item** Zero jQuery, zero bloat. Each block ships under 10 KB in the editor and under 5 KB on the frontend. Unused blocks add zero weight to your page. ### Tab Flip card block · click any card Hover to flip #### Hover effects Back #### Smooth transitions Customizable hover animations, transitions, and effects on every interactive block. Tap to flip #### Click interactions Back #### Rich interactivity Accordions, tabs, modals, and flip cards — all with full keyboard and screen reader support. Tap to flip #### Scroll effects Back #### Story-driven scroll Pin sections, stack cards, and fade content in as visitors scroll through your page. ### Tab 12 animations #### Entrance animations Blocks fade, slide, and scale into view as visitors scroll. Customizable duration and delay. any block #### Parallax backgrounds Add depth with scroll-driven parallax on any section. Background images move at a different speed than content. auto-trigger #### Scroll-triggered counters Numbers count up when scrolled into view. Perfect for statistics, milestones, and social proof sections. **0** **0** **0** **0** Accessibility - 100% Performance - 98% Best practices - 95% ### Tab Comparison table block ### Stacked up against doing it all by hand. Without DesignSetGoPopularWith DesignSetGoCustom layoutsWrite custom CSSDrag & dropInteractive elementsInstall multiple pluginsBuilt-inResponsive designMedia queries by handPer-breakpoint controlsScroll animationsExternal JS librariesOne-click toggleForm builderSeparate plugin + configIncluded free ### Tab Form builder · 11 field types ### Build beautiful forms in seconds. Try this live demo. Honeypot spam protection, AJAX submission, and native WordPress email delivery included — no third-party services. *[Form: Contact Form]* No code required ## Drag. Drop. Done. Every block works with WordPress's native editor. No shortcodes, no custom fields, no learning curve. If you can use WordPress, you can use DesignSetGo. Theme compatible ## Works with any block theme. DesignSetGo inherits your theme's colors, fonts, and spacing. Every block looks native to your site — no CSS overrides needed. Performance first ## Zero jQuery. Zero bloat. Every block loads only the CSS and JS it needs. Unused blocks add zero weight to your page. Your Lighthouse scores stay green. Why DesignSetGo Built different — so your sites can be, too. ### Lightweight & fast Zero jQuery, zero bloat. Every block loads only what it needs. Your site stays fast no matter how many blocks you use. ### Accessible & secure WCAG AA compliant with full ARIA support. Built with WordPress security best practices from the ground up. ### Fully responsive Every block adapts to desktop, tablet, and mobile. Separate responsive controls let you fine-tune each breakpoint. ### Developer friendly Clean code with hooks, filters, and extensible architecture. Customize anything to fit your project. ### Translation ready Fully internationalized with 9 languages included. Ship your site in any language with ease. ### Actively maintained Regular updates with new blocks, features, and compatibility fixes. Active development you can count on. Quick start ## Get started in three simple steps. From install to launch in minutes. No configuration needed — just download, drag-and-drop, and publish. Step 01 ### Install & activate Download DesignSetGo from WordPress.org and activate it. One click in your WordPress dashboard — no configuration required. Step 02 ### Drag & drop blocks Choose from 70+ ready-made patterns or build custom layouts with 50+ blocks. Drag, drop, and customize to match your vision. Step 03 ### Ship it Preview, publish, and share your beautiful, responsive website with the world. Every page looks great on every device. NEW — DesignSetGo Apps Vibe-code apps that know your WordPress site. AI-built apps that read your posts, pages, and users — sandboxed so a broken app can’t break your site. The best of vibe-coding meets the best of WordPress. Safe ### If it breaks, your site is fine. Every app runs in a sandboxed iframe with an explicit permission list. A buggy or malicious app can’t take down your site or exfiltrate your data. Connected ### Reads your posts & users. Through a permissioned bridge, apps work with your real WordPress content — not a generic mockup. You approve the data they can see at install time. Native ### Lives where WordPress lives. Embed any app inside any post as a Gutenberg block, render at /apps/{slug}, or live in wp-admin. Same login, same domain, same hosting. **[Explore DesignSetGo Apps →](https://designsetgoblocks.com/apps/)** Sibling product. Free plugin coming soon — built on the same Block-Editor foundation. Free forever · Open source Start building beautiful pages today. Join 400+ WordPress sites already using DesignSetGo — completely free. No premium tier, no feature gates, no upsells. **[↓ Download from WordPress.org](https://wordpress.org/plugins/designsetgo/)** | **[View on GitHub](https://github.com/jnealey/designsetgo)** Compatible with WordPress 6.7+ and any block theme. Free forever. --- # Blocks # 50+ Blocks to Build Anything Explore our complete collection of custom WordPress blocks organized into four categories. Lightweight, accessible, and fully responsive — designed to work beautifully with any block theme. ## Complete Form Building System Build any form with our drag-and-drop form builder. 11 specialized field types with AJAX submission, honeypot spam protection, and email notifications. - Text, Email & Textarea fields - Phone & Number inputs with validation - Date & Time pickers - Select dropdowns & Checkboxes - URL & Hidden fields for tracking - Honeypot spam protection built in - AJAX submission — no page reload - Email notifications to admin - Custom success & error messages - Required field validation - Custom submit button styling - Redirect after submission [Explore Form Blocks](/blocks/form-build-blocks/) ## Bring Your Pages to Life Dynamic, interactive components that captivate your audience. Every block handles its own JavaScript — no coding required. **Accordion Item** DesignSetGo includes 9 interactive blocks: Accordion, Tabs, Slider, Flip Card, Image Accordion, Counter, Countdown Timer, Scroll Marquee, and Content Reveal. Each block is fully customizable with color, spacing, animation, and responsive settings. **Accordion Item** Not at all. Every interactive block works entirely through the block editor — just drag, drop, and configure using the sidebar controls. All JavaScript is handled automatically behind the scenes. **Accordion Item** Yes. Every interactive block follows WCAG AA guidelines with proper ARIA attributes, keyboard navigation support, focus management, and screen reader announcements. Accessibility is built in, not bolted on. [See All Interactive Blocks](/blocks/interactive-elements/) ## Structure Your Content Powerful layout blocks that give you total control over page structure with separate desktop, tablet, and mobile responsive settings. ### Section Full-width vertical stacking container with shape dividers, background patterns, and content width constraints. ### Row Horizontal flexbox container for side-by-side content with alignment, wrapping, and gap controls. ### Grid Responsive multi-column grid with separate desktop, tablet, and mobile column settings and span controls. [Explore Layout Blocks](/blocks/layout-systems/) ## Polish Your Design Finishing touches and visual elements that make your site stand out. Icons, badges, dividers, progress bars, and more. [Browse All Visual Blocks](/blocks/visual-ui-blocks/) ## Enhance Any Block 15 extensions that add superpowers to any WordPress block — including core blocks. Animations, scroll effects, responsive visibility, and more. ### Entrance Animations Add scroll-triggered entrance animations like fade, slide, zoom, and bounce to any block. ### Text Reveal Word-by-word and character-by-character text animations with customizable colors and timing. ### Responsive Visibility Show or hide any block based on screen size — desktop, tablet, or mobile. ### Background Patterns Add SVG background patterns like topography, dots, and waves to any block. ### Scroll Effects Parallax scrolling, scroll-driven opacity, and transform effects for immersive pages. ### Custom Styling Add custom CSS classes, box shadows, borders, and opacity controls to any block. ## Start Building Beautiful Pages Today Join thousands of WordPress creators who use DesignSetGo to build professional websites — completely free. [Download](https://wordpress.org/plugins/designsetgo/) [View on GitHub](https://github.com/jnealey88/designsetgo) Compatible with WordPress 6.7+ and any block theme. Free forever. --- # Layout Systems Advanced designs require advanced layouts Build powerful, flexible page layouts with our suite of container blocks. Each block is designed to work seamlessly with WordPress's native layout system while providing enhanced control and features. [Download Free Plugin](https://wordpress.org/plugins/designsetgo/) [View All Blocks](/blocks/) Stack · Container Section block #### Vertical stacking container for building page sections The Section block is your foundation for creating structured page layouts. Perfect for hero sections, content areas, and any vertical content organization. Sections span the full width of your page by default, with intelligent inner width constraints to keep your content readable and centered. #### Key Features - Full-width by default with constrained inner content - Vertical stacking with consistent spacing - Customizable width constraints - toggle on/off or set custom max-width - Complete styling control - padding, margins, colors, borders - Hover effects - background color and text color transitions - Nested layouts - combine with Row and Grid blocks for complex designs - Linked containers #### Best For Hero sections Content areas Feature sections Testimonial blocks Call-to-action sections #### Demo **Section Block** **Section Block** Flex · Horizontal Row (Flex) block #### Horizontal flex container for side-by-side layouts The Row block creates flexible horizontal layouts with automatic wrapping. Ideal for button groups, card layouts, feature lists, and any content that needs to flow horizontally with responsive behavior. #### Key Features - Horizontal layout with flexible wrapping - Full-width support - spans container width automatically - Mobile stack option - converts to vertical layout on small screens - Flexible alignment - left, center, right justification - Responsive gap control - consistent spacing between items - Hover effects - inherited from parent or custom settings #### Best For Button groups Feature cards Image galleries Icon lists Navigation elements Stats and metrics #### Demo Example Example Example ### Fast Lightning-fast performance ### Beautiful Stunning visual design ### Accessible Built for everyone Grid · Responsive Grid block #### Powerful CSS Grid container for complex layouts The Grid block leverages CSS Grid to create sophisticated multi-column layouts with precise control. Perfect for card layouts, galleries, and any design requiring structured grid-based organization. #### Key Features - Responsive columns - define column counts for desktop, tablet, and mobile - Auto-fit and auto-fill - intelligent column sizing - Gap control - separate row and column gap settings - Flexible alignment - both horizontal and vertical - Min/max column widths - precise control over grid behavior - Dense packing - optional auto-flow dense for optimal space usage #### Best For Card grids Product listings Image galleries Portfolio layouts Team member sections Feature showcases #### Demo ### Responsive Columns Define separate column counts for desktop, tablet, and mobile. ### Auto-Fill Mode Columns automatically fill available space as content grows. ### Gap Controls Independent row and column gap settings with preset spacing. ### Span Control Make individual items span multiple columns or rows. ### Alignment Align items to stretch, start, center, or end within cells. ### Nested Grids Place grids inside grids for complex multi-level layouts. **All layout blocks support WordPress's native block supports including spacing, colors, typography, borders, and more.** Split · Media · Content Fifty-Fifty Full-width 50/50 split with edge-to-edge media on one side and constrained content on the other. Perfect for hero sections, feature highlights, and about-style pages. Fifty · Fifty ### Media on one side, story on the other. Edge-to-edge media + constrained content for hero blocks, product showcases, and about sections. Swap sides, adjust focal point, and tune padding — all from the inspector. Stack · Pin · Scroll Sticky sections Sections that stick and stack as you scroll, creating a card-stacking reveal. Scroll the three cards below to see them pile on top of each other. Card 01 ### Sections stick as you scroll Each section pins to the top of the viewport as you scroll past. The next section slides up and stacks on top. Card 02 ### Zero setup required Drop child sections inside a Sticky Sections block. DSGo handles the pinning, layering, and scroll thresholds automatically. Card 03 ### Fully accessible Reduces motion gracefully for users with prefers-reduced-motion, and falls back to linear scroll when JS is off. Built for layouts Ready to build better WordPress sites? All layout blocks are included free with DesignSetGo. No premium upsells, no feature gating. [Download from WordPress.org](https://wordpress.org/plugins/designsetgo/) [View All Blocks](/blocks/) Compatible with WordPress 6.7+ and any block theme. Free forever. --- # Form Build Blocks # Build Any Form You Need DesignSetGo's form builder gives you a complete drag-and-drop form building system with 11 specialized field types, built-in spam protection, and email notifications — no extra plugins needed. ## The Form Builder Block The heart of the form system. Drag in the Form Builder block, add your fields, configure your settings, and you're ready to collect submissions. ### Spam Protection Built-in honeypot field catches bots without annoying your real users with CAPTCHAs. Optional Cloudflare Turnstile support too. ### Email Notifications Receive instant email alerts when forms are submitted. Customize the recipient, subject, sender name, and reply-to address. ### AJAX Submission Forms submit without page reload for a smooth, modern user experience with instant success and error feedback. ### Data Security All submissions are sanitized and validated server-side. Rate limiting prevents abuse. GDPR-compliant data handling built in. ### Fully Customizable Control labels, placeholders, required fields, success messages, button styles, field spacing, and input sizing. ### Developer Hooks Action and filter hooks let developers extend form behavior, add custom validation, and integrate with any service. ## 11 Field Types for Every Scenario From simple text inputs to specialized fields, every form element you need is included as a dedicated block. #### Text Field Single-line text input for names, titles, and short answers. Supports validation patterns and character limits. #### Email Field Email input with built-in HTML5 format validation. Ensures valid email addresses before submission. #### Textarea Field Multi-line text area for longer responses. Configurable rows and optional character counter. #### Phone Field Phone number input with formatting support. Helps users enter properly formatted phone numbers. #### Number Field Numeric input with optional min, max, and step values. Ideal for quantities, ages, or ratings. #### Date Field Native date picker for selecting dates. Clean, accessible, and consistent across devices. #### Time Field Time input for scheduling and appointments. Uses the native browser time picker. #### Select Field Dropdown select menu with customizable options. Support for placeholder text and required selection. #### Checkbox Field Single or grouped checkboxes for multi-select options, agreements, or preferences. #### URL Field URL input with format validation. Ensures users enter a properly formatted web address. #### Hidden Field Invisible field for passing tracking data, referral sources, or page information with the submission. ## Build a Form in 3 Steps From blank page to collecting submissions in minutes. No configuration headaches. ### Add the Form Builder Drop the Form Builder block into any page or post. It appears in the block inserter under the DesignSetGo collection. ### Add Your Fields Drag in any of the 11 field types. Set labels, placeholders, validation rules, and required fields right in the editor. ### Publish and Collect Hit publish and your form is live. Submissions are stored in WordPress and optionally emailed to you instantly. ## Everything You Need A complete form solution built right into the block editor. No extra plugins, no shortcodes, no hassle. ### Form Building - #### Drag and drop form building in the block editor - #### 11 specialized field types included - #### Customizable labels, placeholders, and help text - #### Flexible field widths for side-by-side layouts - #### Success and error message customization ### Security & Validation - #### Honeypot spam protection - no CAPTCHAs needed - #### Rate limiting prevents submission abuse - #### Required field validation with accessible error messages - #### Server-side sanitization of all submissions - #### Optional Cloudflare Turnstile integration ### Notifications & Data - #### Customizable email notifications on submissions - #### AJAX-powered submissions without page reload - #### Stored submissions viewable in WordPress admin - #### GDPR-compliant with automatic data cleanup options - #### Developer hooks for custom integrations ### Design & Compatibility - #### Fully responsive and mobile-friendly forms - #### Fully responsive and mobile-friendly forms - #### Works with any WordPress block theme - #### Customizable button styles, colors, and sizing - #### Respects theme global styles and spacing presets - #### Inline or below submit button positioning ## Start Collecting Submissions Download DesignSetGo and build your first form in minutes. No extra plugins, no subscriptions, no limits. [Download Free Plugin](https://wordpress.org/plugins/designsetgo/) [View All Blocks](/blocks/) Compatible with WordPress 6.7+ and any block theme. Free forever. --- # Interactive Elements Interactive Elements Bring your pages to life . DesignSetGo's interactive blocks add dynamic, engaging elements to your WordPress site. From collapsible accordions to animated counters — no JavaScript knowledge required. [Download Free Plugin](https://wordpress.org/plugins/designsetgo/) [View All Blocks](/blocks/) FAQ · Collapsible Accordion Collapsible content sections with smooth animations. Supports single or multi-open mode with chevron, plus/minus, or arrow icons. **Accordion Item** DesignSetGo includes 8 interactive blocks (Accordion, Tabs, Slider, Flip Card, Image Accordion, Counter, Countdown Timer, Scroll Marquee), 10+ visual/UI blocks (Icon, Pill, Shape Divider, Progress Bar, and more), plus layout blocks like Section, Grid, Row, and Stack. **Accordion Item** Yes! DesignSetGo is designed to work with any WordPress block theme. It respects your theme's global styles, colors, fonts, and spacing presets for a seamless, cohesive look. **Accordion Item** Absolutely. Every block, pattern, and extension is included free with the plugin — no premium upsells, no feature gating, no subscriptions. Download it from WordPress.org and use everything. **Accordion Item** Install DesignSetGo from the WordPress plugin directory, activate it, and open the block editor. You'll find all blocks in the inserter under the DesignSetGo collection, plus 50+ ready-made patterns. Tabbed content Tabs Organize content into switchable tabbed panels with pill or underline styles. Fully accessible with keyboard navigation. ### Tab ### Packed with Power DesignSetGo comes loaded with 20+ custom blocks, 15 block extensions, and 50+ pre-built patterns. Every block supports full-site editing, global styles, and works seamlessly with any block theme. - 20+ custom Gutenberg blocks - 15 block extensions for any block - 50+ ready-made patterns ### Tab ### Built for Speed Performance is a first-class concern. DesignSetGo uses lazy icon loading, conditional asset enqueuing, and zero render-blocking JavaScript. Every block is optimized for Core Web Vitals. - Lazy-loaded SVG icons — zero layout shift - Conditional asset loading — only what's on the page - No render-blocking JavaScript ### Tab ### Accessible by Default Every DesignSetGo block is built with WCAG AA compliance in mind. Proper ARIA roles, keyboard navigation, focus management, and screen reader support are built in from day one. - Full keyboard navigation on all interactive blocks - Proper ARIA roles and labels throughout - Respects prefers-reduced-motion Slider · Carousel Slider / Carousel Full-featured content carousel with autoplay, navigation arrows, pagination dots, and swipe support. *[Slider]* "DesignSetGo transformed our website. The blocks are intuitive and the designs look professional from day one." Sarah Chen Creative Director, Studio Nine "Finally, a block plugin that actually feels native to WordPress. The accordion and tabs blocks are best-in-class." Marcus Rivera Lead Developer, TechForge "I've tried dozens of block plugins. DesignSetGo is the only one where every single block just works, beautifully." Anika Patel Freelance Designer *[Slider]* "DesignSetGo transformed our website. The blocks are intuitive and the designs look professional from day one." Sarah Chen Creative Director, Studio Nine "Finally, a block plugin that actually feels native to WordPress. The accordion and tabs blocks are best-in-class." Marcus Rivera Lead Developer, TechForge "I've tried dozens of block plugins. DesignSetGo is the only one where every single block just works, beautifully." Anika Patel Freelance Designer Front · Back · Click Flip card 3D flip animation with separate front and back content. Hover over the cards below to see them in action. ### Design Hover to learn more ### Craft Your Vision Start with 50+ professionally designed patterns or build from scratch with our intuitive block system. ### Build Hover to learn more ### Assemble Fast Drag, drop, and customize. No code required. Every block works with the native WordPress editor. ### Launch Hover to learn more ### Ship with Confidence Responsive, accessible, and performant out of the box. Your site is ready for the world. Click · Reveal Modal Accessible modal dialogs with customizable triggers, auto-open rules (time, scroll, exit-intent), and gallery mode. Click below to try one. Open modal demo *[Modal]* Demo modal · click-triggered ### You're inside a modal. Accessible dialogs with focus trapping, ESC-to-close, click-outside-to-dismiss, hash-routed deep links, and auto-triggers (time on page, scroll depth, exit intent). Every setting lives in the block inspector. Close with ESC, the × button, or by clicking the dark overlay. Media · Reveal Image accordion Expandable image panels that reveal content on hover or click. Perfect for portfolios and showcases. ## Strategy Plan your digital presence ## Design Craft beautiful interfaces ## Develop Build with modern tools ## Launch Ship to the world Animated numbers Counter / Statistics Animated number counters that count up when scrolled into view. Group multiple counters with synchronized timing. **0** **0** **0** **0** ## Countdown Timer Live countdown displaying days, hours, minutes, and seconds. Customizable styling and expiry actions. 00Days00Hours00Min00SecThe countdown has ended! Scroll · Pinned Scroll slides Full-screen scroll-pinned slideshow with crossfading content. Scroll through the section below to see three slides transition without leaving the viewport. ### Pinned storytelling Scroll slides stay fixed to the viewport while content crossfades. Natural for feature walkthroughs, product reveals, or narrative pages. ### Zero JS from you Built on the Intersection Observer + IAPI — no libraries, no configuration. Just add slides, set nav headings, and DSGo handles timing + motion. ### Works everywhere Automatically falls back to linear scroll on reduced-motion and mobile. Keyboard-accessible nav. Always 60fps on modern browsers. Motion · Infinite Scroll marquee Infinite horizontal scrolling image strips. Configurable speed, direction, and pause-on-hover. Free forever · Open source Add interactivity today . All interactive blocks are included free with DesignSetGo. No premium upsells, no feature gating. [Download Free Plugin](https://wordpress.org/plugins/designsetgo/) --- # Visual & UI Blocks # The Details That Make Your Site Unforgettable Icons, cards, progress bars, animated blobs, modals, and more. Every visual element below is a live DesignSetGo block — interact with them, then imagine them on your site. ## 50+ Icons. Zero Load Time. Lightweight SVG icons that load on demand — no icon font bloat. Pair them with buttons, lists, or use them standalone. 50+ built-in icons, lazy-loaded as SVG: Example Example Example - #### Enterprise-Grade Security Bank-level encryption and security measures protect your data at every level of the platform. - #### Lightning Fast Performance Optimized for speed with lazy loading, minimal DOM overhead, and efficient rendering across all devices. - #### Developer Friendly Clean APIs, comprehensive documentation, and flexible hooks make customization and integration easy. - #### Fully Accessible WCAG AA compliant with proper ARIA labels, keyboard navigation, and screen reader support built in. ## Communicate at a Glance Pills for labels and tags. Progress bars for metrics and skills. Both animate into view on scroll. WordPress Development - 95% React & JavaScript - 88% UI/UX Design - 80% Performance Optimization - 72% ## Present Content With Polish Structured cards for pricing, features, or team profiles. Decorative dividers to separate and organize sections. [Read More](#) [Read More](#) [View Story](#) Solid --- Dashed --- Dotted --- Icon Centered --- ## Stand Out From Every Template Site Scroll-driven stacking reveals and organic animated blobs. The kind of effects that make visitors say "how did they do that?" ## Design Systems Build consistent, scalable interfaces with reusable components and design tokens. ## Component Library Pre-built, accessible components that work seamlessly together for rapid development. ## Launch & Scale Deploy with confidence and scale effortlessly with performance-optimized architecture. ## Content Inside a Blob Blobs can contain any WordPress blocks as inner content — headings, text, buttons, images, and more. ## Turn Visitors Into Customers Modals for announcements, forms, and CTAs. Interactive maps for locations and contact pages. Click the button to see the modal in action. Open Modal *[Modal]* ## This is a Modal Modals can contain any WordPress blocks — text, images, forms, buttons, and more. Click the backdrop or press Escape to close. [Take Action](#) *[Map]* ## Complete Your Design Toolkit Every visual and UI block is included free with DesignSetGo. No premium upsells, no feature gating. [Download from WordPress.org](https://wordpress.org/plugins/designsetgo/) [View All Blocks](/blocks/) Compatible with WordPress 6.7+ and any block theme. Free forever. --- # Terms of Service # Terms of Service **Effective Date**: November 11, 2025 **Last Updated**: March 23, 2026 ## 1. Agreement to Terms By downloading, installing, accessing, or using DesignSetGo (the "Plugin"), you agree to be bound by these Terms of Service ("Terms"). If you do not agree to these Terms, do not use the Plugin. **These Terms constitute a legally binding agreement** between you ("User", "you", or "your") and Justin Nealey ("we", "us", or "our"). ## 2. License Grant ### 2.1 Open Source License DesignSetGo is licensed under the **GNU General Public License v2.0 or later** (GPL-2.0+). **You are free to:** - Use the Plugin for any purpose (personal or commercial) - Study how the Plugin works and modify it - Distribute copies of the Plugin - Distribute copies of your modified versions - Access and modify the source code **License Requirements:** - Any distributed versions must also be GPL-licensed - You must provide source code or make it available - You must include original copyright notices - Changes must be documented **Full License**: See LICENSE file or visit [https://www.gnu.org/licenses/gpl-2.0.html](https://www.gnu.org/licenses/gpl-2.0.html) ### 2.2 Free of Charge The Plugin is provided free of charge. No purchase is required for any functionality. ### 2.3 Trademark License While the code is GPL-licensed, "DesignSetGo" and associated trademarks remain our property. You may not: - Use our trademarks in a way that suggests endorsement - Use our name in domain names without permission - Remove or alter trademark notices **Attribution is appreciated** but not legally required under GPL. ## 3. Permitted Uses You may use DesignSetGo to: - Create personal or commercial websites - Develop client projects - Include in theme or plugin bundles (GPL-compliant) - Modify for your specific needs - Study and learn from the code - Contribute improvements back to the project ## 4. Prohibited Uses You may NOT: - Remove or alter copyright notices - Misrepresent the origin or authorship of the Plugin - Distribute malicious or backdoored modifications - Violate the GPL license terms - Use the Plugin for illegal purposes - Claim warranty or support guarantees - Hold us liable for issues arising from use ## 5. Disclaimer of Warranties **THE PLUGIN IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT ANY WARRANTIES OF ANY KIND, EITHER EXPRESS OR IMPLIED.** **WE DISCLAIM ALL WARRANTIES INCLUDING:** - **Merchantability**: Plugin suitable for general use - **Fitness for Particular Purpose**: Plugin meets your specific needs - **Non-Infringement**: Plugin doesn't violate third-party rights - **Accuracy or Reliability**: Plugin works without errors - **Availability**: Plugin will remain available - **Security**: Plugin is free from vulnerabilities **WE DO NOT WARRANT THAT:** - The Plugin will meet your requirements - Operation will be uninterrupted or error-free - Errors or bugs will be corrected - The Plugin is compatible with your WordPress installation - The Plugin is compatible with other plugins or themes - Updates will be provided - Support will be available **USE AT YOUR OWN RISK.** ## 6. Limitation of Liability **TO THE MAXIMUM EXTENT PERMITTED BY LAW, IN NO EVENT SHALL THE AUTHORS, COPYRIGHT HOLDERS, OR CONTRIBUTORS BE LIABLE FOR ANY CLAIM, DAMAGES, OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT, OR OTHERWISE, ARISING FROM, OUT OF, OR IN CONNECTION WITH THE PLUGIN OR THE USE OR OTHER DEALINGS IN THE PLUGIN.** ### 6.1 Types of Damages Not Covered **We are NOT liable for:** - Direct damages (actual losses) - Indirect damages (consequential effects) - Incidental damages (side effects) - Special damages (unique circumstances) - Punitive damages (penalties) - Exemplary damages (examples to others) **Including but not limited to:** - **Data loss** or corruption - **Lost profits** or revenue - **Business interruption** or downtime - **Loss of business opportunities** - **Website damage** or defacement - **Security breaches** or vulnerabilities - **Compatibility issues** with other software - **Server crashes** or resource issues - **SEO or ranking impacts** - **Legal fees** or costs - **Reputational harm** - **Third-party claims** ### 6.2 Maximum Liability Cap If any liability is found despite these limitations, **our maximum aggregate liability shall not exceed $0.00 USD** (zero dollars), reflecting the free nature of the Plugin. ### 6.3 Essential Purpose These limitations apply even if: - We've been advised of the possibility of damages - A remedy fails of its essential purpose - Damages were foreseeable ## 7. Indemnification **You agree to indemnify, defend, and hold harmless** Justin Nealey, contributors, and associated parties from and against any and all claims, liabilities, damages, losses, costs, expenses, or fees (including reasonable attorneys' fees) arising from: - Your use or misuse of the Plugin - Your violation of these Terms - Your violation of any rights of third parties - Your violation of any applicable laws or regulations - Modifications you make to the Plugin - Your distribution of modified versions - Content you create using the Plugin - Your WordPress installation or configuration - Conflicts with other plugins or themes you use ## 8. Assumption of Risk **BY USING THE PLUGIN, YOU ACKNOWLEDGE AND AGREE THAT:** - You are solely responsible for testing the Plugin before use - You assume all risks associated with using the Plugin - You are responsible for maintaining backups - You are responsible for your WordPress security - You are responsible for compatibility testing - You have adequate technical knowledge or will seek professional help - You will test in a staging environment before production use ## 9. Updates and Modifications ### 9.1 Plugin Updates **We reserve the right to:** - Modify the Plugin at any time without notice - Add, remove, or change features - Discontinue the Plugin entirely - Change pricing (if we ever charge in the future) **You are NOT obligated to:** - Update to new versions - Continue using the Plugin **Note**: Older versions may not receive support or security updates. ### 9.2 Terms Updates We may modify these Terms at any time. **Notice of Changes:** - Updated "Last Updated" date - Material changes posted prominently - Continued use constitutes acceptance **Your Options:** - Accept the new terms by continuing use - Stop using the Plugin if you disagree We will not retroactively diminish your rights under GPL. ## 10. Support and Maintenance ### 10.1 No Support Obligation **Support is provided on a VOLUNTARY, BEST-EFFORT basis only.** **We do NOT guarantee:** - Response to support requests - Resolution of reported issues - Specific response timeframes - Support availability - Bug fixes or updates ### 10.2 Support Channels **Support may be available through:** - WordPress.org plugin forums (community support) - GitHub issues (if applicable) - Email support (at our discretion) **Support is provided "as is" with no warranties.** ### 10.3 End of Support We may discontinue support at any time for: - Specific versions of the Plugin - Older WordPress versions - The Plugin entirely ## 11. Compatibility and System Requirements ### 11.1 Your Responsibility **You are responsible for:** - Ensuring WordPress meets minimum requirements - Testing compatibility with your theme - Testing compatibility with other plugins - Verifying your server meets requirements - Updating your WordPress installation - Maintaining a staging environment ### 11.2 Compatibility Disclaimer **We do NOT guarantee compatibility with:** - All WordPress versions (only those we specify) - Any specific theme or page builder - Other plugins - Custom WordPress configurations - Specific hosting environments - Future WordPress versions **Conflicts may occur.** You assume responsibility for resolving them. ## 12. Backups and Data Protection ### 12.1 Backup Requirements **YOU MUST MAINTAIN CURRENT BACKUPS OF YOUR ENTIRE WORDPRESS SITE.** **We are NOT responsible for:** - Data loss of any kind - Inability to recover data - Backup failures - Restoration issues ### 12.2 Data Responsibility **You are solely responsible for:** - Your website data - Content created using the Plugin - Database integrity - Media files and assets **The Plugin modifies your database.** Test in staging first. ## 13. Third-Party Dependencies ### 13.1 Included Libraries The Plugin may include third-party code libraries, each subject to their own licenses. See documentation for details. **We are NOT responsible for:** - Third-party code vulnerabilities - Third-party library updates - Third-party compatibility issues ### 13.2 WordPress Core The Plugin requires WordPress. You must comply with WordPress's terms and licenses. ## 14. Security ### 14.1 Security Disclaimer **We make NO guarantees about Plugin security.** **We are NOT liable for:** - Security vulnerabilities - Exploits or attacks - Data breaches - Unauthorized access - Malicious use of Plugin features ### 14.2 Responsible Disclosure **To report security vulnerabilities:** - Email: justin@nealey.pro - Allow 90 days for resolution before public disclosure - Do not exploit vulnerabilities ### 14.3 Your Security Obligations **You are responsible for:** - WordPress security best practices - Keeping WordPress and plugins updated - Strong passwords and user management - Server security and firewall rules - Monitoring for suspicious activity - SSL/TLS certificate installation ## 15. Prohibited Activities **You may NOT use the Plugin to:** - Violate laws or regulations - Infringe intellectual property rights - Distribute malware or malicious code - Spam or send unsolicited communications - Collect personal information illegally - Engage in fraudulent activities - Attack or harm other systems - Reverse engineer (beyond GPL rights) ## 16. Termination ### 16.1 Your Rights You may stop using the Plugin at any time by uninstalling it. ### 16.2 Our Rights We may: - Discontinue the Plugin at any time - Refuse support to any user - Report illegal activities to authorities ### 16.3 Effect of Termination Upon termination: - These Terms survive termination - GPL license rights remain - Liability limitations remain in effect - Indemnification obligations continue ## 17. WordPress.org Compliance If distributed through WordPress.org, the Plugin complies with: - WordPress.org plugin guidelines - GPL licensing requirements - Security review requirements - Accessibility guidelines (where applicable) ## 18. Export Compliance You are responsible for compliance with export laws when using or distributing the Plugin internationally. ## 19. Governing Law and Jurisdiction ### 19.1 Governing Law These Terms are governed by the laws of **Arizona, United States**, without regard to conflict of law principles. ### 19.2 Jurisdiction **You agree to submit to the exclusive jurisdiction of courts located in Maricopa County, Arizona for any disputes.** ### 19.3 International Users If you use the Plugin outside the United States, you are responsible for compliance with local laws. ## 20. Dispute Resolution **Before filing any claim**, you must: 1. Contact us at justin@nealey.pro 2. Provide a detailed description of the issue 3. Allow 30 days for us to respond and attempt resolution ## 21. Severability If any provision of these Terms is found to be unenforceable or invalid: - That provision shall be limited or eliminated to the minimum extent necessary - The remaining provisions remain in full force and effect ## 22. Entire Agreement These Terms, together with: - The Privacy Policy - The GPL License - Any additional agreements you accept constitute the **entire agreement** between you and us regarding the Plugin, superseding any prior agreements. ## 23. No Waiver Our failure to enforce any provision of these Terms does NOT constitute a waiver of that provision or any other provision. ## 24. Assignment ### 24.1 Your Rights You may not assign or transfer these Terms or any rights hereunder without our written consent. ### 24.2 Our Rights We may assign these Terms in connection with a merger, acquisition, or sale of assets. You will be notified of any such transfer. ## 25. Force Majeure We are not liable for any failure or delay in performance due to circumstances beyond our reasonable control, including: - Natural disasters - War or terrorism - Internet or hosting failures - Government actions - Pandemics ## 26. Survival The following sections survive termination of these Terms: - License Grant (GPL rights) - Disclaimer of Warranties - Limitation of Liability - Indemnification - Governing Law - Dispute Resolution ## 27. Contact and Legal Notices **For questions about these Terms:** Email: justin@nealey.pro Response Time: No guaranteed timeframe **For DMCA takedown notices:** Email: justin@nealey.pro ## 28. Acknowledgment and Acceptance **BY INSTALLING, ACCESSING, OR USING THE PLUGIN, YOU ACKNOWLEDGE THAT:** - You have read these Terms - You understand these Terms - You agree to be bound by these Terms - You have the authority to accept these Terms - You understand the Plugin is provided "AS IS" - You understand we have NO LIABILITY for damages - You understand there are NO WARRANTIES - You understand support is NOT guaranteed - You will maintain backups - You assume all risks **If you do not agree, uninstall the Plugin immediately.** --- ## Quick Summary (Plain Language – Not Legally Binding) **What This Means:** - **Free & Open Source**: Use it however you want (GPL license) - **No Warranties**: Works "as is" – we don't promise anything - **No Liability**: We're not responsible if something goes wrong - **No Guaranteed Support**: Help is volunteer-based - **Your Responsibility**: Backup your site, test before using - **You're Protected Under GPL**: Can modify and redistribute freely **Bottom Line**: This is free software. Use at your own risk. We're not liable for anything. Always backup your site. --- # Nealey ## Hey, I'm Nealey I build a lot of sites in the WordPress block editor. Over time I kept running into layout limits that slowed me down. I did not want to switch to a heavy builder that adsafdsafsdadded bloat or locked me into a system. I wanted something fast, flexible, and native to WordPress.dfasdfsadfsdaf So I built DesignSetGo. It started as a small set of blocks to help me design cleaner layouts without fighting the editor. I wanted more control without losing the speed and freedom of core WordPress. The plugin grew from there. It stays lightweight, follows WordPress standards, and stays free because I want other builders to get the same freedom I needed. I work on products that help people move faster, remove friction, and build with confidence. DesignSetGo is one more step in that direction. [Download the Plugin](https://wordpress.org/plugins/designsetgo/) --- # Contribute # Contribute to DesignSetGo DesignSetGo is a free, open-source WordPress plugin built by the community, for the community. There are many ways to contribute — whether you write code, report bugs, translate, or spread the word. [View on GitHub](https://github.com/jnealey88/designsetgo/) [Read the Docs](https://github.com/jnealey88/designsetgo/wiki) Licensed under GPL v2 or later. Contributions welcome from all experience levels. Project at a glance **0** **0** **0** **0** ## How You Can Help Every contribution makes DesignSetGo better for everyone. Here are the ways you can get involved. ### Write Code Submit pull requests for bug fixes, new features, or performance improvements. We follow WordPress coding standards and review every contribution. ### Report Bugs Found something that doesn't work right? Open a GitHub issue with steps to reproduce. Clear bug reports help us fix problems faster. ### Translate Help make DesignSetGo accessible to more people by translating it into your language. We currently support 9 languages and want to add more. ### Improve Docs Good documentation helps everyone. Contribute to our wiki, write tutorials, or suggest improvements to existing documentation. ### Leave a Review Reviews on WordPress.org help other users discover DesignSetGo. Share your experience and help grow the community. ### Spread the Word Tell other WordPress users about DesignSetGo. Write blog posts, share on social media, or mention us at meetups. ## Getting Started with Development Set up your local development environment and start contributing code in minutes. **Accordion Item** Fork the repository on GitHub, then clone your fork locally. This gives you a complete copy of the codebase to work with. ``` git clone https://github.com/YOUR-USERNAME/designsetgo.git cd designsetgo ``` **Accordion Item** Install Node.js dependencies and set up the build tools. Requires Node.js 18+ and npm. ``` npm install ``` **Accordion Item** Run the development server with hot reloading. Changes to JS, SCSS, and PHP files will be reflected instantly. ``` npm start # Development mode with hot reload npm run wp-env:start # Local WordPress environment ``` **Accordion Item** Check code quality before submitting your pull request. All linters and tests must pass. ``` npm run lint:js # ESLint for JavaScript npm run lint:css # Stylelint for CSS/SCSS npm run lint:php # PHPCS for PHP npm run build # Production build ``` **Accordion Item** Push your changes to your fork and open a pull request against the main branch. Include a clear description of what you changed and why. We review every PR and provide constructive feedback. ## Contribution Guidelines To maintain code quality and consistency, please follow these guidelines when contributing. ### Security First Never introduce vulnerabilities. Follow WordPress security best practices for sanitization, escaping, nonce verification, and capability checks. ### Performance Matters Keep blocks lightweight. No jQuery dependencies. Target under 15KB JS and 10KB CSS per block. Test bundle sizes. ### Accessibility Required All blocks must be WCAG compliant with proper ARIA attributes, keyboard navigation, and screen reader support. ### Follow Standards Use WordPress coding standards for PHP, JavaScript, and CSS. Run linters before submitting. Include inline documentation. ### Write Tests Add unit tests for new functionality. Maintain or improve test coverage. Run the full test suite before submitting. ### Be Respectful We welcome contributors of all experience levels. Be patient, constructive, and kind in code reviews and discussions. ## Join the Community Start contributing to DesignSetGo today. Every contribution, big or small, makes a difference. [View on GitHub](https://github.com/jnealey88/designsetgo/) [Download Plugin](wordpress.org/plugins/designsetgo/) Licensed under GPL v2 or later. Compatible with WordPress 6.7+ and any block theme. --- # Blog --- # SAAS # Build Better Products Ship Faster The all-in-one platform that helps teams collaborate, analyze, and deliver exceptional software experiences. [Start Free Trial](#trial) [Watch Demo](#demo) ![Dashboard preview](https://images.unsplash.com/photo-1551288049-bebda4e38f71?w=1200&h=700&fit=crop) TRUSTED BY INNOVATIVE TEAMS WORLDWIDE STRIPE NOTION FIGMA VERCEL LINEAR Features ## Everything You Need to Scale Powerful tools designed to help your team move faster and build better products. ### Real-time Analytics Hover to learn more ### Real-time Analytics Track every metric that matters with live dashboards. Get instant insights into user behavior, conversion rates, and performance metrics. Learn more → ### Team Collaboration Hover to learn more ### Team Collaboration Work together seamlessly with real-time editing, comments, and shared workspaces. Keep everyone aligned and moving fast. Learn more → ### Automation Hover to learn more ### Automation Automate repetitive tasks and workflows. Set up triggers, actions, and rules that work while you sleep. Learn more → Why Choose Us ## Built for Teams Who Ship We understand the challenges of modern product development. That is why we built a platform that gets out of your way and lets you focus on what matters. **0** **0** **0** **0** ![Analytics dashboard](https://images.unsplash.com/photo-1460925895917-afdab827c52f?w=600&h=500&fit=crop) Product Showcase ## See It in Action ### Dashboard Powerful analytics at your fingertips ### Reports Generate insights in seconds ### Team Hub Collaborate in real-time ### Integrations Connect with 100+ tools Pricing ## Simple, Transparent Pricing ### Starter $ /month --- Up to 3 team members Basic analytics 1GB storage Community support [Get Started Free](#starter) ### Pro $ 29 /month --- Unlimited team members Advanced analytics 100GB storage Priority support API access [Start Free Trial](#pro) ### Enterprise Custom --- Everything in Pro Custom integrations Unlimited storage Dedicated support SLA guarantee [Contact Sales](#enterprise) ## Ready to Transform Your Workflow? Join thousands of teams already using our platform to ship better products faster. Start your free trial today. [Start Free Trial](#trial) [Talk to Sales](#sales) Exceptional Properties # Discover Your Dream Residence Curating the world's most prestigious properties for discerning buyers who demand excellence. [View Properties](#properties) [Schedule Consultation](#contact) About Us ## A Legacy of Excellence in Luxury Real Estate For over two decades, we have been the trusted advisors for clients seeking extraordinary properties. Our deep expertise in luxury markets, combined with unparalleled discretion and personalized service, sets us apart. We understand that finding the perfect home is about more than square footage and amenities. It is about discovering a residence that reflects your lifestyle, aspirations, and vision for the future. **0** **0** ![Luxury home interior](https://images.unsplash.com/photo-1613490493576-7fde63acd811?w=600&h=700&fit=crop) Featured Listings ## Exceptional Properties Await Beverly Hills ### Modern Estate $12,500,000 | 6 Bed | 8 Bath Malibu ### Oceanfront Villa $28,000,000 | 5 Bed | 7 Bath Bel Air ### Contemporary Mansion $45,000,000 | 8 Bed | 12 Bath Hollywood Hills ### Architectural Masterpiece $18,900,000 | 5 Bed | 6 Bath [View All Properties](#all-properties) Our Services ## White-Glove Service at Every Step ### Buyer Representation Hover to learn more ### Buyer Representation Our expert agents guide you through every step of finding and acquiring your perfect property. From initial search to closing, we negotiate on your behalf to secure the best terms. Learn more → ### Property Valuation Hover to learn more ### Property Valuation Receive accurate, data-driven valuations backed by our deep knowledge of luxury markets. We analyze comparable sales, market trends, and unique property features. Learn more → ### Global Reach Hover to learn more ### Global Reach Access exclusive listings worldwide through our international network. From New York penthouses to Mediterranean villas, we connect you with extraordinary properties globally. Learn more → Testimonials ## What Our Clients Say *[Slider]* "The team made finding our dream home an absolute pleasure. Their knowledge of the luxury market is unmatched, and they found us a property that exceeded all our expectations." ![Client photo](https://images.unsplash.com/photo-1507003211169-0a1dd7228f2d?w=80&h=80&fit=crop) Michael Richardson Beverly Hills Buyer "Selling our estate was a seamless experience. They positioned our property perfectly in the market and attracted qualified buyers from around the world. Truly exceptional service." ![Client photo](https://images.unsplash.com/photo-1494790108377-be9c29b29330?w=80&h=80&fit=crop) Sarah Chen Bel Air Seller "As international buyers, we relied heavily on their expertise. They navigated complex legal requirements and found us a stunning oceanfront property that serves as our perfect retreat." ![Client photo](https://images.unsplash.com/photo-1472099645785-5658abf4ff4e?w=80&h=80&fit=crop) David Laurent International Buyer Contact Us ## Begin Your Journey to Extraordinary Living Whether you are searching for your dream home or considering selling your property, our team is ready to provide the exceptional service you deserve. +1 (310) 555-0100 inquiries@luxuryestates.com 9876 Wilshire Blvd, Beverly Hills, CA 90210 ### Schedule a Consultation *[Form: Contact Form]* Transform Your Body, Transform Your Life # Unleash Your Full Potential State-of-the-art equipment, expert trainers, and a supportive community to help you achieve your fitness goals. [Start Free Trial](#trial) [View Classes](#classes) **0** **0** **0** **0** Our Classes ## Train Your Way From high-intensity workouts to mindful yoga, we offer classes for every fitness level and goal. ### HIIT Training High-intensity interval training to maximize calorie burn and boost metabolism. 45 min • All Levels ### Strength Training Build muscle and increase strength with our expert-led weight training sessions. 60 min • Intermediate ### Yoga & Pilates Improve flexibility, balance, and mental clarity with mindful movement practices. 60 min • All Levels ### Group Cycling High-energy indoor cycling with motivating music and inspiring instructors. 45 min • All Levels [View Full Schedule](#schedule) ![Personal training session](https://images.unsplash.com/photo-1571019614242-c5c5dee9f50b?w=600&h=500&fit=crop) Personal Training ## One-on-One Coaching Get personalized attention and a customized workout plan designed specifically for your goals, fitness level, and schedule. Custom workout plans Nutrition guidance Progress tracking Flexible scheduling [Book a Session](#book) Membership Plans ## Choose Your Plan ### Basic Perfect for getting started $ 29 /month --- Gym access (6am-10pm) Basic equipment Locker room access Free WiFi [Get Started](#basic) ### Premium Everything you need to succeed $ 59 /month --- 24/7 gym access All equipment & classes 1 PT session/month Sauna & spa access Guest passes (2/month) [Get Started](#premium) ### Elite The ultimate fitness experience $ 99 /month --- Everything in Premium 4 PT sessions/month Nutrition coaching Recovery treatments Priority booking [Get Started](#elite) Expert Trainers ## Meet Our Team ![Trainer Alex](https://images.unsplash.com/photo-1567013127542-490d757e51fc?w=300&h=350&fit=crop) ### Alex Rodriguez Head Trainer ![Trainer Maya](https://images.unsplash.com/photo-1594381898411-846e7d193883?w=300&h=350&fit=crop) ### Maya Johnson Yoga & Pilates ![Trainer Chris](https://images.unsplash.com/photo-1583454110551-21f2fa2afe61?w=300&h=350&fit=crop) ### Chris Martinez Strength Coach ![Trainer Sarah](https://images.unsplash.com/photo-1571019613454-1cb2f99b2d8b?w=300&h=350&fit=crop) ### Sarah Kim Cycling & HIIT ## Ready to Start Your Transformation? Join today and get your first week free. No commitment, no risk. Just results. [Claim Free Week](#claim) Making a Difference Since 2010 # Together We Can Change Lives Join our mission to provide hope, resources, and opportunities to communities in need around the world. [Donate Now](#donate) [Get Involved](#volunteer) **0** **0** **0** **0** Our Mission ## Empowering Communities, One Life at a Time We believe everyone deserves access to clean water, education, healthcare, and economic opportunity. Through sustainable programs and community partnerships, we work to break the cycle of poverty. Our approach focuses on long-term solutions that empower communities to thrive independently. We invest in local leaders, provide training and resources, and measure our impact to ensure every dollar makes a difference. [Learn About Our Work](#about) ![Children receiving education](https://images.unsplash.com/photo-1488521787991-ed7bbaae773c?w=600&h=500&fit=crop) Our Focus Areas ## Where Your Support Goes ### Education Building schools and providing scholarships to give children the education they deserve. ### Clean Water Installing wells and water systems to provide safe drinking water to communities. ### Healthcare Funding medical clinics and providing essential healthcare services to underserved areas. ### Economic Empowerment Microloans and vocational training to help families build sustainable livelihoods. Current Campaign ## Help Us Reach Our Goal We are building 10 new schools in rural communities. Every donation brings us closer to making education accessible to 5,000 more children. 75% [Donate $25](#donate-25) [Donate $50](#donate-50) [Donate $100](#donate-100) [Custom Amount](#donate-custom) Success Stories ## Real Impact, Real Stories *[Slider]* ![Maria with her family](https://images.unsplash.com/photo-1509099836639-18ba1795216d?w=500&h=300&fit=crop) ### Maria's Journey to Self-Sufficiency "Thanks to the microloan program, I was able to start my own tailoring business. Now I can provide for my children and send them to school. This organization gave me hope when I had none." — Maria, Guatemala ![Village with clean water](https://images.unsplash.com/photo-1497486751825-1233686d5d80?w=500&h=300&fit=crop) ### Clean Water for Kibera Village "Before the well was built, we walked 3 miles every day for water. Now our children are healthier and can focus on their education instead of carrying water." — Village Elder, Kenya ![Students in classroom](https://images.unsplash.com/photo-1503676260728-1c00da094a0b?w=500&h=300&fit=crop) ### First in Her Family to Graduate "The scholarship changed everything. I became the first person in my family to finish high school. Now I am studying to become a doctor so I can help my community." — Amara, Nigeria Get Involved ## Ways to Make a Difference There are many ways to support our mission beyond financial donations. Your time, skills, and voice can make a tremendous impact. **Accordion Item** Join our volunteer network and make a hands-on difference. We offer both local and international volunteer opportunities, from community events to field missions. **Accordion Item** Monthly giving provides sustainable support that allows us to plan long-term projects. Even $10/month can provide school supplies for a child for an entire year. **Accordion Item** Celebrate your birthday, run a marathon, or host an event to raise funds for our cause. We provide all the tools and support you need to succeed. **Accordion Item** Partner with us to make a larger impact. We offer sponsorship opportunities, employee engagement programs, and cause-related marketing partnerships. ### Sign Up to Volunteer *[Form: Contact Form]* ## Every Gift Creates Ripples of Change Your donation today will transform lives for generations to come. Together, we can build a world where everyone has the opportunity to thrive. [Donate Now](#donate) Est. 2010 - Farm to Table Dining # Where Every Meal Becomes a Memory Experience the finest seasonal ingredients crafted with passion and served with warmth in the heart of downtown. [Reserve a Table](#reservations) [View Menu](#menu) ![Chef preparing food](https://images.unsplash.com/photo-1414235077428-338989a2e8c0?w=600&h=500&fit=crop) Our Story ## A Passion for Authentic Flavors Founded by Chef Maria Santos, our restaurant celebrates the rich culinary traditions of the Mediterranean with a modern twist. Every dish tells a story, crafted with locally-sourced ingredients and time-honored techniques passed down through generations. We believe that great food brings people together, creating moments that last a lifetime. --- 15+ Years of Excellence 50k+ Happy Guests 4.9 Star Rating Chef Favorites ## Signature Dishes Our most beloved creations, made with the freshest seasonal ingredients. ![Grilled Salmon](https://images.unsplash.com/photo-1546069901-ba9599a7e63c?w=400&h=300&fit=crop) ### Herb-Crusted Salmon $34 Wild-caught salmon with lemon herb crust, served with seasonal vegetables and saffron risotto. ![Beef Tenderloin](https://images.unsplash.com/photo-1467003909585-2f8a72700288?w=400&h=300&fit=crop) ### Prime Beef Tenderloin $48 Aged tenderloin with red wine reduction, truffle mashed potatoes, and grilled asparagus. ![Lobster Risotto](https://images.unsplash.com/photo-1473093226795-af9932fe5856?w=400&h=300&fit=crop) ### Lobster Risotto $42 Maine lobster tail atop creamy Arborio rice with saffron, white wine, and fresh herbs. [View Full Menu](#) The Experience ## Our Atmosphere ![Restaurant interior 1](https://images.unsplash.com/photo-1559339352-11d035aa65de?w=300&h=300&fit=crop) ![Restaurant interior 2](https://images.unsplash.com/photo-1550966871-3ed3cdb5ed0c?w=300&h=300&fit=crop) ![Restaurant interior 3](https://images.unsplash.com/photo-1537047902294-62a40c20a6ae?w=300&h=300&fit=crop) ![Restaurant interior 4](https://images.unsplash.com/photo-1424847651672-bf20a4b0982b?w=300&h=300&fit=crop) Reviews ## What Our Guests Say ★★★★★ "An unforgettable dining experience! The lobster risotto was pure perfection. Will definitely be back." - Michael R., via Google ★★★★★ "We celebrated our anniversary here and it was magical. The service was impeccable and the food was outstanding." - Sarah T., via Yelp ★★★★★ "Best restaurant in the city, hands down. The chef truly understands how to bring out the best in each ingredient." - James L., via TripAdvisor Visit Us ## Location & Hours Address 456 Culinary Lane Downtown District, City 12345 Hours Tue - Thu: 5:00 PM - 10:00 PM Fri - Sat: 5:00 PM - 11:00 PM Sun: 4:00 PM - 9:00 PM Monday: Closed Reservations (555) 987-6543 [Make a Reservation](#) *[Map]* ## Ready for an Unforgettable Evening? Reserve your table today and let us create a memorable dining experience for you and your guests. [Book Your Table Now](#) --- # Contact *[Form: Contact Form]* *[Slider]* ## Slide 1: Beautiful Slider Add any WordPress blocks inside slides. Click to edit or add background images. ## Slide 2: Fully Customizable Configure transitions, navigation, auto-play, and more in the settings panel. ## Slide 3: Get Started Replace these slides with your own content and images. Swipe, click arrows, or use keyboard to navigate. --- # DesignSetGo Apps A new sibling product · designsetgo.dev Vibe-code apps that know your WordPress site. AI-built apps, from a single-block calculator to a full multi-page web app, that read your posts, pages, and users. Embed in any post. Run sandboxed so a broken app can’t break your site. [Visit designsetgo.dev](https://designsetgo.dev/) [How it works](https://designsetgo.dev/connect/) Sandboxed and connected. Either half alone is a feature. The combination is a product. Safe ### If it breaks, your site is fine. Sandboxed iframe with a CSP allowlist and a permission manifest. Browser-enforced isolation, not policy-enforced. Apps can’t take down your site or exfiltrate data. Connected ### Reads your posts, pages, and users. Apps aren’t islands. A typed bridge gives them permissioned access to your WordPress data and the current user — with explicit consent at install time. Native ### Lives where WordPress lives. Embed as a Gutenberg block inside any post, render at /apps/{slug}, or appear in wp-admin. Same login, same domain, same hosting. No CORS dance. Two ways to build. One place to run. In your browser ### Vibe-code in wp-admin. Describe the tool. The AI builds it. Or drop a saved Claude artifact HTML file and it’s live in seconds — reading your real data. From your AI client ### Build from Claude or Cursor. Connect your site via the WordPress MCP Adapter. Build and install apps without ever opening wp-admin. `npx designsetgo apps init` for the CLI path. Get the full pitch · product brief · demos The full story is at designsetgo.dev . Full product brief, demos, the bridge API spec, and signup for early access. **[Visit designsetgo.dev →](https://designsetgo.dev/)** | **[How it works](https://designsetgo.dev/connect/)** --- ## Posts # Welcome to DesignSetGo: Modern Block Design for WordPress ## The Future of WordPress Block Design is Here Welcome to DesignSetGo! We're excited to introduce you to a comprehensive collection of 43 custom Gutenberg blocks and 11 powerful extensions designed to transform how you build WordPress websites. ### What is DesignSetGo? DesignSetGo is a free WordPress plugin that extends the native Gutenberg block editor with professionally crafted blocks for modern web design. Unlike page builders that add bloat and lock you into proprietary systems, DesignSetGo enhances WordPress' native capabilities while maintaining full compatibility with the block editor. ### Why DesignSetGo? **Native WordPress Integration** - Built on WordPress Block Supports API, ensuring seamless integration with themes and future WordPress updates. **Performance First** - Lightweight and optimized code that doesn't slow down your site. No jQuery dependencies, modern vanilla JavaScript only. **Full Site Editing Ready** - Fully compatible with WordPress Full Site Editing (FSE) and block themes like Twenty Twenty-Five. **Accessibility Built-In** - WCAG 2.1 Level AA compliant components ensure your sites are accessible to all users. ### What's Included? **Container Blocks:** - Stack - Vertical layouts with customizable spacing - Flex - Flexible horizontal/vertical arrangements - Grid - Responsive grid systems - Section - Full-width content sections **Interactive Components:** - Accordion - Collapsible content panels - Tabs - Organized tabbed interfaces - Modal - Accessible popups and overlays - Counter - Animated number counters **Design Elements:** - Icon Library - 1000+ icons from multiple libraries - Progress Bar - Visual progress indicators - Divider - Stylish section separators - Pill - Tag and badge components **Extensions:** - Animations - Scroll-triggered animations - Custom Classes - Add utility classes - Visibility Controls - Show/hide based on device - Click-to-Action - Make any block clickable ### Getting Started Installation is simple: 1. Download from WordPress.org or install directly from your dashboard 2. Activate the plugin 3. Start using blocks immediately - no configuration required All blocks appear in the block inserter under the "DesignSetGo" collection, making them easy to find and use. ### Built on Best Practices DesignSetGo follows WordPress coding standards and block development best practices: - **Block Supports API** - Uses WordPress native controls instead of custom implementations - **Theme.json Integration** - Respects your theme's color palettes, spacing, and typography settings - **Semantic HTML** - Proper markup for SEO and accessibility - **No Vendor Lock-in** - Deactivate the plugin anytime; your content remains intact ### Open Source and Community Driven DesignSetGo is completely free and open source. We believe in giving back to the WordPress community that has given us so much. The plugin is actively maintained and regularly updated with new features and improvements. Join our community: - GitHub: Report issues and contribute code - WordPress.org Support: Get help and share feedback - Stay tuned: Follow this blog for tutorials, tips, and updates ### What's Next? In upcoming posts, we'll dive deeper into: - Step-by-step tutorials for building layouts - Advanced customization techniques - Block development insights and best practices - Real-world use cases and design patterns **Ready to revolutionize your WordPress workflow?** [Download DesignSetGo](https://wordpress.org/plugins/designsetgo/) today and start building beautiful, performant websites with modern block design. Welcome to the DesignSetGo community! --- # Getting Started with DesignSetGo: Build Your First Custom Layout ## Build Your First Custom Layout in Minutes Ready to start building with DesignSetGo? This hands-on tutorial will walk you through creating your first custom layout using our container blocks. By the end, you'll have a professional hero section with features grid—no coding required. ### What You'll Build We'll create a modern landing page hero section featuring: - A full-width background section with overlay - Centered headline and description - Call-to-action buttons - A 3-column features grid with icons ### Prerequisites Before starting, make sure you have: - WordPress 6.4 or higher installed - DesignSetGo plugin activated - A page or post open in the block editor ### Step 1: Create the Hero Section **Insert a Section Block** 1. Click the block inserter (+) in the top toolbar 2. Search for "Section" and select the DesignSetGo Section block 3. The block will insert with full-width enabled by default **Add Background and Styling** 1. With the Section selected, open the Settings sidebar 2. Under "Color" → "Background", choose your brand color 3. Set minimum height to 60vh under "Dimensions" 4. Add padding: 80px top and bottom under "Spacing" ### Step 2: Add Content with Stack Block **Insert a Stack Inside the Section** 1. Click inside the Section block 2. Insert a "Stack" block (vertical layout container) 3. Set alignment to "Center" in the block toolbar 4. Add 32px gap between items in the sidebar **Add Your Content** 1. Inside the Stack, add a Heading block with your main headline 2. Style it: 48px font size, white color, bold weight 3. Add a Paragraph below with your description 4. Style it: 18px font size, white color ### Step 3: Create Button Group **Add Buttons with Flex Block** 1. Insert a "Flex" block inside the Stack (below the paragraph) 2. Set justify to "Center" and gap to 16px 3. Insert two Button blocks inside the Flex 4. Customize button text and colors using Block Supports ### Step 4: Build the Features Grid **Insert Grid Block** 1. Below your hero Section, add a new "Grid" block 2. Set columns to 3 in the sidebar 3. Add 32px gap between items 4. Add padding: 80px top and bottom **Add Feature Cards** For each of the 3 columns: 1. Insert a "Stack" block with 16px gap and center alignment 2. Add an "Icon" block at the top - choose from 1000+ icons 3. Style icon: 48px size, brand color 4. Add a Heading (H3) for the feature title 5. Add a Paragraph for the feature description ### Pro Tips **Use Block Supports** - Instead of custom controls, use WordPress native color, spacing, and typography controls in the Settings sidebar. Your layout will automatically match your theme's design system. **Responsive by Default** - Grid blocks automatically stack on mobile devices. Test your layout using the responsive preview in the editor toolbar. **Save as Pattern** - Once you're happy with your layout, save it as a reusable pattern: Options menu (⋮) → "Create pattern". Use it across multiple pages! **Constrain Width** - For content sections, enable "Constrain Width" in the Section or Stack block to respect your theme's content width. ### Next Steps Now that you've built your first layout, try: - **Adding animations** - Use the Animation extension to fade-in elements on scroll - **Interactive components** - Replace the grid with Tabs or Accordion blocks for dynamic content - **Custom icons** - Upload your own SVG icons using the Icon block - **Clickable containers** - Make entire feature cards clickable with the Click-to-Action extension ### Common Issues **Block not found?** - Make sure DesignSetGo is activated and refresh the editor. **Styles not applying?** - Clear your cache and ensure your theme supports block editor features. **Layout breaking on mobile?** - Check that you haven't set fixed widths. Use "Constrain Width" instead of custom width values. ### Resources - [Download DesignSetGo](https://wordpress.org/plugins/designsetgo/) - [View on GitHub](https://github.com/jnealey88/designsetgo) - Block documentation (coming soon to the wiki) **What will you build next?** Share your creations in the WordPress.org support forums! --- # Block Development Best Practices: Lessons from Building 43 Custom Blocks ## Lessons Learned from Building 43 WordPress Blocks After developing 43 custom Gutenberg blocks and 11 extensions for DesignSetGo, I've learned valuable lessons about WordPress block development. Here are the best practices that will save you time, reduce bugs, and create better user experiences. ### 1. Always Use Block Supports Over Custom Controls **The Mistake:** Building custom color pickers, spacing controls, and typography panels for every block. **The Better Way:** WordPress Block Supports API provides built-in controls that: - Integrate with theme.json automatically - Reduce code by up to 70% - Ensure consistency across the editor - Stay updated with WordPress core **Example:** ``` // block.json { "supports": { "color": { "text": true, "background": true }, "spacing": { "padding": true, "margin": true }, "typography": { "fontSize": true, "lineHeight": true } } } ``` **Result:** WordPress automatically adds all necessary controls to your block—no custom JavaScript required. ### 2. Future-Proof Your Components **The Problem:** WordPress is evolving rapidly. Components from 6.3 may be deprecated in 6.5. **The Solution:** Add future-compatibility props to all form components: ``` ``` These props ensure your blocks won't break when WordPress updates default styling. ### 3. Respect the Rendering Pipeline **Critical Pattern:** Different code runs in the editor vs. frontend. **In edit.js:** - Use React hooks (useState, useEffect) - Access WordPress data stores - Show placeholder UI for dynamic content **In save.js:** - Pure HTML output only—no hooks, no interactivity - Must be serializable to database - Use data attributes for frontend JavaScript **For frontend interactivity:** - Create separate view.js with vanilla JavaScript - Use data attributes to pass configuration - Attach event listeners after DOM loads ### 4. Test Responsive Behavior Early **Common Issue:** Layouts look perfect at 1920px but break on mobile. **Testing Matrix:** - 375px - Mobile (iPhone SE) - 768px - Tablet breakpoint - 1200px - Desktop - 1920px - Large desktop **Pro Tip:** Use the responsive preview in the block editor toolbar. Test every new block at all breakpoints before committing. ### 5. Avoid Specificity Wars in CSS **Bad Practice:** ``` .wp-block-designsetgo-stack.custom-class { display: flex; /* Specificity: 0,2,0 */ } ``` **Best Practice:** Use :where() to reduce specificity: ``` :where(.wp-block-designsetgo-stack) { display: flex; /* Specificity: 0,0,1 */ } ``` This makes your blocks easier to customize and prevents conflicts with theme styles. ### 6. Scope JavaScript to Your Blocks Only **Dangerous:** ``` // Affects ALL accordions on page! document.querySelectorAll('.accordion').forEach(...) ``` **Safe:** ``` // Only affects DesignSetGo accordions document.querySelectorAll('[data-dsgo-accordion]').forEach(...) ``` Always use data attributes with your plugin prefix to avoid conflicts. ### 7. Plan for Deprecations from Day One **Reality Check:** You WILL change your block structure. Prepare for it. **What triggers a deprecation:** - Changing attribute names or types - Modifying saved HTML structure - Removing attributes **Solution:** Create deprecated.js from the start: ``` const v1 = { attributes: { /* old schema */ }, save: ({ attributes }) => { /* old output */ }, migrate: (attrs) => ({ /* transform to new */ }), }; export default [v1]; ``` This ensures existing content doesn't break when you update your block. ### 8. Leverage InnerBlocks for Composability **Design Principle:** Container blocks (Stack, Flex, Grid) should use InnerBlocks to accept any content. **Critical Pattern:** Always use useInnerBlocksProps(): ``` // edit.js const blockProps = useBlockProps(); const innerBlocksProps = useInnerBlocksProps(blockProps, { allowedBlocks: ['core/heading', 'core/paragraph'], template: [['core/paragraph', {}]], }); return
; ``` NEVER render InnerBlocks as a component—it breaks block validation. ### 9. Performance Matters: Minimize Bundle Size **Impact:** DesignSetGo loads 43 blocks but keeps total bundle under 300KB (gzipped ~80KB). **Strategies:** - Share utilities across blocks (one icon library, not 43 copies) - Use WordPress components instead of external libraries - Lazy-load heavy features (icon picker opens on-demand) - Tree-shake unused code with proper imports ### 10. Document with Examples, Not Just Code **What Developers Need:** - Visual examples showing what the block creates - Common use cases and patterns - Troubleshooting for known issues - Migration guides for breaking changes **Pro Tip:** Add an "example" property to block.json: ``` { "example": { "attributes": { "content": "Preview content here" } } } ``` This shows a preview in the block inserter, helping users understand your block before inserting it. ### Bonus: The Pre-Commit Checklist Before every commit, verify: 1. npm run build succeeds 2. No console errors in editor OR frontend 3. Changed blocks + related blocks tested 4. Responsive preview (375/768/1200px) 5. No unexpected file changes in build/ ### Conclusion Building 43 blocks taught me that the best code is often the code you don't write. Leverage WordPress core features, follow established patterns, and always prioritize the user experience over clever implementations. These practices have saved hundreds of hours of debugging and refactoring in DesignSetGo. Apply them to your own block development, and you'll create more maintainable, performant, and user-friendly blocks. **Want to see these principles in action?** Check out the [DesignSetGo source code on GitHub](https://github.com/jnealey88/designsetgo) to see how they're implemented across 43 real-world blocks. --- # Custom CSS Filter Hooks in DesignSetGo 1.1.1 ## Take Control of Your Block Styles We're excited to announce a powerful new feature in DesignSetGo 1.1.1: Custom CSS filter hooks! This update gives developers unprecedented control over how custom CSS is generated and output for blocks. ### What's New? DesignSetGo 1.1.1 introduces two new WordPress filter hooks that let you modify custom CSS output: - `designsetgo/custom_css/attributes` - Filter and modify CSS attributes before processing - `designsetgo/custom_css/output` - Filter the final generated CSS before it's rendered ### Why Use Filter Hooks? These hooks allow you to: - Add vendor prefixes for better browser compatibility - Convert color formats - Inject theme-specific variables - Add media queries or pseudo-classes - Integrate with CSS-in-JS solutions - Implement custom optimization strategies ### Hook 1: Filter CSS Attributes **Hook Name:** `designsetgo/custom_css/attributes` **Use Case:** Modify CSS property-value pairs before they're converted to CSS strings. ### Hook 2: Filter Final CSS Output **Hook Name:** `designsetgo/custom_css/output` **Use Case:** Modify the complete CSS string before it's added to the page. ### Example Usage ``` add_filter('designsetgo/custom_css/output', function($css, $block_id, $attributes) { // Wrap all custom CSS in a desktop-only media query if (!empty($css)) { $css = "@media (min-width: 768px) {\n" . $css . "\n}"; } return $css; }, 10, 3); ``` ### Get Started Today Update to DesignSetGo 1.1.1 to start using custom CSS filter hooks: 1. Go to Plugins → Installed Plugins 2. Update DesignSetGo to 1.1.1 or higher 3. Add your filter functions to your theme's functions.php 4. Test thoroughly in a staging environment **Learn more:** [View on GitHub](https://github.com/jnealey88/designsetgo) | [Support Forums](https://wordpress.org/support/plugin/designsetgo/) What will you build with custom CSS filter hooks? Share your creative implementations! --- # DesignSetGo 1.4: AI Integration, Draft Mode, and More **Version 1.4 brings powerful new content management tools, AI language model support, and improved developer experience to DesignSetGo.** We're excited to announce the release of DesignSetGo 1.4.0 and 1.4.1, packed with features that make content management easier and prepare your WordPress site for the AI era. ## What's New in 1.4 ### llms.txt Support for AI Language Models DesignSetGo now implements the [llms.txt standard](https://llmstxt.org/), helping AI language models like ChatGPT, Claude, and others better understand your site's content. This emerging standard provides a structured way for AI tools to discover and comprehend your website. https://twitter.com/Justinnealey/status/2017756412341072169?s=20 **Features include:** - Automatic llms.txt generation at your site root - Admin settings to customize AI-visible content - Per-page exclusion controls for sensitive content - Conflict detection with existing llms.txt files - Admin UI to resolve conflicts by renaming existing files ### Draft Mode for Published Pages Ever needed to make significant changes to a live page without affecting what visitors see? Draft Mode solves this problem elegantly: - Create draft versions of any published page - Edit freely without touching the live content - Preview your changes before publishing - Merge when ready, or discard and start over No more maintenance mode or staging sites for simple content updates. https://twitter.com/Justinnealey/status/2017753369750999480 ### Visual Revision Comparison WordPress revision history just got a major upgrade. Instead of comparing raw code or block markup, you can now: - View side-by-side rendered previews of any two revisions - See color-coded highlighting showing exactly what changed - Quickly identify which blocks were added, modified, or removed - Make more informed decisions about which revision to restore https://twitter.com/Justinnealey/status/2017751702733263088?s=20 ### Block Exclusion System Some third-party blocks don't play well with universal extensions. The new Block Exclusion System gives you control: - Configure which blocks should be excluded from DSG extensions - Prevents REST API validation conflicts - Works great with server-side rendered blocks like Gravity Forms - User-configurable through the admin settings ## PHP 8.0 Minimum Requirement **Breaking Change:** Version 1.4.0 requires PHP 8.0 or higher. This change brings: - Improved security through modern PHP features - Better performance and memory handling - Access to new language features for future development - Alignment with WordPress's direction toward modern PHP If you're still on PHP 7.4, please upgrade your hosting before updating DesignSetGo. ## Bug Fixes in 1.4.0 - **Icon Button border-radius**: Fixed an issue where border-radius worked in the editor but not on the frontend - **REST API conflicts**: Resolved validation issues with server-side rendered blocks - **Missing icons**: Restored 14 icons that were missing from the SVG library - **Security**: Updated lodash dependencies to address known vulnerabilities ## What's New in 1.4.1 Shortly after the 1.4.0 release, we shipped 1.4.1 with important stability fixes: ### Grid Block Improvements - **Type safety**: Fixed WordPress 6.1+ blockGap object format conversion - **Consistent alignment**: Grid items now default to 'stretch' consistently between editor and frontend - **Preset spacing**: Corrected spacing calculations for grid presets ### Row Block Fixes - Improved preset conversion with proper type checking - More reliable layout behavior across different configurations ### Icon Button Updates - Removed deprecated width attribute (migration handled automatically) - Now uses WordPress's native `alignfull` class for full-width display - User margins properly override alignment defaults ### Other Fixes - **Divider width**: Editor styles no longer override your custom divider widths - **llms.txt handling**: Improved conflict detection with dismissable admin notices - **WordPress 6.7**: Updated minimum WordPress version requirement ## Comprehensive Test Suite Version 1.4 also includes a major investment in code quality with a new comprehensive test suite covering: - Form validation and submission - Block registration and rendering - Utility functions - REST API endpoints This means faster, more confident releases going forward. ## Upgrade Today DesignSetGo 1.4.1 is available now on WordPress.org. To update: 1. **Check your PHP version** - You need PHP 8.0 or higher 2. **Backup your site** - Always a good practice before major updates 3. **Update via Dashboard** - Go to Plugins > Updates ## What's Next We're continuing to improve DesignSetGo with: - More AI integration features - Enhanced block capabilities - Performance optimizations - Better theme compatibility Stay tuned for 1.5 with even more exciting features! --- **Questions or feedback?** Visit our [support forum](https://wordpress.org/support/plugin/designsetgo/) or [GitHub repository](https://github.com/designsetgo/designsetgo). --- # DesignSetGo 2.0 Release **DesignSetGo 2.0 is here.** Three new blocks, two new extensions, 150+ ready-to-use patterns, a major performance overhaul, two tech debt sprints, a CI/CD rebuild, and 30 merged pull requests in two weeks. This is our biggest release yet. ## What's new in 2.0 ### Comparison Table block Product comparisons, pricing tiers, feature matrices — the Comparison Table block handles all of it. Build tables with 2-6 dynamic columns, use checkmarks, X marks, or custom text in cells, highlight a featured column, and add CTA buttons. On mobile, tables scroll horizontally or stack vertically — your choice. BasicGet StartedPopularProGet StartedEnterpriseContact UsStorage5 GB50 GBUnlimitedUsers110UnlimitedPriority Support?API Access ### Timeline block Tell a story in sequence. The Timeline block supports vertical and horizontal orientations, alternating left/right layouts, customizable markers (circle, square, diamond), scroll-triggered animations, and optional links on each entry. Perfect for company histories, project milestones, process flows, or event schedules. ### Advanced Heading block Standard heading blocks give you one style per heading. Advanced Heading gives you as many as you need. Create a single H1-H6 element with independent heading segments — each segment gets its own font style, weight, size, and color. Build headings like "Build **faster** with *WordPress*" where every word can look different, all within one semantic heading element. No wrapper divs, no accessibility compromises. The toolbar gives you quick access to font family, font weight, and text transform controls right where you're editing — no hunting through the sidebar for basic typography changes. Bold *Heading* ### Grid Mobile Order extension The zigzag layout problem is solved. When you alternate image-left/text-right and text-left/image-right rows in a grid, mobile stacking puts things in the wrong order. Grid Mobile Order lets you reorder grid items on mobile without touching the desktop layout or changing the HTML structure. Just set the order you want per breakpoint. ### SVG Patterns extension Add visual texture to any section or group with 25+ repeatable SVG background patterns. Choose from simple, geometric, organic, decorative, architectural, and technical categories. Customize the color, opacity, and scale. Everything renders as pure CSS — zero JavaScript on the frontend, zero performance cost. ## 150+ patterns and 12 homepage templates We went from 74 patterns to 159. The bulk of the new additions came from extracting individual sections out of our 12 homepage templates into reusable, standalone patterns (#189). Every homepage template — SaaS, agency, restaurant, real estate, fitness, non-profit, events, education, portfolio, and more — contributed hero sections, feature grids, testimonial sliders, CTAs, pricing tables, team layouts, FAQs, galleries, and contact forms that you can now use independently. The pattern categories break down like this: - **Hero** (12) — one per industry template - **Features** (10) — numbered services, benefit cards, flip card grids - **Testimonials** (8) — centered sliders, star ratings, client grids - **CTA** (11) — newsletter signups, event registration, donation forms - **Content** (19) — stats bars, brand trust logos, product demos, impact stories - **Team** (5) — minimal dark, instructor profiles, speaker showcases - **Pricing** (4) — event tickets, membership tiers, SaaS plans - **FAQ** (3) — split-image, professional, SaaS layouts - **Gallery** (4) — portfolio projects, property showcases - **Contact** (2) — consultation forms Insert a pattern, swap the content, and you're done. No design skills required. ## Shape dividers for sections Sections can now have decorative shape dividers on the top and bottom edges. Pick from 24 shapes — waves, curves, triangles, peaks, clouds, zigzag, torn paper — and customize the color, height, width, and direction. A small detail that makes a big visual difference between "blocks on a page" and "designed website." ## Frontend draft preview Administrators can now browse the live frontend and see draft content across all pages. A floating banner lets you toggle between preview and live views. Edit in the block editor, then check how everything looks on the actual site before publishing — with real theme styles, real navigation, and real layout context. ## Icon Button gets a proper link experience We replaced the old text field + toggle approach for Icon Button links with WordPress's native `LinkControl` component (#211, #217). Now you get URL search with autocomplete, "open in new tab" built in, and automatic `rel="noopener noreferrer"` for external links. It matches how the core Button block works, which means less cognitive overhead when switching between the two. The link control also moved from the sidebar to the inline toolbar, so you can set or change a link without breaking your editing flow. ## Under the hood: Performance ### Code splitting and lazy loading (#202) This was one of the bigger architectural changes in 2.0. Previously, all extension editor controls and admin pages loaded upfront in a single bundle. Now they're dynamically imported — background video controls, animation panels, clickable group settings, custom CSS editors, and all three admin pages (Dashboard, Blocks & Extensions, Settings) load on demand with Suspense boundaries and loading spinners. The result: a smaller initial bundle and a faster editor load, especially on sites that use only a subset of the available extensions. ### Animation system overhaul (#198) The animation frontend got a significant rewrite: - **Shared IntersectionObserver instances**: Instead of creating one observer per animated element, elements with the same scroll offset now share a single observer. On a page with 20 animated elements, that's potentially 20 observers reduced to 2-3. - **WeakMap for element state**: Animation state per element is stored in a WeakMap instead of custom properties, which means automatic garbage collection when elements are removed from the DOM. - **Reduced observer thresholds**: Dropped from 11 threshold values to 3, cutting the callback frequency without affecting visual behavior. - **Smart default handling**: The PHP renderer now only outputs `data-dsgo-*` attributes that differ from defaults. If you're using the default animation (fade in, 0.6s, no delay), the HTML is cleaner. - **Reduced motion**: All animations respect `prefers-reduced-motion`. If a user has motion reduction enabled in their OS settings, animations are automatically disabled. No opt-in required. ### Pattern loading optimization Patterns are now cached and registered only in the editor context. Frontend page loads skip pattern registration entirely, and the editor caches pattern content to avoid re-reading PHP files on every request. ## Under the hood: Tech debt sprints We ran two focused tech debt sprints before the 2.0 release, addressing all 3 critical and 9 high-priority items from our internal debt inventory. ### Sprint 1 — Performance and shared utilities (#201) **Performance fixes:** - The map block's render filter was attached to `render_block` (fires for *every* block on the page). Now it uses `render_block_designsetgo/map` and only fires for map blocks. - Block style registration was creating N separate `WP_Theme_JSON_Data` objects via N filter closures. Now it batches them into a single callback. - `Settings::get_settings()` gained a static cache with invalidation on save, eliminating redundant `get_option()` calls. **Code quality:** - Extracted `convertPresetToCSSVar()` from 4 duplicate locations (row/edit, row/save, grid/edit, grid/save) into a shared utility. - Created an abstract `Configure_Form_Field` base class that 12 form field configurators now extend, eliminating ~300 lines of repeated boilerplate. - Standardized error handling across 14 block inserters. - Removed dead code from the icon injector (legacy migration branches that were no longer needed). **Infrastructure:** - Updated GitHub Actions to v4, Node.js 18 to 20 (18 reached EOL), added PHP 8.3 to the CI matrix, and started tracking `composer.lock`. ### Sprint 2 — Decompose God objects (#204) Two classes had grown too large: - **Block_Inserter** (the Abilities API inserter): All 11 form field HTML generation methods plus 3 helpers were extracted into a new `Form_Field_Html_Generator` class. ~530 lines removed from the original. - **Form_Handler** (form submission processing): Security concerns — honeypot detection, rate limiting, Turnstile verification, and IP detection with CIDR proxy support — were extracted into a new `Form_Security` class. ~270 lines removed. We also found and removed a duplicate `form-textarea` block directory that was causing "Block already registered" console warnings. Net result: -372 lines across the two sprints, with cleaner boundaries between concerns. ## Under the hood: CI/CD rebuild (#210) The CI pipeline was rebuilt from scratch to be faster and smarter: - **Build once, test many**: A single build job runs first and uploads artifacts. All downstream jobs (JS tests, PHP tests, E2E tests, WordPress compatibility) download the pre-built artifacts instead of rebuilding. - **Parallel testing**: JS linting/tests, PHP linting (PHPCS + PHPStan across PHP 8.0/8.1/8.2), and E2E tests all run in parallel after the build completes. - **Smart matrix strategy**: Pull requests test only boundary PHP/WordPress version pairs. Pushes to main get the full compatibility matrix. - **Separated concerns**: Each job has a single responsibility — easier to understand, faster to debug when something fails. ## Under the hood: AI Abilities API testing (#186) DesignSetGo's Abilities API (which lets AI agents discover and use blocks programmatically) gained 59 integration tests: - **22 smoke tests** covering discovery (list abilities, filter by category), block indexing (depth-first document order), block catalog (DSG-only results, summary vs. detail), configurators (update by index/name, style objects, shape dividers), and inserters (add child blocks, verify `serialize_blocks()` round-trip integrity). - **37 security/validation tests** covering color injection attacks (`var(--x, ``` Match the `name` and `text` fields exactly to what's visible on the page. Google cross-checks them, and a mismatch disqualifies the page from rich snippets. ## Bonus: let an LLM keep it in sync The hardest part of FAQ schema is keeping the JSON-LD in sync with the visible accordion as you edit. If you've wired up the [DesignSetGo Abilities API](https://designsetgoblocks.com/?p=2038), you can hand this to your LLM: > "Read the accordion on post {ID}, then regenerate the FAQPage JSON-LD in the custom HTML block immediately after it. Match every question and answer verbatim." One prompt, zero drift. Add it to your pre-publish checklist. ## What to measure Give it two weeks, then check Search Console for the FAQ pages. Look for: - Impressions on the exact question phrasings (a sign your schema is being parsed). - Long-tail queries that don't appear in your H2s (a sign users are finding answers via the accordion content). - Average position on question-style queries ("does X work with Y", "how do I X"). Well-structured FAQ content is one of the last remaining SEO wins that's both cheap to implement and still meaningful for discovery. An Accordion block, tight answers, matching schema — that's the whole playbook. --- # Clickable Group Patterns: Turning Any DesignSetGo Block Into a Link One of the subtler rules of good card UI: the whole card should be clickable. Not just the title. Not just a button tucked in the corner. The *card*. Users move their cursor toward whatever looks tappable, and when the hit target is the whole surface, the interface feels effortless. When it's only a tiny "Read more" link, it feels fiddly. WordPress makes this surprisingly hard. You can't nest an anchor tag inside another anchor tag — it's invalid HTML and screen readers treat it as a single mush. So if your card already contains a "Learn more" button, you can't just wrap the whole thing in another link. The DesignSetGo **Clickable Group** extension solves this with a pattern that's accessible, keyboard-navigable, and respects nested interactive elements. ## How it works Enable the Clickable Group panel on any container block (Section, Row, Grid, Card), set a URL, and the whole block becomes clickable. Under the hood: - A small JS handler attaches to the container. - Click events on the container navigate to the URL. - Clicks on nested `` or `