Class 09 ‐ Web Apps and API's - lenincompres/ima-front-end-web GitHub Wiki
Part 1
Let's make a web app
- OOP review and DOM modification in class exercise
- Deck of cards wepApp, follow along
- This exercise covers:
- iterating through arrays
- for(... of ...)
- accessing DOM element
- defer, ids, appendChild
- content: innerHTML, innerText
- events: onclick
- classes: classList
- style: color
- object methods
- cardArray.sort()
- cardArray.slice()
- Math.random()
- classes
- constructor, methods: card.flip()
- static properties
- module, import
- properties: isFace
- waiting: setTimeOut
- asynchronous functions: async, wait
- iterating through arrays
Part 2
- setTimeOut
- async and await
- API's!
- What is an API?
- fetch
- In class Exercises
- How Many People Are In Space Right Now?
- Wikipedia search
- Other API resources
HOMEWORK
- Assignment: your choice!
- Create your own playground with at least 5 DOM elements, 3 listeners (onclick, onchange, etc.) and 2 functions besides initialization (set up). Link to your Github Repo AND Github Pages URL.
- Or, create a single web page that uses AJAX (fetch); to load and display data from one of The New York Times APIs. Your page should also include at least one form of "user interaction".
- Bonus: Use Github Desktop to create a new branch in your midterm project. Link to the branch's Github Repo.
- Prepare a presentation for your Final Project idea. Your presentation should be shareable. Include a moodboard, site map, and wireframes. The final assignment is similar to the midterm in that you are expected to have a complete idea and a reason for why you want to make this. You are responsible for making a web application that is thoughtfully designed and built for a responsive experience and utilizes at least one API to populate data or introduce a service to your app. This API can be from a content management system (CMS) powering a personal portfolio. You are allowed to continue work on your midterm project (but I expect to see a significant update) or pivot to a new idea.