Skip to content

Recursion-clicker - #98

Open
mrbdahlem wants to merge 3 commits into
mainfrom
recursion-clicker
Open

Recursion-clicker#98
mrbdahlem wants to merge 3 commits into
mainfrom
recursion-clicker

Conversation

@mrbdahlem

Copy link
Copy Markdown
Collaborator
  • Student view: Sierpinski triangle exploration
  • Manager view: themed dashboard with map/leaderboard tabs, stage controls
  • Server: fractal data structure with ternary heap indexing (FractalStore)
  • Styled with custom CSS theme matching recursive exploration concept

…ation, and instructor dashboard

- Student view: Sierpinski triangle exploration with SVG navigation control
- Manager view: themed dashboard with map/leaderboard tabs, join code copy, stage controls
- Server: fractal data structure with ternary heap indexing (FractalStore)
- Styled with custom CSS theme matching recursive exploration concept
Copilot AI review requested due to automatic review settings January 7, 2026 03:00

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR introduces a new collaborative educational activity called "Triangulon Invasion" that teaches recursive concepts through interactive Sierpinski triangle exploration. The activity features a student interface for exploring fractal subdivisions and a manager dashboard for controlling stages and tracking leaderboard progress.

  • Implements a complete activity with student and manager views using WebSocket-based real-time synchronization
  • Adds CSRF protection to WebSocket connections in the core router
  • Creates a custom fractal data structure using ternary heap indexing for efficient triangle navigation
  • Applies a themed CSS design matching the recursive exploration concept

Reviewed changes

Copilot reviewed 11 out of 12 changed files in this pull request and generated 15 comments.

Show a summary per file
File Description
server/core/wsRouter.js Adds Origin header validation for CSRF protection on WebSocket connections
server/activities/activityRegistry.test.js Registers "triangulon-invasion" in expected activities list
client/src/activities/index.test.js Registers "triangulon-invasion" in client-side activity list
activities/triangulon-invasion/server/routes.js Implements WebSocket and HTTP endpoints for session management, stage control, and event broadcasting
activities/triangulon-invasion/server/fractalStore.js Provides fractal data structure with ternary heap indexing for triangle hierarchy
activities/triangulon-invasion/client/student/triangulon.css Defines custom theme with gradient backgrounds, grid overlays, and styled UI components
activities/triangulon-invasion/client/student/TriangleNav.jsx Renders interactive SVG triangle navigation interface with geometric calculations
activities/triangulon-invasion/client/student/Student.jsx Creates student view with WebSocket connection, triangle workspace, and mini-map
activities/triangulon-invasion/client/manager/Manager.jsx Provides instructor dashboard with stage controls, map/leaderboard tabs, and event monitoring
activities/triangulon-invasion/client/index.jsx Exports activity configuration with manager and student components
activities/triangulon-invasion/activity.config.js Configures activity metadata, client/server entry points, and collaborative mode
package-lock.json Removes "peer" flags from various dependencies to resolve package resolution

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread activities/triangulon-invasion/server/routes.js Outdated
Comment thread activities/triangulon-invasion/client/student/TriangleNav.jsx Outdated
Comment thread activities/triangulon-invasion/client/manager/Manager.jsx
Comment thread activities/triangulon-invasion/client/manager/Manager.jsx Outdated
Comment thread activities/triangulon-invasion/server/routes.js Outdated
Comment thread activities/triangulon-invasion/client/student/TriangleNav.jsx
Comment thread server/core/wsRouter.js Outdated
Comment thread activities/triangulon-invasion/server/fractalStore.js Outdated
Comment thread activities/triangulon-invasion/server/routes.js Outdated
Comment thread activities/triangulon-invasion/client/student/TriangleNav.jsx
- Add JSDoc and ESM exports for fractalStore plus normalize depth math
- Add FractalStore tests and align imports; validate subdivide paths and bound event history
- Protect WS origin by requiring header, guard generic event payloads, and note future triangle diff handling
- Improve TriangleNav readability (naming, zero-length normalize, geometry comment) and clean student manager UI totals
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants