Log an important message to the console on the component’s first render using
useEffect. This helps diagnose lifecycle and startup behavior quickly.
Business case. DebugBeacon — a beacon for engineers: on component startup, the console shows a diagnostic message.
useEffect and log to the console exactly once on mount."[DebugBeacon] Component mounted" to make logs easier to filter.[].A card with short instructions to open the console.
Preview:

useEffect(() => { console.log('[DebugBeacon] Component mounted'); }, []);import React, { useEffect } from 'react';
import './styles.css';
export function DebugMessage() {
useEffect(() => {
console.log('[DebugBeacon] Component mounted');
}, []);
return (
<article className="card" data-testid="debug-card">
<header>
<h2 className="title">DebugBeacon: console message</h2>
<p className="subtitle">The message is important for startup debugging</p>
</header>
<div className="row">
<p>Open the browser console — the message logs once on mount.</p>
</div>
</article>
);
}
export default function App() {
return (
<main className="challenge-container">
<section>
<DebugMessage />
</section>
</main>
);
}Log an important message to the console on the component’s first render using
useEffect. This helps diagnose lifecycle and startup behavior quickly.
Business case. DebugBeacon — a beacon for engineers: on component startup, the console shows a diagnostic message.
useEffect and log to the console exactly once on mount."[DebugBeacon] Component mounted" to make logs easier to filter.[].A card with short instructions to open the console.
Preview:

useEffect(() => { console.log('[DebugBeacon] Component mounted'); }, []);import React, { useEffect } from 'react';
import './styles.css';
export function DebugMessage() {
useEffect(() => {
console.log('[DebugBeacon] Component mounted');
}, []);
return (
<article className="card" data-testid="debug-card">
<header>
<h2 className="title">DebugBeacon: console message</h2>
<p className="subtitle">The message is important for startup debugging</p>
</header>
<div className="row">
<p>Open the browser console — the message logs once on mount.</p>
</div>
</article>
);
}
export default function App() {
return (
<main className="challenge-container">
<section>
<DebugMessage />
</section>
</main>
);
}The code editor is intentionally hidden on mobile.
Believe me, it's for the best: I am protecting you from the temptation to code in less-than-ideal conditions. A small screen and a virtual keyboard are not the best tools for a programmer.
📖 Now: Study the task, think through the solution. Act like a strategist.
💻 Later: Sit down at your computer, open the site, and implement all your ideas comfortably. Act like a code-jedi!