You can select and manipulate A-Frame entities and components as you would any other HTML.
.querySelector('a-image')
.getAttribute('opacity')
.setAttribute('material', 'color', 'red')
.addEventListener('collide')
.createElement('a-entity')
With libraries…
$('a-box').attr('width', 5);
d3.select('a-scene').selectAll('a-box.bar').data(data);
A-Frame exposes its public interface through the window.AFRAME browser global. This same interface is exposed if requiring with NPM (require(‘aframe’);). AFRAME can be used to register new things and extend AFRAME’s capabilities.