
Actividad diagnostica
Objetivo:Identificar los conocimientos previos de los estudiantes en HTML, CSS y lógica básica de diseño web.Instrucciones:Crea una página web simple con un archivo index.html.La página debe contener:Un título principal con tu nombre.Un párrafo donde describas qué entiendes por "aplicaciones web progresivas".Una lista (puede ser ordenada o no ordenada) con 3 aplicaciones web que uses en tu día a día.Una imagen (puede ser de internet o de tu computadora).Aplica algo de estilo con CSS interno o...

App móvil con CRUD conectado a servidor LAMP
Objetivo generalDesarrollar una app móvil en React Native (Expo) capaz de conectarse a una API PHP que realiza operaciones CRUD sobre una tabla en MySQL, todo dentro de una red local.Herramientas necesariasMySQ: Base de datosPHP (Apache o XAMPP): API en backendReact Native + ExpoApp: móvil frontendPostman (opcional): Prueba de endpoints APIVS Code: Editor de códigoExpo Go: Pruebas en el móvil (iOS/Android)Parte 1: Crear la base de datosEn phpMyAdmin o línea de comandos de MySQL:CREATE DATABAS...

La señal que nunca llegó
Lucas tenía una visión: crear una app que ayudara a pequeños productores locales a vender sus cosechas directamente a consumidores urbanos. Nada de intermediarios, solo conexión. La llamó Raíz. Desde su pequeño estudio en Oaxaca, con más corazón que presupuesto, construyó una app limpia, intuitiva y optimista. El diseño estaba listo. Las funciones estaban listas. Los productores estaban listos. Solo faltaba que el mundo se conectara con ella. El día del lanzamiento fue como un amanecer. Lucas...

Actividad diagnostica
Objetivo:Identificar los conocimientos previos de los estudiantes en HTML, CSS y lógica básica de diseño web.Instrucciones:Crea una página web simple con un archivo index.html.La página debe contener:Un título principal con tu nombre.Un párrafo donde describas qué entiendes por "aplicaciones web progresivas".Una lista (puede ser ordenada o no ordenada) con 3 aplicaciones web que uses en tu día a día.Una imagen (puede ser de internet o de tu computadora).Aplica algo de estilo con CSS interno o...

App móvil con CRUD conectado a servidor LAMP
Objetivo generalDesarrollar una app móvil en React Native (Expo) capaz de conectarse a una API PHP que realiza operaciones CRUD sobre una tabla en MySQL, todo dentro de una red local.Herramientas necesariasMySQ: Base de datosPHP (Apache o XAMPP): API en backendReact Native + ExpoApp: móvil frontendPostman (opcional): Prueba de endpoints APIVS Code: Editor de códigoExpo Go: Pruebas en el móvil (iOS/Android)Parte 1: Crear la base de datosEn phpMyAdmin o línea de comandos de MySQL:CREATE DATABAS...

La señal que nunca llegó
Lucas tenía una visión: crear una app que ayudara a pequeños productores locales a vender sus cosechas directamente a consumidores urbanos. Nada de intermediarios, solo conexión. La llamó Raíz. Desde su pequeño estudio en Oaxaca, con más corazón que presupuesto, construyó una app limpia, intuitiva y optimista. El diseño estaba listo. Las funciones estaban listas. Los productores estaban listos. Solo faltaba que el mundo se conectara con ella. El día del lanzamiento fue como un amanecer. Lucas...

Subscribe to Frexus

Subscribe to Frexus
Share Dialog
Share Dialog
<100 subscribers
<100 subscribers


