mcpp-community/d2mcpp

D2X | Modern C++ Core Language Features - "A C++ tutorial project focused on practical"

C++

1,774

113 commits

updated Aug 2, 2026

See the code

README

D2X | Modern C++ Core Language Features - "A C++ tutorial project focused on practical"

📚Book + 🎥Video + ⌨️Code + 👥X

Goals

  • [Master] - Core language features of Modern C++ and their usage scenarios
  • [Master] - The ability to identify and debug issues using compiler error messages
  • [Familiarize] - The ability to solve unfamiliar C++ problems using documentation and cppreference
  • [Understand] - How to participate in the technical community — using open-source projects, asking questions, joining discussions, or contributing

[!CAUTION] This project is currently in its early development stage. If you encounter any issues, feel free to create an issue for feedback or directly submit a PR to fix it.

Quick Start

Try Code -> Book -> Video -> X -> Code

Interactive Code Practice (Online)

click the button below — the cloud environment configures itself (a few minutes on first launch), then the exercise checker starts automatically

Open in GitHub Codespaces

Interactive Code Practice (Local)

Step 1 - Install the d2x and mcpp tools

click to view xlings installation command

Linux/MacOS

curl -fsSL https://raw.githubusercontent.com/openxlings/xlings/main/tools/other/quick_install.sh | bash

Windows - PowerShell

irm https://raw.githubusercontent.com/openxlings/xlings/main/tools/other/quick_install.ps1 | iex

tips: xlings -> details


xlings install d2x mcpp -y   # d2x: exercise framework CLI | mcpp: C++ build & test tool

Step 2 - Get the course, then configure and verify the environment

d2x install d2mcpp           # download the course, toolchain auto-configured
cd d2mcpp
mcpp test -p solutions       # verify the environment: 52 reference answers, all green

solutions/ is a real mcpp package, so this compiles and runs all 52 reference answers — an unambiguous green tick that your toolchain is ready.

optional - start from the git source instead
git clone https://github.com/mcpp-community/d2mcpp.git   # or your fork
cd d2mcpp
xlings install -y            # toolchain pinned by .xlings.json
mcpp test -p solutions       # same environment check

Tip: fork this repo and clone your fork — git commit / push keeps your practice progress in your own repository.


Step 3 - Start practicing

d2x checker                  # practice loop: edit -> save -> auto-check -> advance
d2x status                   # progress overview

Prefer plain mcpp? The exercises are the tests — mcpp test prints your whole progress table (all red until you start), and mcpp test -p src/cpp11 runs a single chapter.

👉 more details...

Community

Note: Complex issues (technical, environment setup, etc.) are recommended to be posted on the forum and detailed description of the problem can be more effective in problem solving and reuse.

Contributing

  • Community Communication: Report issues, participate in community discussions, and help new users solve problems.
  • Project Maintenance and Development: Participate in community issue resolution, bug fixes, multilingual support, join the MSCP activity group, and develop and optimize new features and modules.

📑License & CLA

👥Contributors

Star History Chart

Featured|HelloGitHub

course
cpp
d2x
exercises
modern-cpp
open-source
tutorial
video
xlings

mcpp-community/d2mcpp

D2X | Modern C++ Core Language Features - "A C++ tutorial project focused on practical"

C++

1,774

113 commits

updated Aug 2, 2026

See the code

README

D2X | Modern C++ Core Language Features - "A C++ tutorial project focused on practical"

📚Book + 🎥Video + ⌨️Code + 👥X

Goals

  • [Master] - Core language features of Modern C++ and their usage scenarios
  • [Master] - The ability to identify and debug issues using compiler error messages
  • [Familiarize] - The ability to solve unfamiliar C++ problems using documentation and cppreference
  • [Understand] - How to participate in the technical community — using open-source projects, asking questions, joining discussions, or contributing

[!CAUTION] This project is currently in its early development stage. If you encounter any issues, feel free to create an issue for feedback or directly submit a PR to fix it.

Quick Start

Try Code -> Book -> Video -> X -> Code

Interactive Code Practice (Online)

click the button below — the cloud environment configures itself (a few minutes on first launch), then the exercise checker starts automatically

Open in GitHub Codespaces

Interactive Code Practice (Local)

Step 1 - Install the d2x and mcpp tools

click to view xlings installation command

Linux/MacOS

curl -fsSL https://raw.githubusercontent.com/openxlings/xlings/main/tools/other/quick_install.sh | bash

Windows - PowerShell

irm https://raw.githubusercontent.com/openxlings/xlings/main/tools/other/quick_install.ps1 | iex

tips: xlings -> details


xlings install d2x mcpp -y   # d2x: exercise framework CLI | mcpp: C++ build & test tool

Step 2 - Get the course, then configure and verify the environment

d2x install d2mcpp           # download the course, toolchain auto-configured
cd d2mcpp
mcpp test -p solutions       # verify the environment: 52 reference answers, all green

solutions/ is a real mcpp package, so this compiles and runs all 52 reference answers — an unambiguous green tick that your toolchain is ready.

optional - start from the git source instead
git clone https://github.com/mcpp-community/d2mcpp.git   # or your fork
cd d2mcpp
xlings install -y            # toolchain pinned by .xlings.json
mcpp test -p solutions       # same environment check

Tip: fork this repo and clone your fork — git commit / push keeps your practice progress in your own repository.


Step 3 - Start practicing

d2x checker                  # practice loop: edit -> save -> auto-check -> advance
d2x status                   # progress overview

Prefer plain mcpp? The exercises are the tests — mcpp test prints your whole progress table (all red until you start), and mcpp test -p src/cpp11 runs a single chapter.

👉 more details...

Community

Note: Complex issues (technical, environment setup, etc.) are recommended to be posted on the forum and detailed description of the problem can be more effective in problem solving and reuse.

Contributing

  • Community Communication: Report issues, participate in community discussions, and help new users solve problems.
  • Project Maintenance and Development: Participate in community issue resolution, bug fixes, multilingual support, join the MSCP activity group, and develop and optimize new features and modules.

📑License & CLA

👥Contributors

Star History Chart

Featured|HelloGitHub

course
cpp
d2x
exercises
modern-cpp
open-source
tutorial
video
xlings

Significant stargazers

Kyle

892 followers · starred Aug 2025

Salman Qureshi

696 followers · starred Jul 2025

Dongjie Wu

10 followers · starred Aug 2025

Mingxi

32 followers · starred Jul 2025