# jonasschmedtmann/complete-javascript-course

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/jonasschmedtmann-complete-javascript-course).**

17,154 stars · 17,492 forks · JavaScript

## Links

- GitHub: https://github.com/jonasschmedtmann/complete-javascript-course
- Homepage: https://www.udemy.com/the-complete-javascript-course/?couponCode=C3GITHUB10
- awesome-repositories: https://awesome-repositories.com/repository/jonasschmedtmann-complete-javascript-course.md

## Topics

`javascript-course` `starter-files` `udemy`

## Description

This project is a JavaScript educational resource and frontend web development course. It provides a collection of starter files and final projects designed to teach the JavaScript programming language through practical application.

The material functions as a project portfolio and implementation guide, demonstrating how to build interactive user interfaces using the document object model. It focuses on event handling, object oriented programming, and the integration of native browser features.

The course covers a range of capability areas, including asynchronous data fetching, client-side application logic, and state management. Practical exercises include building interactive games, financial simulators, and applications that utilize geolocation services.

## Tags

### Education & Learning Resources

- [JavaScript Learning Curricula](https://awesome-repositories.com/f/education-learning-resources/javascript-learning-curricula.md) — Provides a structured curriculum with exercises for mastering JavaScript language features and programming concepts.
- [Object Oriented Patterns](https://awesome-repositories.com/f/education-learning-resources/educational-resources/languages-and-programming-concepts/software-engineering-languages/language-fundamentals/object-oriented-patterns.md) — Explains the mechanics of object creation and prototype chains for organizing application data and behavior.
- [Frontend Development Training](https://awesome-repositories.com/f/education-learning-resources/frontend-development-training.md) — Offers guided programming tasks focused on event handling and object-oriented programming for dynamic user interfaces.
- [JavaScript Learning Resources](https://awesome-repositories.com/f/education-learning-resources/javascript-learning-resources.md) — Provides starter files and final projects to teach the JavaScript language through practical application.
- [Programming Course Materials](https://awesome-repositories.com/f/education-learning-resources/programming-course-materials.md) — Provides structured sets of exercises and projects for teaching programming via DOM manipulation and browser APIs.

### Web Development

- [Frontend Development Tutorials](https://awesome-repositories.com/f/web-development/frontend-development-tutorials.md) — Provides a comprehensive collection of learning resources and projects focused on client-side application development.
- [Browser APIs](https://awesome-repositories.com/f/web-development/browser-integration-utilities/browser-apis.md) — Demonstrates how to integrate native browser features like geolocation and network requests into web applications.
- [Client-Side Logic](https://awesome-repositories.com/f/web-development/client-side-logic.md) — Implements browser-based state management and user interaction scripts for functional web interfaces.
- [DOM Manipulation](https://awesome-repositories.com/f/web-development/dom-manipulation.md) — Provides practical exercises for dynamically updating web page structure and content via native DOM manipulation.
- [Event-Driven Architectures](https://awesome-repositories.com/f/web-development/event-driven-architectures.md) — Implements interactive patterns where JavaScript functions are triggered by user-driven browser events.
- [Browser API Integrations](https://awesome-repositories.com/f/web-development/browser-api-integrations.md) — Demonstrates how to integrate web applications with native browser capabilities to access system and hardware data.

### Part of an Awesome List

- [Real World Applications](https://awesome-repositories.com/f/awesome-lists/devtools/real-world-applications.md) — Ships a portfolio of complete software projects demonstrating production-ready frontend implementation patterns. ([source](https://github.com/jonasschmedtmann/complete-javascript-course#readme))
- [Javascript Projects](https://awesome-repositories.com/f/awesome-lists/devtools/javascript-projects.md) — Contains a portfolio of functional applications demonstrating state management and asynchronous data fetching.

### Data & Databases

- [Application State Management](https://awesome-repositories.com/f/data-databases/application-state-management.md) — Provides techniques for managing and synchronizing application-wide state using complex data structures. ([source](https://github.com/jonasschmedtmann/complete-javascript-course#readme))
- [Asynchronous Data Fetching](https://awesome-repositories.com/f/data-databases/asynchronous-data-fetching.md) — Provides implementation examples for retrieving structured data from external servers using non-blocking asynchronous promises.
- [State-Driven Data Flow Architectures](https://awesome-repositories.com/f/data-databases/state-driven-data-flow-architectures.md) — Teaches patterns for managing data flow and triggering UI updates based on changes in application state.

### Software Engineering & Architecture

- [Object-Oriented Modeling](https://awesome-repositories.com/f/software-engineering-architecture/object-oriented-models/object-oriented-modeling.md) — Offers pedagogical resources on representing real-world entities using JavaScript classes and prototype inheritance.

### Game Development

- [Game Development](https://awesome-repositories.com/f/game-development.md) — Includes practical projects for creating interactive browser games using state-driven DOM updates. ([source](https://github.com/jonasschmedtmann/complete-javascript-course/blob/master/README.md))

### Programming Languages & Runtimes

- [Asynchronous Promise Interfaces](https://awesome-repositories.com/f/programming-languages-runtimes/asynchronous-promise-interfaces.md) — Demonstrates architectural patterns using promises to handle non-blocking network operations in the browser.

### User Interface & Experience

- [Geolocation Access](https://awesome-repositories.com/f/user-interface-experience/geolocation-access.md) — Teaches how to request and monitor physical location coordinates using the browser's native geolocation API.
