Skip to content

This repository contains all the exercises and projects I developed to complete the Full Stack Open course at the University of Helsinki, with a total workload of approximately 145 hours.

Notifications You must be signed in to change notification settings

alfredMP18/Full-Stack-Open

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Full Stack Open – University of Helsinki

This repository contains all the exercises and projects I have developed to complete the Full Stack Open course at the University of Helsinki. The program is geared toward modern web development with JavaScript, focusing on single-page applications (SPAs) implemented with React and backed by RESTful web services created with Node.js.

Throughout the course, I have worked on building complete applications that integrate frontend, backend, and databases, following best practices in development, testing, and deployment.

Main technologies used:

  • React
  • Redux
  • React Query and Context
  • React Router
  • Modern JavaScript
  • Node.js and Express
  • MongoDB and Mongoose
  • RESTful APIs
  • Authentication and authorization with JWT
  • Testing with Vitest
  • End-to-end testing with Playwright
  • CSS and style frameworks (React Bootstrap, Material UI, Tailwind CSS, styled-components)
  • Vite and Webpack
  • ESLint
  • Git and GitHub
  • Custom hooks
  • Application deployment

Why is this course relevant?

  • It is one of the most up-to-date programs in modern web development.
  • It teaches the most in-demand stack today.
  • It includes unit testing, integration, end-to-end testing, and cloud deployment.
  • It is based on real projects that integrate frontend, backend, and databases.

Prerequisites

  • Good programming skills.
  • Basic knowledge of web programming and databases.
  • Basic knowledge of Git and version control.
  • Perseverance and the ability to solve problems and search for information independently.

In addition, fluency in a programming language is recommended, which usually requires 100–200 hours of practice beforehand.


Progress and achievements

This repository contains the complete course (Parts 0 to 7) with all my projects completed to finish the exercises (138 exercises in total).
Result:

  • Full Stack Open CertificateView certificate
  • Highest grade: Grade 5
  • Credits earned: 7 ECTS
  • Total workload: ~145 hours

Official course information


Content by sections

Part 0 – Fundamentals of web development

This part provides an overview of the basic concepts of web development and analyzes advances in web application development over the last few decades.

See Part 0
Total hours: 6


Part 1 – Introduction to React and JavaScript

The React library for building interfaces in the browser is introduced.
Key features of JavaScript necessary for working with React are also reviewed:

  • Components
  • Event handlers
  • State management
  • Application debugging

See Part 1
Total hours: 15


Part 2 – Advancing in React and connecting to the backend

You will learn how to:

  • Represent data collections
  • Manage forms in React
  • Obtain and manage data from a remote backend server
  • Style components with CSS

See Part 2
Total hours: 15


Part 3 – Backend with Node.js and MongoDB

Implementation of a REST API using Node.js + Express, with storage in MongoDB.

  • Data validation
  • Error handling
  • Deployment of the application on the internet
  • Use of ESLint to maintain code quality

See Part 3
Total hours: 22


Part 4 – Testing and authentication in the backend

  • Unit and integration testing for the backend
  • Token-based authentication and authorization (JWT)
  • User management with Mongoose
  • Use of async/await and error handling

See Part 4
Total hours: 20


Part 5 – Frontend testing and authentication

We return to the frontend to:

  • Implement token-based authentication
  • Save and manage the token in local storage
  • Use props.children and PropTypes
  • Unit testing with Vitest
  • Integration testing
  • E2E testing with Playwright

See Part 5
Total hours: 25


Part 6 – Advanced state management

  • Flux pattern and Redux library
  • Redux Toolkit
  • Using multiple reducers and communicating with the server
  • Global state management with React Query and React Context
  • Using Redux to communicate with the server
  • useReducer hook

See Part 6
Total hours: 20


Part 7 – React Router, Hooks, and advanced styles

  • Using React Router for navigation and dynamic routes
  • Creating custom hooks
  • Styles with fram

See Part 7
Total hours: 22

About

This repository contains all the exercises and projects I developed to complete the Full Stack Open course at the University of Helsinki, with a total workload of approximately 145 hours.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published