Practice and reinforce the concepts from Lesson 1
Put your learning into practice by:
Time Limit: 10 minutes
Install Required Tools:
# Install Node.js (if not already installed)
# Download from nodejs.org
# Install Expo CLI
npm install -g @expo/cli
# Verify installation
expo --version
Expo Account Setup:
AI Assistant Configuration:
✅ Checkpoint: Share a screenshot of your successful setup!
Time Limit: 5 minutes
# Create your app
npx create-expo-app MyFirstApp --template blank
cd MyFirstApp
# Start the development server
npx expo start
✅ Checkpoint: QR code appears and app loads on your phone!
Replace the contents of App.js
with your personalized "About Me" app:
import React, { useState } from 'react';
import { View, Text, StyleSheet, TouchableOpacity, Image, ScrollView } from 'react-native';
export default function App() {
const [showFacts, setShowFacts] = useState(false);
const funFacts = [
"I'm learning React Native!",
"This is my first mobile app",
"I built this in under 60 minutes",
// Add your own fun facts here!
];
return (
<ScrollView style={styles.container}>
{/* Your code goes here */}
</ScrollView>
);
}
const styles = StyleSheet.create({
container: {
flex: 1,
backgroundColor: '#fff',
padding: 20,
paddingTop: 50,
},
// Add your styles here
});
Your Mission:
Make your app beautiful with:
Styling Inspiration:
const styles = StyleSheet.create({
title: {
fontSize: 32,
fontWeight: 'bold',
textAlign: 'center',
marginBottom: 20,
color: '#2c3e50',
},
card: {
backgroundColor: '#ffffff',
borderRadius: 12,
padding: 20,
marginVertical: 10,
shadowColor: '#000',
shadowOffset: { width: 0, height: 2 },
shadowOpacity: 0.1,
shadowRadius: 4,
elevation: 3,
},
});
Add these interactive elements:
Code Challenge:
const [tapCount, setTapCount] = useState(0);
const [isDarkMode, setIsDarkMode] = useState(false);
const handleNameTap = () => {
setTapCount(tapCount + 1);
// Add fun animation or feedback here!
};
Completed Successfully If:
Time Investment: 60 minutes total Difficulty Level: Beginner Prerequisites: Basic JavaScript knowledge helpful but not required Tools Needed: Computer, smartphone, internet connection