# JavaScript-ondersteuning in Maguyva: AI-zoeken voor repo's met gemengde runtimes

Canonical source: https://maguyva.ai/nl/languages/javascript

License: text under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/); code samples under [MIT-0](https://opensource.org/license/mit-0); the Maguyva name, logos, brand assets and other code are not covered. Details: [maguyva.ai/license](https://maguyva.ai/license).

Maguyva ondersteunt JavaScript met AST-parsing en symboolextractie, en helpt AI-agents werken binnen Node-services, browsercode, scripts en legacymodules zonder terug te vallen op stringzoeken.

## Ondersteuningsoverzicht

- Tier: AST- en symboolondersteuning
- Programmeren
- Extensies: .cjs, .js, .mjs, .spec.js, .stories.js, .test.js
- Echte AST-parsing voor syntaxbewust zoeken en structurele context.
- Benoemde symbolen voeden semantische lookup en kruisverwijzingen. Graafnavigatie is beschikbaar wanneer relatie-extractie is ingeschakeld.
- Deze taal draagt symbolen en relaties bij aan graafbewust zoeken; ondersteunde kanttypen variëren met de eigen constructies van de taal.
- Zowel AST-parsing als symboolextractie zijn beschikbaar.

## Beste toepassing

- Node- en browserrepositories die nooit volledig zijn geconvergeerd naar één modulesysteem of één framework-generatie.
- Teams die legacy JavaScript onderhouden terwijl ze geleidelijk TypeScript of nieuwe packagegrenzen introduceren.
- Agent-workflows die structuur nodig hebben over `.js`, `.mjs` en `.cjs` heen, in plaats van ad-hoc repozoeken.

## Agentworkflows

- Traceer een requestpad of buildstap door oudere JavaScript-modules voordat je het bewerkt.
- Vergelijk CommonJS- en ESM-implementaties van hetzelfde gedrag in de hele repo.
- Vind terugkerende patronen in scripts, utilities of frontendcomponenten voordat je een nieuwe abstractie introduceert.

## Waarom gemengde JavaScript-repo's nog steeds structuurbewust zoeken nodig hebben

Veel AI-codetooling behandelt JavaScript stilzwijgend als de rommelige tussenfase vóór "echte" TypeScript. Dat gaat voorbij aan hoe productierepo's er in werkelijkheid uitzien. JavaScript beheert nog altijd buildstappen, pluginsystemen, browsercode, taakscripts en lang bestaande servicepaden waarvoor niemand budget heeft vrijgemaakt om ze netjes te herschrijven.

Dat maakt JavaScript-ondersteuning minder een kwestie van mooie syntax en meer een kwestie van geschiedenis. Het gevaar zit niet in het parsen van het bestand. Het gevaar zit in het bewerken van een module of helper zonder te begrijpen of die bij CommonJS, ESM, browsercode of een ouder lokaal patroon hoort.

## Wat Maguyva daadwerkelijk extraheert in JavaScript

Maguyva dekt `.js`, `.mjs` en `.cjs`, normaliseert member-prefixed calls, en ondersteunt JSX-componentheuristieken in JavaScript-codebases waar de grens tussen frontend en backend vervaagt. Het filtert ook een groot deel van de standaard browser- en Node-runtimeruis weg, zodat repository-specifieke relaties zichtbaar blijven.

Dat is nuttig in oudere of gemengde repo's waar hetzelfde concept in meer dan één bestandsstijl kan voorkomen en waar exacte naamgeving vaak inconsistent is.

## Nuttige MCP-workflows voor repo's met gemengde runtimes

De praktische workflow ziet er meestal zo uit:

- Gebruik `text_pattern_search` voor exacte strings zoals `module.exports`, eventnamen of oude configmarkers.
- Gebruik `intelligent_search` wanneer je gedrag wilt onderzoeken, met prompts zoals "legacy-uploadflow" of "waar auth wordt gecontroleerd in de browserbundel".
- Gebruik `get_task_context` wanneer de naamgeving inconsistent is en je een samengestelde samenvatting wilt voordat de agent iets bewerkt.

## Wanneer deze pagina nuttig is

Deze pagina is voor repo's die nog een aanzienlijk deel JavaScript-code bevatten, niet voor teams die doen alsof de migratie al voltooid is. Als de huidige repo grotendeels TypeScript is, begin dan bij [TypeScript](/nl/languages/typescript). Als de oude webstack nog doorloopt in server-side templates of PHP, is de [PHP-gids](/nl/languages/php) de relevantere metgezel.

## Enginedetails

- JavaScript-ondersteuning dekt `.js`, `.mjs` en `.cjs`, wat van belang is wanneer één repo nog steeds meerdere modulestijlen omvat.
- Ledenprefixen en aanroepargumenten worden genormaliseerd zodat herhaalde helpers makkelijker te vergelijken zijn over oudere bestanden.
- JSX-componentheuristieken worden ondersteund, terwijl de gebruikelijke muur van ingebouwde browser- en Node-globals uit relatieruis wordt gefilterd.

## Nuttige MCP-instappunten

- `text_pattern_search`: Gebruik dit voor exacte strings zoals `module.exports`, event-namen of oude configuratiemarkeringen voordat je de zoekopdracht verbreedt.
- `intelligent_search`: Gebruik dit wanneer de naamgeving inconsistent is en je een gedrag zoals “bestand-uploadflow” moet vinden in plaats van een symbool.
- `get_task_context`: Nuttig wanneer de repo in de loop van de tijd is veranderd en je een samenhangende samenvatting nodig hebt voordat je legacycode wijzigt.
