Mathsframe -

export const FractionWall: React.FC<FractionWallProps> = ( numerator, denominator, onSliceClick ) => const canvasRef = useRef<HTMLCanvasElement>(null);

for (let i = 0; i < denominator; i++) const rect = new fabric.Rect( left: i * sliceWidth, top: 0, width: sliceWidth - 2, height: height, fill: i < numerator ? '#3b82f6' : '#e2e8f0', stroke: '#1e293b', strokeWidth: 1, selectable: true, hasControls: false, hasBorders: true, data: index: i ); mathsframe

1. Concept & Mission Mathsframe is an interactive mathematics platform designed to transform abstract mathematical concepts into tangible, visual, and gamified learning experiences. Its core mission is to reduce math anxiety, increase fluency, and provide real-time feedback to learners through a clean, accessible interface. export const FractionWall: React

useEffect(() => if (!canvasRef.current) return; const canvas = new fabric.Canvas(canvasRef.current); const width = 400; const height = 80; const sliceWidth = width / denominator; Its core mission is to reduce math anxiety,

rect.on('mousedown', () => onSliceClick(i)); canvas.add(rect);

canvas.renderAll(); return () => canvas.dispose(); , [numerator, denominator]);