Frontend Development 12 min read

How Component‑Based Automation Transformed Activity Development with the Noah Platform

This article explains how repetitive, time‑consuming activity development processes were streamlined by introducing a template‑driven, component‑based architecture called Noah, detailing its challenges, system structure, rendering workflow, interaction handling, data reporting, and the business impact of mass‑producing activities.

Yuewen Technology
Yuewen Technology
Yuewen Technology
How Component‑Based Automation Transformed Activity Development with the Noah Platform

In many product teams, activity projects start with a simple request like “launch an event the day after tomorrow,” leading to repeated cycles of requirement review, development, testing, release, and eventual shutdown. These cycles often take 4‑5 days to several weeks, causing duplicated work, lengthy processes, customer complaints, and difficulty scaling.

Template Era

To address these issues, a template‑based approach was introduced. By standardizing common conditions and prize configurations, product managers can modify tasks and select prizes in the backend, while designers update page skins, allowing a new activity to go live with minimal effort.

However, developing a template adds extra effort (approximately 8 days total) and creates pressure due to high reuse expectations.

Noah Challenges

The need for finer‑grained reuse led to the creation of the Noah system, a component‑based, drag‑and‑drop solution for building activities.

Noah System Overview

Noah structures activities as multiple pages, each containing ordered components. Each component includes:

Basic component information (instance ID, version, etc.)

Configuration data (e.g., image URLs, prize probabilities)

Direct output data (dynamic content displayed with the page)

Initialization methods (actions run at activity start)

API interfaces for user interactions

Timers for scheduled tasks

Supporting services such as a Component Manager, Checker, Actioner, and Behavior Data collector enable component management, business closure, and large‑scale reuse.

How Noah Works

When a user accesses a URL, the system extracts a unique activity ID to locate the default page (or a specific page if an ID is provided). The front‑end, built on a Node.js framework, requests data from a PHP service, merges it with HTML templates, and renders the page.

Key data structures include:

actConf : activity‑level settings like start/end times.

pageInfo.components : ordered array of component objects.

component.config : component configuration (may contain sensitive info, filtered before front‑end use).

component.indexData : real‑time output data fetched via a callback.

component.componentSelect : basic component metadata (instance ID, version).

The front‑end iterates through components, loading their templates, CSS, and data to render the complete activity page.

Trigger Actions

Interactive components expose a fixed API. When a user clicks a button, the front‑end sends an AJAX request with the component instance ID, allowing the back‑end to retrieve configuration, evaluate checkers, and execute actions.

Checkers evaluate conditions (e.g., "today's flowers > 3 && total spend > 100"). Actions (Actioners) perform tasks such as granting virtual currency or issuing coupons. Expressions like #{C1} are transformed into method calls (e.g., self::runCheckerById(1) ).

Data Reporting

Each component defines reporting logic that sends HTTP calls with parameters (UserId, ActivityId, ComponentId, Time, P1‑P4) when specific actions occur. This enables business‑level analytics, such as tracking the distribution of virtual currency rewards from a “smash‑egg” component.

Conclusion

Noah has enabled mass production of activity projects, demonstrating measurable revenue growth through frequent activities. While the system meets current product needs, future work includes multi‑project integration, cross‑page linking, and deeper data analysis.

Frontend Developmentcomponent architecturetemplate systemactivity automationNoah platform
Yuewen Technology
Written by

Yuewen Technology

The Yuewen Group tech team supports and powers services like QQ Reading, Qidian Books, and Hongxiu Reading. This account targets internet developers, sharing high‑quality original technical content. Follow us for the latest Yuewen tech updates.

0 followers
Reader feedback

How this landed with the community

login Sign in to like

Rate this article

Was this worth your time?

Sign in to rate
Discussion

0 Comments

Thoughtful readers leave field notes, pushback, and hard-won operational detail here.