Skip to content

React, Node, MongoDB, REST, GraphQL and TypeScript exercises for Full Stack Open 2023

Notifications You must be signed in to change notification settings

Juanescacha/FullStackOpen

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Full Stack Open Exercises

Exercises for the course: Full Stack Open. Using Javascript, React, Node, Express, REST API, Typescript and more technologies by Juanescacha. Submission for the Full Stack Open by the University of Helsinki's Department of Computer Science.

General info

Learn React, Redux, Node.js, MongoDB, GraphQL and TypeScript in one go! This course will introduce you to modern JavaScript-based web development. The main focus is on building single page applications with ReactJS that use REST APIs built with Node.js.

Certificate of Completion

certificate-till-the-moment-of-the-current-module-on-the-course

Course content

Part 0: Fundamentals of Web apps

  1. General info
  2. Fundamentals of Web apps

Part 1: Introduction to React

  1. Introduction to React
  2. Javascript
  3. Component state, event handlers
  4. A more complex state, debugging React apps

Part 2: Communicating with server

  1. Rendering a collection, modules
  2. Forms
  3. Getting data from server
  4. Altering data in server
  5. Adding styles to React app

Part 3: Programming a server with NodeJS and Express

  1. Node.js and Express
  2. Deploying app to internet
  3. Saving data to MongoDB
  4. Validation and ESLint

Part 4: Testing Express servers, user administration

  1. Structure of backend application, introduction to testing
  2. Testing the backend
  3. User administration
  4. Token authentication

Part 5: Testing React apps, custom hooks

  1. Login in frontend
  2. props.children and proptypes
  3. Testing React apps
  4. End to end -testing

Part 6: Advanced state management

  1. Flux-architecture and Redux
  2. Many reducers
  3. Communicating with server in a redux application
  4. React Query, useReducer and the context API

Part 7: React router, styling app with CSS and webpack

  1. React-router
  2. Custom hooks
  3. More about styles
  4. Webpack
  5. Class components, E2E-testing
  6. Exercises: extending the bloglist

Part 8: GraphQL

  1. GraphQL-server
  2. React and GraphQL
  3. Database and user administration
  4. Login and updating the cache
  5. Fragments and subscriptions

Part 9: Typescript

  1. Background and Introduction
  2. First Steps with Typescript
  3. Typing express app
  4. React with types

Part 10: React Native

  1. Introduction to React Native
  2. React Native basics
  3. Communicating with server
  4. Testing and extending our application

Part 11: CI/CD

  1. Introduction to CI/CD
  2. Getting started with GitHub Actions
  3. Deployment
  4. Keeping green
  5. Expanding Further

Part 12: Containers

  1. Introduction to Containers
  2. Building and configuring environments
  3. Basic Orchestration

Part 13: Using relational databases

  1. Using relational databases with Sequelize
  2. Join tables and queries
  3. Migrations, many-to-many relationships