Blog
Field notes from building DesignSetGo Apps.
Page 2 of 7. Design rationale, release notes, and the occasional aside.
-
Reading your WordPress taxonomy from an app: a recipe-filter walkthrough
Read post →A grown-up recipe filter does not hardcode the tag list. It reads it from the site, because the site owner publishes a new tag every month and the filter should keep up.
-
Per-app, per-user storage: what it is, what it is not, and how to model it
Read post →dsgo.storage.app.* is per-app, shared across users. dsgo.storage.user.* is per-app and per-user. Both are server-side. Most apps want both. Most apps reach for the wrong one first.
-
The CSP allowlist, explained: what your app can fetch and why
Read post →Apps that try to fetch from a random CDN without declaring it get a console error. That is the point. This post explains the allowlist model so your agent knows what to put in the manifest the first time.
-
The plugin pile-on: five plugins one DesignSetGo app can replace
Read post →Calculated Fields Form + WPForms + Tasty Pins + a custom CSS plugin + Insert Headers and Footers. That stack is one DesignSetGo app, sandboxed, with a fraction of the admin surface.
-
A fitness coach’s TDEE calculator, vibe-coded in 20 minutes
Read post →Generic TDEE plugins exist. They are someone else’s branding, someone else’s UI, and someone else’s ads. Vibe-code your own in 20 minutes; it lives on your site, in your colors, with your CTA.
-
The week DesignSetGo started reading your custom post types
Read post →Release note. Your listings, your courses, your menu items, your team members are now first-class in the bridge. dsgo.posts.list({ type: ‘listing’ }) Just Works.
-
Gravity Forms vs a DesignSetGo App for a custom quote builder
Read post →Gravity Forms is the universal default. For a quote builder with branching logic, custom math, and per-line pricing, it is also $59/year of bolt-ons and a Conditional Logic tab you will dread reopening. A DesignSetGo app is one bundle and zero bolt-ons.
-
Give a client a dashboard inside wp-admin without writing a plugin
Read post →A custom admin page used to mean a PHP plugin, an add_menu_page call, a templated .php file, and a maintenance burden. The display.modes admin flag in your manifest does the same job with one line.
-
Versioning and rollback: what happens when an app update breaks
Read post →A plugin update that breaks your site requires a backup restore and a coffee. A DesignSetGo app rollback is one CLI command and you are back in three seconds. Here is the model.
-
Roles and capabilities: the WordPress concepts every app author needs to know
Read post →If you came from React and Vercel, WordPress’s capability system is the part of the platform you most need to internalize. It is not user roles. It is a permission graph every other plugin extends.
-
Apps as content: the case for the Gutenberg block as the default embed surface
Read post →Site owners think in posts and pages, not at standalone URLs. The block embed is the wedge. Standalone /apps/{slug} is the secondary surface, not the primary.
-
A recipe filter that actually uses your recipes (food-blogger vertical)
Read post →Tasty, WP Recipe Maker, and the generic filter plugins all read from their own schemas. A DesignSetGo App reads from your posts and your tag taxonomy, so adding a new ingredient is just publishing a post.