--- import { rcLowPassSvg, astable555Svg, commonEmitterSvg } from '../lib/featured-waveforms'; const featured = [ { id: 'rc-lowpass-filter', title: 'RC Low-Pass Filter', engine: 'ngspice' as const, description: 'Classic transient analysis — square wave input through an RC network produces the characteristic exponential charge/discharge response.', tags: ['transient', 'passive', 'beginner'], svg: rcLowPassSvg, }, { id: '555-astable-blinker', title: '555 Astable LED Blinker', engine: 'ngspice' as const, description: 'Timer IC in free-running mode — the capacitor ramp between comparator thresholds generates a square wave output.', tags: ['timer', 'oscillator', 'digital'], svg: astable555Svg, }, { id: 'common-emitter-amplifier', title: 'Common Emitter Amplifier', engine: 'ngspice' as const, description: 'Single-stage BJT amplifier with AC analysis — input sine wave is amplified and phase-inverted at the collector.', tags: ['amplifier', 'ac-analysis', 'bjt'], svg: commonEmitterSvg, }, ]; const engineColor: Record = { ngspice: { border: 'border-blue-500/30', bg: 'bg-blue-500/10', text: 'text-blue-400' }, ltspice: { border: 'border-amber-500/30', bg: 'bg-amber-500/10', text: 'text-amber-400' }, }; ---

Featured

Start with a classic circuit

{featured.map((nb) => { const colors = engineColor[nb.engine] ?? engineColor.ngspice; return ( {/* Waveform thumbnail */}

{nb.title}

{nb.engine}

{nb.description}

{nb.tags.map((tag) => ( {tag} ))}
); })}