WP Manifestindependent plugin directory
manifest / users / skill-flow

Skill Flow releasesself-updates

Per-user unlockable skill trees for real-life curricula in WordPress

by Harvey Meeker · github.com/rhialto74/skill-flow · website

0stars
1release downloads
0forks

Install

The author publishes release zips, so WP-CLI can install straight from GitHub:

wp plugin install https://github.com/rhialto74/skill-flow/releases/download/v1.1.1/skill-flow.zip

Ships its own WordPress updater (Plugin Update Checker), so new versions show up under Dashboard → Updates.

Per-user unlockable skill trees for real-life curricula in WordPress — built for long-term skill progressions like a martial arts belt system.

  • Administrators author skills (rich training content + milestones), lay them out in skill trees with a drag-and-drop GUI builder (prerequisite edges, N-of-M groups, required/optional skills), and sequence trees into flows.
  • Students are enrolled into flows and see their tree: locked skills show only a basic description; unlocked skills reveal training content and milestones; they can request validation when ready.
  • Instructors validate mastery for the students assigned to them — from the same frontend view (student switcher) or a wp-admin validation queue. Mastering skills unlocks dependents; completing all required skills in a tree unlocks the next tree in the flow.

The domain vocabulary lives in CONTEXT.md; load-bearing design decisions live in docs/adr/.

How it fits together

Concept Storage
Skill (sf_skill) CPT — excerpt = basic description, editor = gated training content, meta = milestones
Skill Tree (sf_tree) CPT — _sf_graph meta: nodes (position, required flag) + prerequisite groups (N-of-M, ANDed)
Flow (sf_flow) CPT — _sf_tree_order meta: ordered tree IDs
Validations, milestone checks Custom tables (sf_validations, sf_milestone_checks) — append-only event logs
Enrollments, assignments Custom tables (sf_enrollments, sf_assignments)

Derived state (locked/unlocked/complete) is never stored; Skill_Flow_Progress_Engine recomputes it from mastery events on every read. Mastery is sticky — only an explicit instructor revocation reverts it.

Usage

  1. Activate the plugin (creates tables and the Instructor role).
  2. Skill Flow → Skills: create skills. Skill Trees: create tree posts, then open Tree Builder to add skills to the canvas, draw prerequisite edges, set N-of-M thresholds and required/optional flags, and edit milestones.
  3. Flows: create a flow post and give each tree a position in the Skill Trees in this Flow box.
  4. Enrollments: enroll students into the flow. Assignments: assign students to instructors.
  5. Put [skill_flow id="123"] (the flow post ID) — or the Skill Flow block — on a page.

REST API lives under skill-flow/v1 (cookie auth + nonce).

Theming

Typography is inherited from your theme. Every color and radius the plugin paints is an --sf-* CSS custom property (declared in src/common/theme.css with neutral defaults), so a theme restyles the whole plugin - student view and admin builder - with a few overrides:

.sf-app, .sf-builder {
    --sf-accent: #7f1d1d;        /* buttons, active states, unlocked nodes */
    --sf-mastered: #b45309;      /* mastered borders */
    --sf-mastered-bg: #fef3c7;   /* mastered fills */
    --sf-surface: #111827;       /* card background (dark theme) */
    --sf-border: #374151;
    --sf-text: #f9fafb;
    --sf-text-muted: #9ca3af;
}

Sizing: the tree canvas defaults to 70vh and is user-resizable; embed wide with [skill_flow id="..." width="full"], the block wide/full alignment, or the built-in fullscreen button.

Development

npm install && npm run build   # builds assets/dist (builder, frontend, block)
npm run plugin-zip             # builds + packages skill-flow.zip for distribution
composer install
composer test                  # standalone PHPUnit for the pure domain logic

The graph model (Skill_Flow_Graph) and progress engine (Skill_Flow_Progress_Engine) are pure PHP with no WordPress dependencies, tested in tests/. Integration verification is easiest with wp-env — see docs/VERIFICATION.md.

License

GPL-2.0-or-later. Based on Hugh Lashbrooke's WordPress Plugin Template.

Releases

3 releases. Each count is every asset in that release; expand a row for the breakdown.

Tag
Published
Assets
Downloads
v1.1.1 latest
Jul 8, 2026 2mo ago
skill-flow.zip
0
Jul 8, 2026 2mo ago
skill-flow.zip
0
Jul 8, 2026 2mo ago
skill-flow.zip
1