Please enable JavaScript to use CodeHS


1. Introduction to Mobile Apps
1.1 Introduction to React Native and Expo
Video 1.1.1 Introduction to React Native and Expo
Check for Understanding 1.1.2 Quiz: Introduction to React Native and Expo
Free Response 1.1.3 Why Mobile Apps?
Notes 1.1.4 What is React Native?
Notes 1.1.5 React Native App Overview
Notes 1.1.6 Running Apps on CodeHS
Notes 1.1.7 Running Apps on Expo
Example 1.1.8 React Native App Example
Free Response 1.1.9 React Native App Example Reflection
2. Components and the Stylesheet
2.1 Introduction to Components
Video 2.1.1 Introduction to Components
Check for Understanding 2.1.2 Quiz: Introduction to Components
Example 2.1.3 The Parent View Component
Example 2.1.4 Nesting Multiple Text Components
Exercise 2.1.5 Customizing Text
Exercise 2.1.6 Adding Components
Debugging 2.1.7 Debugging Components
2.2 Introduction to the Stylesheet API
Video 2.2.1 Introduction to the Stylesheet API
Check for Understanding 2.2.2 Quiz: Introduction to the Stylesheet API
Example 2.2.3 Naming a Stylesheet ID
Example 2.2.4 Multiple Stylesheet ID's
Exercise 2.2.5 Connecting Components to the Stylesheet
Debugging 2.2.6 Debug the Stylesheet
2.3 Styling View Components
Video 2.3.1 Styling View Components
Check for Understanding 2.3.2 Quiz: Styling View Components
Example 2.3.3 Height and Width
Example 2.3.4 Justifying Content
Example 2.3.5 Aligning Items
Exercise 2.3.6 Rainbow Background
Example 2.3.7 Flex Direction
Example 2.3.8 Checkerboard
Exercise 2.3.9 Nested Views
Exercise 2.3.10 Andy Warhol Image
2.4 Styling Text Components
Video 2.4.1 Styling Text Components
Check for Understanding 2.4.2 Quiz: Styling Text Components
Example 2.4.3 Text Component Attributes
Example 2.4.4 Text Component Dimensions
Exercise 2.4.5 My Favorites List
Exercise 2.4.6 News Article Styling
Exercise 2.4.7 Google Logo
Exercise 2.4.8 SnapChat Login Page Pt 1: Layout
Exercise 2.4.9 Venmo Balance Transfer Page Pt 1: Layout
Badge 2.4.10 Stylish Mobile App Badge
Survey 2.4.11 Mindset Survey 1
2.5 Challenge: Scorekeeper Pt 1
Example 2.5.1 Scorekeeper Pt 1: Example
Challenge 2.5.2 Scorekeeper Pt 1: Screen Layout
2.6 Components and the Stylesheet Quiz
Unit Quiz 2.6.1 Components and the Stylesheet Quiz
3. Buttons and Text Boxes
3.1 TouchableHighlight and the onPress Function
Video 3.1.1 TouchableHighlight and the onPress Function
Check for Understanding 3.1.2 Quiz: TouchableHighlight and the onPress Function
Example 3.1.3 TouchableHighlight with Text Only
Example 3.1.4 TouchableHighlight Components as Buttons
Exercise 3.1.5 Adding TouchableHighlight to the News Article
Exercise 3.1.6 SnapChat Login Page Pt 2: Buttons
Exercise 3.1.7 Build a Homescreen
3.2 TextInput
Video 3.2.1 TextInput
Check for Understanding 3.2.2 TextInput
Example 3.2.3 Adding TextInput
Example 3.2.4 iMessage
Exercise 3.2.5 Google Search Page
Exercise 3.2.6 Feedback Form
Exercise 3.2.7 Venmo Balance Transfer Pt 2: Buttons & Input
3.3 Challenge: Scorekeeper Pt 2
Challenge 3.3.1 Scorekeeper Pt 2: Buttons and TextInput
3.4 Buttons & Text Boxes Quiz
Unit Quiz 3.4.1 Buttons and Text Boxes Quiz
4. Advanced Layouts and Images
4.1 The Image Component
Video 4.1.1 The Image Component
Check for Understanding 4.1.2 Quiz: The Image Component
Example 4.1.3 Sizing Images Correctly
Example 4.1.4 Images with Text
Exercise 4.1.5 Snapchat Login Page Pt 3: Images
Exercise 4.1.6 Music Player Interface
Exercise 4.1.7 Google Search Page using Images
4.2 Setting a Background Image
Video 4.2.1 Setting a Background Image
Check for Understanding 4.2.2 Quiz: Setting a Background Image
Example 4.2.3 Setting a Background Image
Exercise 4.2.4 Phone Background
Exercise 4.2.5 Mobile Resume
4.3 Using Images as Buttons
Video 4.3.1 Using Images as Buttons
Check for Understanding 4.3.2 Quiz: Using Images as Buttons
Example 4.3.3 Using Images as Buttons
Exercise 4.3.4 Interactive Quotes
Exercise 4.3.5 Music Player with TouchableHighlight
Badge 4.3.6 Mobile Image Badge
4.4 Flex Layouts
Video 4.4.1 Flex Layouts
Check for Understanding 4.4.2 Quiz: Flex Layouts
Example 4.4.3 Using Flex Ratios
Example 4.4.4 Even Quadrants
Example 4.4.5 Uneven Quadrants
Exercise 4.4.6 Rainbow Background with Flex
Exercise 4.4.7 Simple Flag with Flex
Exercise 4.4.8 Advanced Flag with Flex
Exercise 4.4.9 SnapChat Login Page Pt 4: Flex
4.5 Using 'Dimensions' to Control Size
Video 4.5.1 Using 'Dimensions' to Control Size
Check for Understanding 4.5.2 Quiz: Using 'Dimensions' to Control Size
Example 4.5.3 Even Quadrants with 'Dimensions'
Example 4.5.4 Uneven Quadrants with 'Dimensions'
Example 4.5.5 Using 'Dimensions' to Control Font and Image Size
Exercise 4.5.6 Rainbow Background using 'Dimensions'
Exercise 4.5.7 Simple Flag using 'Dimensions'
Exercise 4.5.8 Advanced Flag using 'Dimensions'
Exercise 4.5.9 SnapChat Login Page Pt 5: 'Dimensions'
4.6 Challenge: Scorekeeper Pt 3
Challenge 4.6.1 Scorekeeper Pt 3: Images and Responsive Design
Survey 4.6.2 Mindset Survey 3
4.7 Advanced Layouts and Images Quiz
Unit Quiz 4.7.1 Advanced Layouts and Images Quiz
5. App Build: Recreate a Popular App
5.1 Recreate a Popular App
Free Response 5.1.1 Choose an App
Free Response 5.1.2 Plan Layout and Functionality
Video 5.1.3 How to Upload an Image on CodeHS
Exercise 5.1.4 Code Layout
Challenge 5.1.5 Add Functionality
Free Response 5.1.6 Reflection
6. Events and State
6.1 Using State to Control Values
Video 6.1.1 Using State to Control Values
Check for Understanding 6.1.2 Using State to Control Values
Example 6.1.3 Initial State
Exercise 6.1.4 Setting the Location with State
Exercise 6.1.5 Multiple State Values
6.2 Updating State with onPress
Video 6.2.1 Updating State with onPress
Check for Understanding 6.2.2 Updating State with onPress
Example 6.2.3 Updating State with onPress
Example 6.2.4 State Updates Based on Button Press
Exercise 6.2.5 Name to Nickname
Exercise 6.2.6 SnapChat Login Page Pt 6: Using State
6.3 Using Mathematical Equations to Update State
Video 6.3.1 Using Mathematical Equations to Update State
Check for Understanding 6.3.2 Using Mathematical Equations to Update State
Example 6.3.3 Updating the Count
Exercise 6.3.4 Full Counter App
Challenge 6.3.5 Easy Calculator
6.4 Using Methods to Update String States
Video 6.4.1 Using Methods to Update String States
Check for Understanding 6.4.2 Using Methods to Update String States
Example 6.4.3 Upper and Lower
Exercise 6.4.4 Updating the Mood of a String with State
Exercise 6.4.5 Spellchecker
6.5 Challenge: Scorekeeper Pt 4
Challenge 6.5.1 Scorekeeper Pt 4: Functionality with States
Survey 6.5.2 Mindset Survey 2
6.6 Events and State Quiz
Unit Quiz 6.6.1 Events and State Quiz
7. Creating Multiple Screens
7.1 Creating a Navbar
Video 7.1.1 Creating a Navbar
Check for Understanding 7.1.2 Creating a Navbar
Example 7.1.3 Bottom Navbar
Exercise 7.1.4 Top Navbar
Exercise 7.1.5 Icon Navbar in Landscape
Exercise 7.1.6 iPhone Call Navbar
7.2 Using Buttons to Navigate Screens
Video 7.2.1 Using Buttons to Navigate Screens
Check for Understanding 7.2.2 Using Buttons to Navigate Screens
Example 7.2.3 Two Screen App
Exercise 7.2.4 Name & Image App
Exercise 7.2.5 Mobile Biography of a Role Model
Exercise 7.2.6 RSVP Tracker
7.3 Challenge: Scorekeeper Pt 5
Challenge 7.3.1 Scorekeeper Pt 5: Multiple Screens
7.4 Creating Multiple Screens Quiz
Unit Quiz 7.4.1 Creating Multiple Screens Quiz
8. Working with Conditionals
8.1 Conditionals and State Change
Video 8.1.1 Conditionals and State Change
Check for Understanding 8.1.2 Quiz: Conditionals and State Change
Example 8.1.3 Marathon Counter App
Exercise 8.1.4 Savings Tracker
Exercise 8.1.5 Venmo Balance Transfer Pt 3: Check Balance
8.2 Conditionals using Parameters
Video 8.2.1 Conditionals using Parameters
Check for Understanding 8.2.2 Conditionals using Parameters
Example 8.2.3 Parameters and Conditional Background Images
Example 8.2.4 Traffic Light Conditionals
Exercise 8.2.5 Conditional Winner!
Challenge 8.2.6 Trivia App
8.3 Challenge: Scorekeeper Pt 6
Challenge 8.3.1 Scorekeeper Pt 6: Add Standings Page
8.4 Working with Conditionals Quiz
Unit Quiz 8.4.1 Working with Conditionals Quiz
9. App Build: Currency Converter
9.1 Currency Converter
Free Response 9.1.1 Plan Layout and Functionality
Exercise 9.1.2 Code the Layout
Challenge 9.1.3 Add Functionality
Free Response 9.1.4 Reflection
10. Using Collections of Data
10.1 Using Arrays and Indexing to Set State
Video 10.1.1 Using Arrays and Indexing to Set State
Check for Understanding 10.1.2 Using Arrays and Indexing to Set State
Example 10.1.3 Traveling to Multiple States
Example 10.1.4 Conditional Winner Using Arrays
Exercise 10.1.5 Conditional Roadtrip
Exercise 10.1.6 Time of Day
10.2 Mapping Through Objects in Arrays
Video 10.2.1 Mapping Through Objects in Arrays
Check for Understanding 10.2.2 Mapping Through Objects in Arrays
Example 10.2.3 Guest List
Exercise 10.2.4 ClassPass Pt 1: Schedule
Exercise 10.2.5 Favorite Movies List
10.3 Challenge: Scorekeeper Pt 7
Challenge 10.3.1 Scorekeeper Pt 7: Implement Arrays
10.4 Using Collections of Data Quiz
Unit Quiz 10.4.1 Using Collections of Data Quiz
11. Working with ScrollView
11.1 Using ScrollView
Video 11.1.1 Using ScrollView
Check for Understanding 11.1.2 Using ScrollView
Example 11.1.3 Class Schedule ScrollView
Example 11.1.4 Scrolling through National Parks
Exercise 11.1.5 Scrollable List of BFF's
Exercise 11.1.6 ScrollView inside ScrollView
11.2 ScrollView using Objects
Video 11.2.1 ScrollView using Objects
Check for Understanding 11.2.2 ScrollView using Objects
Example 11.2.3 Scrolling through Mapped National Parks
Example 11.2.4 Mapping through a Class Schedule with ScrollView
Exercise 11.2.5 Mapping My BFF's
Challenge 11.2.6 ClassPass Pt 2: Add Features
Survey 11.2.7 Mindset Survey 4
11.3 Challenge: Scorekeeper Pt 8
Challenge 11.3.1 Scorekeeper Pt 8: Add ScrollView
11.4 Working with ScrollView Quiz
Unit Quiz 11.4.1 Working with ScrollView Quiz
12. App Build: Image Feed App
12.1 Project: Image Feed
Free Response 12.1.1 Plan Layout and Functionality
Exercise 12.1.2 Code the Layout
Challenge 12.1.3 Add Functionality
Free Response 12.1.4 Reflection
Badge 12.1.5 Image Feed Badge
13. Designing User Interfaces
13.1 Intro to Design Thinking
Video 13.1.1 Intro to Design Thinking
Check for Understanding 13.1.2 Intro to Design Thinking
Free Response 13.1.3 User Interface Scavenger Hunt
Connection 13.1.4 Case Study: Helping Blind People See
Free Response 13.1.5 Case Study Responses
Connection 13.1.6 Crash Course: Empathize
Free Response 13.1.7 Empathize Notes
Connection 13.1.8 Crash Course: Define
Free Response 13.1.9 Problem Statement
Connection 13.1.10 Crash Course: Ideate
Free Response 13.1.11 Ideate Notes
Connection 13.1.12 Crash Course: Prototype and Test
Free Response 13.1.13 Testing Notes
Free Response 13.1.14 Topic Brainstorm
Free Response 13.1.15 Narrowing Down Topics
13.2 Empathy
Video 13.2.1 Empathy
Check for Understanding 13.2.2 Empathy Quiz
Connection 13.2.3 A Cafeteria Designed for Me
Free Response 13.2.4 A Cafeteria Designed for Me
Connection 13.2.5 Accessibility
Free Response 13.2.6 Accessibility Tips
Free Response 13.2.7 Accessibility: Designing for ALL
Connection 13.2.8 How to Interview
Free Response 13.2.9 How to Interview
Free Response 13.2.10 User Interview
13.3 Define
Video 13.3.1 Define
Check for Understanding 13.3.2 Define Quiz
Connection 13.3.3 Make a Composite Character Profile
Free Response 13.3.4 Composite Character Profile
Free Response 13.3.5 Point-of-View Statement Brainstorm
Free Response 13.3.6 POV Statement
13.4 Ideate
Video 13.4.1 Ideate
Check for Understanding 13.4.2 Ideate Quiz
Connection 13.4.3 Stoke
Free Response 13.4.4 Get Stoked
Connection 13.4.5 Brainstorming Tips
Free Response 13.4.6 Ideate!
13.5 Prototype
Video 13.5.1 Prototype
Check for Understanding 13.5.2 Prototype Quiz
Connection 13.5.3 Brainstorm Selection
Free Response 13.5.4 Harvest Ideas from the Brainstorm
Connection 13.5.5 Wizard of Oz Prototyping
Connection 13.5.6 Example Wizard of Oz Paper Prototype
Free Response 13.5.7 Make Your Paper Prototypes!
13.6 Test
Video 13.6.1 Test
Check for Understanding 13.6.2 Testing Quiz
Connection 13.6.3 Testing with Users
Connection 13.6.4 Example: How to User Test
Free Response 13.6.5 How to User Test Responses
Connection 13.6.6 Example: How NOT to User Test
Free Response 13.6.7 How NOT to User Test Responses
Free Response 13.6.8 Test Prototype 1
Free Response 13.6.9 Test Prototype 2
Free Response 13.6.10 Improve Your Prototype
13.7 Designing User Interfaces Quiz
Unit Quiz 13.7.1 Designing User Interfaces Quiz
Badge 13.7.2 Designing User Interfaces Badge
14. End of Course App Build
14.1 Build Your Own App
Free Response 14.1.1 App Planning
Pseudocode 14.1.2 Planning with Pseudocode
Challenge 14.1.3 Code the Layout
Challenge 14.1.4 App Functionality
Presentation 14.1.5 App Presentation
Badge 14.1.6 Custom App Badge
15. Final
15.1 Final Exam
Midterm 15.1.1 Mobile Apps Pt. 1: Multiple Choice