Desarrollar una app móvil interactiva de Tres en Raya / Gato / Tic-Tac-Toe con React Native con Expo, incorporando elementos multimedia donde:
Se use sonido al colocar fichas.
Se muestren imágenes como fichas (X y O).
Se utilicen elementos visuales y botones táctiles.
Node.js instalado
Expo CLI (npm install -g expo-cli)
App Expo Go en el móvil
Visual Studio Code o cualquier editor
npx create-expo-app TresEnRayaMultimedia --template blank
cd TresEnRayaMultimedia
npx expo install expo-av
Dentro de la carpeta del proyecto, crea:
/assets
- x.png
- o.png
- clic.mp3
Se puede usar cualquier ícono PNG representando la X y la O, y un sonido para los clics.
import React, { useState } from 'react';
import { View, TouchableOpacity, Image, StyleSheet, Text } from 'react-native';
import { Audio } from 'expo-av';
// Cargar imágenes
const xImg = require('./assets/x.png');
const oImg = require('./assets/o.png');
const clickSound = require('./assets/click.mp3');
export default function App() {
const [board, setBoard] = useState(Array(9).fill(null));
const [xTurn, setXTurn] = useState(true);
const [sound, setSound] = useState();
const playSound = async () => {
const { sound } = await Audio.Sound.createAsync(clickSound);
setSound(sound);
await sound.playAsync();
};
const handlePress = (index) => {
if (board[index] !== null) return;
const newBoard = [...board];
newBoard[index] = xTurn ? 'X' : 'O';
setBoard(newBoard);
setXTurn(!xTurn);
playSound();
};
const renderBox = (index) => (
<TouchableOpacity style={styles.box} onPress={() => handlePress(index)}>
{board[index] === 'X' && <Image source={xImg} style={styles.icon} />}
{board[index] === 'O' && <Image source={oImg} style={styles.icon} />}
</TouchableOpacity>
);
return (
<View style={styles.container}>
<Text style={styles.title}>Tres en Raya</Text>
<View style={styles.board}>
{board.map((_, index) => renderBox(index))}
</View>
</View>
);
}
const styles = StyleSheet.create({
container: {
flex: 1,
backgroundColor: '#f4f4f8',
alignItems: 'center',
justifyContent: 'center',
},
title: {
fontSize: 28,
marginBottom: 30,
fontWeight: 'bold',
},
board: {
width: 300,
height: 300,
flexDirection: 'row',
flexWrap: 'wrap',
},
box: {
width: 100,
height: 100,
borderWidth: 1,
borderColor: '#444',
alignItems: 'center',
justifyContent: 'center',
},
icon: {
width: 60,
height: 60,
},
});
npx expo start
Escanea el QR con tu móvil. Al tocar un cuadro, se coloca una ficha y suena el audio.
Agregar verificación de ganador.
Mostrar animaciones al ganar.
Reiniciar el juego con un botón.
Incluir música de fondo con expo-av.
Pulsa aquí para ver el código base
Desarrollar una app móvil interactiva de Tres en Raya / Gato / Tic-Tac-Toe con React Native con Expo, incorporando elementos multimedia donde:
Se use sonido al colocar fichas.
Se muestren imágenes como fichas (X y O).
Se utilicen elementos visuales y botones táctiles.
Node.js instalado
Expo CLI (npm install -g expo-cli)
App Expo Go en el móvil
Visual Studio Code o cualquier editor
npx create-expo-app TresEnRayaMultimedia --template blank
cd TresEnRayaMultimedia
npx expo install expo-av
Dentro de la carpeta del proyecto, crea:
/assets
- x.png
- o.png
- clic.mp3
Se puede usar cualquier ícono PNG representando la X y la O, y un sonido para los clics.
import React, { useState } from 'react';
import { View, TouchableOpacity, Image, StyleSheet, Text } from 'react-native';
import { Audio } from 'expo-av';
// Cargar imágenes
const xImg = require('./assets/x.png');
const oImg = require('./assets/o.png');
const clickSound = require('./assets/click.mp3');
export default function App() {
const [board, setBoard] = useState(Array(9).fill(null));
const [xTurn, setXTurn] = useState(true);
const [sound, setSound] = useState();
const playSound = async () => {
const { sound } = await Audio.Sound.createAsync(clickSound);
setSound(sound);
await sound.playAsync();
};
const handlePress = (index) => {
if (board[index] !== null) return;
const newBoard = [...board];
newBoard[index] = xTurn ? 'X' : 'O';
setBoard(newBoard);
setXTurn(!xTurn);
playSound();
};
const renderBox = (index) => (
<TouchableOpacity style={styles.box} onPress={() => handlePress(index)}>
{board[index] === 'X' && <Image source={xImg} style={styles.icon} />}
{board[index] === 'O' && <Image source={oImg} style={styles.icon} />}
</TouchableOpacity>
);
return (
<View style={styles.container}>
<Text style={styles.title}>Tres en Raya</Text>
<View style={styles.board}>
{board.map((_, index) => renderBox(index))}
</View>
</View>
);
}
const styles = StyleSheet.create({
container: {
flex: 1,
backgroundColor: '#f4f4f8',
alignItems: 'center',
justifyContent: 'center',
},
title: {
fontSize: 28,
marginBottom: 30,
fontWeight: 'bold',
},
board: {
width: 300,
height: 300,
flexDirection: 'row',
flexWrap: 'wrap',
},
box: {
width: 100,
height: 100,
borderWidth: 1,
borderColor: '#444',
alignItems: 'center',
justifyContent: 'center',
},
icon: {
width: 60,
height: 60,
},
});
npx expo start
Escanea el QR con tu móvil. Al tocar un cuadro, se coloca una ficha y suena el audio.
Agregar verificación de ganador.
Mostrar animaciones al ganar.
Reiniciar el juego con un botón.
Incluir música de fondo con expo-av.
Pulsa aquí para ver el código base
No activity yet