Plugin onboarding & hub · hybrid skin

Tangible Hub, in the onboarder's clothes

The hub page from /tangible-hub redrawn in the onboarder hybrid skin: Cristian's WordPress-native structure and body type, Tangible's mark, indigo accent and mono labels. It also takes on the jobs we settled since the first draft — Connect for free plugins (paid ones keep their licence key), the permanent way back into setup, telemetry state per plugin, and the site's steward answer.

§1

The hub at wp-admin width

1440 frame · admin bar + left menu

One site, four Tangible plugins in four different states. The free plugin isn't connected to a tangible.one account, so the band at the top asks — once, quietly, dismissible. Paid plugins never see it: they have a key.

oakhill-learning.com Live ⟳ 6 💬 0 + New 3 Howdy, Maria
TangibleHome
Site oakhill-learning.com Looked after by me / my team change Not connected to tangible.one

Connect this site to your tangible.one account 1

Optional, and free. One connection covers every free Tangible plugin on this site, now and later, and lets you install more from here. Licensed plugins keep working through their keys. Opens tangible.one in a new window. If you're already signed in there, it's one click.

Installed
Your Tangible plugins
4 active · 1 update
Du
Design Upgrade for LearnDash
2.13 · free
AccountFree · not connected
Works without an account · Connect
Usage data 3Off · this plugin
✓ Set upOpen
Dp
Design Upgrade Pro
3.4.1
Licence 2Key not entered
Pro settings are locked until activated
Usage dataNot asked yet
Asked after the key is activated
2 steps left Resume setup
Me
Tangible LearnDash Merge
0.0.5 · 0.0.6 available
LicenceActive
Acme Agency · renews 12 Mar
Usage data
✓ Set upUpdate
Ss
SearchSync
2.0.0
LicenceExpired
Search keeps working · no updates
Usage dataNot shared · account setting
Change it at tangible.one
✓ Set upRenew ↗
1Connect links the SITE to an account. Free plugins ride on it (connecting from one covers all); paid plugins keep their keys. The band shows while the site is unconnected, even with no free plugin installed (§1b); "Not now" hides it for 30 days. 2Paid plugins show licence state (Active / Key not entered / Expired); free ones show Free · not connected / Connected. 3Usage data follows the server for connected plugins and the plugin's own answer for free ones. 4Steward answer: one site option, shared by every Tangible plugin. Never sent to tangible.one.
§1b

Same band, on a site with only paid plugins

no free plugin installed

The connection belongs to the site, not to a free plugin, so the Hub offers it whenever the site is unconnected. With no free plugin here yet, the pitch is what connecting unlocks next: installing free Tangible plugins and their updates from this page.

Connect this site to your tangible.one account

Install free Tangible plugins from here and get their updates, without making an account on the spot. Your licensed plugins already work through their keys; connecting changes nothing for them.

§2

Every chip, and what decides it

nothing on the page is invented

The hub never decides state. It shows facts it reads from the updater, the server's licence-check response, or the plugin's own options. Each chip below says where it comes from.

Licence & account

Active

Paid: the licence key is activated and the server says it's valid. Shows the account name.

Free · not connected

The server says this asset is free (the free-asset work under way). No account needed; Connect is optional. Once connected: Connected

Key not entered

Paid, no key activated on this site. Its paid features stay locked; the onboarder's licence step asks for it.

Expired

Paid, the licence lapsed. The plugin keeps working; updates stop.

Usage data

Server block says enabled: true. Offers "Exclude this site" (per account and site).

Not shared · account setting

enabled: false. Changed only at tangible.one, since consent is account-level.

Off · this plugin

Free and unconnected: the plugin's local answer. Sends nothing either way; the answer itself is recorded on the server.

Not asked yet

A paid plugin before its key is activated, or promptEligible. The onboarder asks; the hub never does.

Setup

✓ Set up

No onboarder step is needed right now. Resolved from facts on every load, not a stored flag.

2 steps left

Steps are needed. Resume setup opens the onboarder at the first one. This is the permanent way back after the notice is dismissed.

change

The steward line. Flipping it rewrites the site option; plugins read it at render time.

§3

Phone width

390 · wp-admin collapses the menu

Same content, one column. Rows become cards; the rail drops below the plugins; the admin-bar mark keeps its pill.

☰oakhill-learning.com 3
TangibleHome
Looked after by me / my team change

Connect your free plugins

Optional. One connection covers every free Tangible plugin on this site. One click if you're signed in.

Dp
Design Upgrade Pro
Key not entered
2 steps left Resume
Me
LearnDash Merge
Active
0.0.6 available · Update
Du
Design Upgrade for LearnDash
Free · not connectedOff
§4

Where each region's data comes from

status as of 2026-09-26
RegionSourceStatus
Installed pluginsframework::$state->plugins (whatever called register_plugin())EXISTS
Updatescore's update_plugins transient, filled by the updaterEXISTS
Notificationsframework hub/notifications.php railEXISTS
Steward linesite option tangible_site_steward — drop its account-ID keyingCHANGE
Setup progressonboarder plan resolved from facts (needed(facts)) — needs a public "steps left" helperSMALL ADD
Free chipserver tells the plugin its asset is free — Fatman's free-asset workIN PROGRESS
Usage data (connected)licence-check telemetry block: { enabled, contractVersion, canonicalUrl, endpoint }SPEC'D
Licence state / account nameupdater licence status + licence-check responseEXISTS
Free plugins connectedone Connect site token, shared by every free Tangible plugin on the siteNOT DESIGNED
Releases from tangible.onea public releases feed per installed assetNO ENDPOINT

Design rules carried over from the first hub: the admin-bar mark is the quietest thing in the bar (one pill, never red unless something is actually broken); the hub lives under the shared Tangible menu as its first item; the hub renders facts and stores nothing of its own.

Painted 4:54 PM EST all Onboarder & Hub artifacts