Bright Platform Summary
Bright Platform Summary
Introduction
The Bright Platform is a multi-system e-learning stack made up of:
- A Rails application (<code>rails-52-cap3-v2</code>) that serves as the Bright API, data model, reporting engine, and sync orchestration layer.
- The core WordPress plugin (<code>bright-wordpress</code>) that embeds Bright content into WordPress, authenticates users to Bright, renders templates/shortcodes, and exposes admin tooling.
- Project-specific customizations, typically encapsulated in a plugin or in the theme functions.php file.
Customization Items
- Storage for any custom templates created during the integration.
- Storage for any custom hooks or actions used to implement custom business rules.
- Delivery of any custom CSS or JavaScript required in the implementation.
Together, these components support course delivery, learner registration tracking, learning-path progression, certificate workflows, analytics/reporting, and enterprise integration hooks.
Overview of Features
-
Course and Registration APIs (Rails)
- Versioned Bright APIs (<code>/bright/api/v2</code> and <code>/bright/api/v3</code>) for courses, registrations, learners, invitations, templates, learning paths, and utility endpoints.
- Supports autocomplete/search endpoints, CRUD-style resource access, and API-key based integration patterns.
-
Learning Path Management and Progression
- Rails models for <code>LearningPath</code>, <code>LearningPathStep</code>, and <code>LearningPathStatus</code> support ordered steps, status rollups, session-key aware tracking, and active/inactive lifecycle behavior.
- WordPress integration computes path status, completion counts, average scores, and path URLs; supports sequencing and certificate gating in template rendering.
- Dashboard customizations provide branded path overview/grid rendering and prerequisite handling behavior.
-
Embedded Learning Experience in WordPress
- <code>[bright]</code> shortcode expansion and Bright template rendering for course lists, single courses, and learning-path displays.
- Front-end script/style loading for Bright runtime (<code>bright.js</code>) and optional learning-path JS/CSS packages.
- Admin menu surfaces Bright tools, sync controls, and embedded admin consoles.
-
Admin and Operations Tooling
- Legacy embedded admin UI plus React-based “Admin 2.0 Beta” page in WordPress.
- Rails reporting endpoints/controllers for registration summaries, response analytics, launch history, and activity trends.
- Bootstrap tasks for initializing or rebuilding Rails database environments.
-
Sync and Integration
- Rails <code>SyncTarget</code> framework (including registration and learning-path sync target types) prepares sync detail queues and pushes incremental updates.
- WordPress Bright sync modules and hooks support metadata synchronization and custom post-sync actions.
- VSI customization plugin forwards learning-path status payloads to external systems via authenticated JSON POST.
-
Commerce/LMS Extensions
- Optional WooCommerce integration modules for course purchase/license workflows.
- Optional LearnDash integration and Bright course-id resolution from WordPress metadata.
Use Cases
-
Learner takes courses through WordPress
- Learner signs in, launches Bright courses from WordPress pages, and progress is tracked in Rails registration data.
-
Structured certification paths
- Organizations define multi-step learning paths and enforce sequential progression, then issue certificates when completion criteria are met.
-
Branded e-learning dashboards
- Site-specific plugins (like VSI customizations) replace default dashboard sections with custom catalog, path cards, progression messaging, and status views.
-
SSO-driven enrollment and redirection
- External systems can pass signed URL parameters (email/username/hash/path/session metadata) to auto-authenticate users, update profile/session fields, and land users directly on target learning-path pages.
-
Operational reporting and QA
- Admin users generate registration summaries, response analyses, launch-history reports, and trend views for compliance and program monitoring.
-
Partner/system data exchange
- Registration and learning-path status changes can be synchronized to remote systems via sync targets and plugin-level webhook-style hooks.
Components
-
Rails Application (<code>rails-52-cap3-v2</code>)
- Domain model: <code>CourseProvider</code>, <code>Course</code>, <code>Registration</code>, <code>RealmUser</code>, <code>LearningPath</code>, <code>LearningPathStep</code>, <code>LearningPathStatus</code>, and related billing/policy entities.
- API surface: Versioned REST-style controllers under <code>api/</code> and <code>api/v3/</code> for platform entities.
- Reporting layer: <code>ReportController</code> and SQL-backed reporting workflows for registrations, interactions, and launch analytics.
- Sync engine: <code>SyncTarget</code>, <code>RegistrationSyncTarget</code>, <code>LearningPathSyncTarget</code>, <code>SyncDetail</code>, and recurring job integration.
- Admin/UI: ActiveScaffold-backed management resources and realm/provider management routes.
-
WordPress Core Plugin (<code>bright-wordpress</code>)
- Bootstrap/initialization: plugin registration, updates, option-driven module loading, and auth token/header/footer wiring.
- WordPress connector: <code>Bright\Wordpress</code> integration class for user mapping, metadata export, shortcode expansion, template handling, and admin menu/tooling.
- Learning path support: integration-base logic to assemble path/course/registration views from Bright API data, including scoring/status/path URL behavior.
- Admin experience: classic embedded admin tools and React Admin 2.0 page.
- Optional modules: WooCommerce, LearnDash, ACF, template packs, and sync utilities.
-
Bright E-Learning Dashboard Customizations (<code>vsi-bright-customizations</code>)
- Dashboard UI overrides: removes default dashboard actions and injects custom overview/path-grid/catalog renderers.
- Learning-path behavior: locale-aware path key mapping, prerequisite gating, custom launch controls, and certificate display rules.
- Session-aware filtering: limits displayed registrations to path/session metadata stored in user and registration custom fields.
- SSO entrypoint: hash-based login bootstrap, user creation/update, metadata persistence (PIN/session/expiration), and path/certificate redirect flow.
- External sync hook: listens to Bright learning-path status sync events and forwards transformed payloads to partner APIs.





