windsurf cursor antigravity codex
claude cli gemini cli ollama
openclaw claude code codex
copilot cline amazon codewhisper continue cody
lovable replit.ai
solar-10.7b (10.7B) https://huggingface.co/upstage/SOLAR-10.7B-Instruct-v1.0 dolphin-mistral 10.7B qwen 1.5 7B (muy censurado) neuralhermes 2,5 KM láser openHermes deepseek-coder tiefighter (escritura) fimbulvetr-11B-v2 (ficción, solar)
obediencia, concisión y estructura.
Explica en 3 frases qué es la fotosíntesis para un estudiante de 12 años. No uses metáforas. Máximo 60 palabras.
Qué observar:
Ana tiene 3 cajas. En cada caja hay 4 bolsas. En cada bolsa hay 2 canicas. ¿Cuántas canicas hay en total? Responde solo con el número y una línea de cálculo.
Qué observar:
note: respuesta esperada 24 3 × 4 × 2 = 24
Reescribe esta oración con mayor precisión: “La tecnología cambió bastante la música”.
Qué observar:
evaluate de Hugging Face.El Vibecoding es la práctica de crear experiencias audiovisuales que resuenen con las emociones y los patrones de atención humanos. Combina:
const a=new AudioContext(),o=a.createOscillator(),g=a.createGain();
o.connect(g); g.connect(a.destination);
o.start();
g.gain.setValueAtTime(0.1,a.currentTime);
g.gain.exponentialRampToValueAtTime(0.0001,a.currentTime+1);
o.stop(a.currentTime+1);
// Create audio context
const audioContext = new (window.AudioContext || window.webkitAudioContext)();
// Create oscillator for basic sound generation
const oscillator = audioContext.createOscillator();
oscillator.type = 'sine';
oscillator.frequency.setValueAtTime(440, audioContext.currentTime);
oscillator.connect(audioContext.destination);
oscillator.start();
// Create analyzer node for frequency data
const analyser = audioContext.createAnalyser();
analyser.fftSize = 256;
const bufferLength = analyser.frequencyBinCount;
const dataArray = new Uint8Array(bufferLength);
// Get frequency data for visualization
analyser.getByteFrequencyData(dataArray);
(async () => {
if (!window.THREE) {
await new Promise((resolve, reject) => {
const script = document.createElement('script');
script.src = 'https://unpkg.com/three@0.160.0/build/three.min.js';
script.onload = resolve;
script.onerror = reject;
document.head.appendChild(script);
});
}
const existingCanvas = document.getElementById('three-console-demo');
if (existingCanvas) existingCanvas.remove();
const scene = new THREE.Scene();
scene.background = new THREE.Color(0x000000);
const camera = new THREE.PerspectiveCamera(
75,
window.innerWidth / window.innerHeight,
0.1,
1000
);
camera.position.z = 3;
const renderer = new THREE.WebGLRenderer({ antialias: true });
renderer.setSize(window.innerWidth, window.innerHeight);
renderer.domElement.id = 'three-console-demo';
document.body.appendChild(renderer.domElement);
const geometry = new THREE.BoxGeometry();
const material = new THREE.MeshBasicMaterial({ color: 0x00ff00 });
const cube = new THREE.Mesh(geometry, material);
scene.add(cube);
const onResize = () => {
camera.aspect = window.innerWidth / window.innerHeight;
camera.updateProjectionMatrix();
renderer.setSize(window.innerWidth, window.innerHeight);
};
window.addEventListener('resize', onResize);
const animate = () => {
cube.rotation.x += 0.01;
cube.rotation.y += 0.01;
renderer.render(scene, camera);
requestAnimationFrame(animate);
};
animate();
})();
// Link audio analysis to visual properties
function animate() {
requestAnimationFrame(animate);
// Get audio data
analyser.getByteFrequencyData(dataArray);
// Calculate average amplitude
let sum = 0;
for (let i = 0; i < dataArray.length; i++) {
sum += dataArray[i];
}
const avg = sum / dataArray.length;
// Apply to visual properties
cube.scale.x = cube.scale.y = cube.scale.z = 1 + avg / 256;
renderer.render(scene, camera);
}
ejemplo para console
(async () => {
if (!window.THREE) {
await new Promise((resolve, reject) => {
const script = document.createElement('script');
script.src = 'https://unpkg.com/three@0.160.0/build/three.min.js';
script.onload = resolve;
script.onerror = reject;
document.head.appendChild(script);
});
}
const oldCanvas = document.getElementById('three-audio-reactive-demo');
if (oldCanvas) oldCanvas.remove();
const oldLabel = document.getElementById('three-audio-reactive-label');
if (oldLabel) oldLabel.remove();
const scene = new THREE.Scene();
scene.background = new THREE.Color(0x000000);
const camera = new THREE.PerspectiveCamera(
75,
window.innerWidth / window.innerHeight,
0.1,
1000
);
camera.position.z = 3;
const renderer = new THREE.WebGLRenderer({ antialias: true });
renderer.setSize(window.innerWidth, window.innerHeight);
renderer.domElement.id = 'three-audio-reactive-demo';
document.body.appendChild(renderer.domElement);
const geometry = new THREE.BoxGeometry();
const material = new THREE.MeshBasicMaterial({ color: 0x00ff00, wireframe: false });
const cube = new THREE.Mesh(geometry, material);
scene.add(cube);
const label = document.createElement('div');
label.id = 'three-audio-reactive-label';
label.textContent = 'Solicitando acceso al micrófono...';
Object.assign(label.style, {
position: 'fixed',
top: '12px',
left: '12px',
color: '#00ff00',
background: 'rgba(0,0,0,0.6)',
padding: '8px 10px',
font: '12px monospace',
zIndex: 99999
});
document.body.appendChild(label);
const audioContext = new (window.AudioContext || window.webkitAudioContext)();
if (audioContext.state === 'suspended') {
await audioContext.resume();
}
let analyser, dataArray;
try {
const stream = await navigator.mediaDevices.getUserMedia({ audio: true, video: false });
const source = audioContext.createMediaStreamSource(stream);
analyser = audioContext.createAnalyser();
analyser.fftSize = 256;
analyser.smoothingTimeConstant = 0.8;
source.connect(analyser);
const bufferLength = analyser.frequencyBinCount;
dataArray = new Uint8Array(bufferLength);
label.textContent = 'Micrófono activo';
} catch (err) {
console.error('No se pudo acceder al micrófono:', err);
label.textContent = 'Sin micrófono: animación básica';
}
const onResize = () => {
camera.aspect = window.innerWidth / window.innerHeight;
camera.updateProjectionMatrix();
renderer.setSize(window.innerWidth, window.innerHeight);
};
window.addEventListener('resize', onResize);
function animate() {
requestAnimationFrame(animate);
let avg = 0;
if (analyser && dataArray) {
analyser.getByteFrequencyData(dataArray);
let sum = 0;
for (let i = 0; i < dataArray.length; i++) {
sum += dataArray[i];
}
avg = sum / dataArray.length;
}
const scale = 1 + avg / 256;
cube.scale.x = scale;
cube.scale.y = scale;
cube.scale.z = scale;
cube.rotation.x += 0.01 + avg / 20000;
cube.rotation.y += 0.01 + avg / 18000;
renderer.render(scene, camera);
}
animate();
})();