33 JS concepts
33 JS concepts

33 concepts every JavaScript developer should know.

33 JavaScript Concepts repository is hosted on GitHub by leonardomso (Leonardo Maldonado). This repository serves as a comprehensive open source educational guide for developers focusing on mastering JavaScript fundamentals.

Here is a summary of its primary features and functionalities, along with the foundational GitHub features that support it:

I. Core Repository Content (33-js-concepts)

  • Educational Purpose: The repository aims to help developers master their concepts in JavaScript. It is explicitly described as a guide for future studies and was considered by GitHub as one of the top open source projects of 2018.

  • Structured Curriculum: The core feature is a detailed Table of Contents outlining 33 essential JavaScript concepts. These concepts range across various levels of complexity and cover:

    • Execution and Scoping: Call Stack, Message Queue and Event Loop, setTimeout, setInterval and requestAnimationFrame, Function Scope, Block Scope and Lexical Scope.

    • Data and Typing: Primitive Types, Value Types and Reference Types, Implicit, Explicit, Nominal, Structuring and Duck Typing, and the differences between == vs === vs typeof.

    • Object and Inheritance Models: Factories and Classes, this, call, apply and bind, Prototype Inheritance and Prototype Chain, Object.create and Object.assign.

    • Functional Programming: map, reduce, filter, Pure Functions, Side Effects, Closures, High Order Functions, Recursion, Partial Applications, Currying, Compose and Pipe.

    • Asynchronicity: Promises and async/await.

    • Performance and Architecture: Data Structures, Expensive Operation and Big O Notation, Algorithms, and Design Patterns.

  • Rich Resources: Each concept is accompanied by extensive external resources, including References (MDN), numerous explanatory Articles, and educational Videos.

  • Community and Translation: The project encourages community involvement through submitting Pull Requests (PRs) for adding recaps or reviews. It is highly translated, with versions available in languages such as Arabic, Chinese, Brazilian Portuguese, Spanish, Turkish, Russian, French, German, and many others.

  • Technical Details: The repository is public, primarily written in JavaScript (100.0%), and licensed under the MIT License.

II. GitHub Platform Features (Context)

As this educational resource lives on GitHub, it is supported by the platform's comprehensive tools:

  • AI Code Creation: GitHub provides tools like GitHub Copilot (to write better code with AI), GitHub Spark (to build and deploy intelligent apps), GitHub Models (to manage and compare prompts), and the MCP Registry (to integrate external tools).

  • Developer Workflows: Features to automate and manage development include Actions (to automate any workflow), Codespaces (for instant dev environments), Issues (to plan and track work), and Code Review (to manage code changes).

  • Application Security: The platform supports Code security (to secure code as you build), Secret protection (to stop leaks), and the add-on GitHub Advanced Security (to find and fix vulnerabilities).

  • Exploration and Learning: Users can search code, repositories, users, issues, and pull requests. The platform also offers resources like a Documentation hub, a Blog, a Marketplace, and GitHub Skills.

  • Enterprise Solutions: For businesses, GitHub offers an Enterprise platform (an AI-powered developer platform), Copilot for Business (enterprise-grade AI features), and Premium Support.