No clones este repositorio porque vamos a utilizar una plantilla diferente.
Recomendamos abrir la plantilla de react utilizando una herramienta de aprovisionamiento como Codespaces (recomendado) o Gitpod. Alternativamente, puedes clonar el repositorio de GitHub en tu computadora local usando el comando git clone
.
Este es el repositorio que necesitas abrir o clonar:
https://github.com/4GeeksAcademy/react-hello
⚠ ¡Necesitarás tener Node.js instalado si lo haces localmente, pero todo eso ya está instalado en Codespaces o Gitpod!
Ejemplo:
1 const handleTranslate = async ({ text, targetLanguage }) => { 2 const prompt = `Translate the following text to ${targetLanguage}:\n\n"${text}"`; 3 4 try { 5 const response = await fetch('https://api.openai.com/v1/completions', { 6 method: 'POST', 7 headers: { 8 'Authorization': `Bearer TU_CLAVE_API_DE_OPENAI`, 9 'Content-Type': 'application/json', 10 }, 11 body: JSON.stringify({ 12 model: 'text-davinci-003', 13 prompt: prompt, 14 max_tokens: 1000, 15 temperature: 0, 16 }), 17 }); 18 19 const data = await response.json(); 20 const translation = data.choices[0].text.trim(); 21 setTranslatedText(translation); 22 } catch (error) { 23 console.error('Error al traducir el texto:', error); 24 } 25 };
Nota: Recuerda reemplazar
'TU_CLAVE_API_DE_OPENAI'
con tu clave API real de OpenAI.
Selección de Idioma de Origen: Permite a los usuarios seleccionar el idioma de origen del texto.
Detección de Idioma: Implementa detección automática del idioma para el texto de origen.
Soporte para Múltiples Idiomas de Destino: Agrega más opciones de idiomas para la traducción.
Historial: Mantén un historial de traducciones para que los usuarios puedan revisarlas.
Manejo de Errores: Agrega un manejo robusto de errores para gestionar errores de API, problemas de red o entradas inválidas.
Estilización: Mejora la apariencia de tu aplicación usando CSS o librerías de estilos como Bootstrap o Material-UI.
Accesibilidad: Asegúrate de que tu aplicación sea accesible para todos los usuarios, incluyendo aquellos que usan lectores de pantalla.
¡Explora diferentes mejoras para hacer tu aplicación de traductor más interactiva y amigable para el usuario!
Para prepararte mejor para completar estos ejercicios, sugerimos los siguientes materiales