# dwisusanto29/ml-for-beginners architecture

> Architecture diagram of the GitHub repository dwisusanto29/ml-for-beginners, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-29). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/dwisusanto29/ml-for-beginners
- Repository: https://github.com/dwisusanto29/ml-for-beginners

## Overview

ML for Beginners is a project-based, 12-week machine-learning curriculum, not primarily a software service. A learner moves through quizzes, lessons and knowledge checks, then challenges or projects and assignments; lesson groups cover foundational concepts, supervised and unsupervised methods, and applied topics. The quiz app provides quiz selection and question flow, while lesson materials and solutions are organized in the numbered directories. README documents the overall teaching workflow; sampled source confirms quiz routing and answering, but not links embedded in individual lessons.

Main entry points: [`quiz-app/src/router/index.js`](https://github.com/dwisusanto29/ml-for-beginners/blob/main/quiz-app/src/router/index.js) (Quiz Router), [`quiz-app/src/views/Home.vue`](https://github.com/dwisusanto29/ml-for-beginners/blob/main/quiz-app/src/views/Home.vue) (Quiz Selection), [`2-Regression`](https://github.com/dwisusanto29/ml-for-beginners/tree/main/2-Regression) (Lesson Solutions), [`quiz-app/src/components/Quiz.vue`](https://github.com/dwisusanto29/ml-for-beginners/blob/main/quiz-app/src/components/Quiz.vue) (Quiz Questions)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_curriculum["Curriculum"]
  node_intro["ML Foundations"]
  node_assignments["Challenges &amp; Assignments"]
  node_solutions["Lesson Solutions"]
end

subgraph group_supervised["Supervised Learning"]
  node_regression["Regression"]
  node_webapp["ML Web App"]
  node_classification["Classification"]
end

subgraph group_advanced["Further Topics"]
  node_clustering["Clustering"]
  node_nlp["NLP"]
  node_timeseries["Time Series"]
  node_reinforcement["Reinforcement"]
  node_realworld["Real-World Applications"]
end

subgraph group_quizapp["Quiz App"]
  node_quizhome["Quiz Selection<br/>[Home.vue]"]
  node_router["Quiz Router<br/>[index.js]"]
  node_quiz["Quiz Questions<br/>[Quiz.vue]"]
  node_app["Quiz Shell<br/>[App.vue]"]
  node_entry["App Bootstrap<br/>[main.js]"]
end

node_learner(("Student"))

node_learner -->|"studies"| node_intro
node_learner -->|"studies"| node_regression
node_learner -->|"studies"| node_webapp
node_learner -->|"studies"| node_classification
node_learner -->|"studies"| node_clustering
node_learner -->|"studies"| node_nlp
node_learner -->|"studies"| node_timeseries
node_learner -->|"studies"| node_reinforcement
node_learner -->|"studies"| node_realworld
node_learner -->|"completes"| node_assignments
node_learner -->|"opens quiz"| node_quizhome
node_intro -->|"includes exercises"| node_assignments
node_regression -->|"solution materials"| node_solutions
node_webapp -->|"solution materials"| node_solutions
node_classification -->|"solution materials"| node_solutions
node_entry -->|"renders"| node_app
node_entry -->|"installs router"| node_router
node_app -->|"hosts views"| node_router
node_router -->|"routes home"| node_quizhome
node_router -->|"routes quiz"| node_quiz
node_quizhome -->|"links quizzes"| node_quiz
node_learner -->|"answers"| node_quiz

click node_intro "https://github.com/dwisusanto29/ml-for-beginners/tree/main/1-Introduction"
click node_regression "https://github.com/dwisusanto29/ml-for-beginners/tree/main/2-Regression"
click node_webapp "https://github.com/dwisusanto29/ml-for-beginners/tree/main/3-Web-App"
click node_classification "https://github.com/dwisusanto29/ml-for-beginners/tree/main/4-Classification"
click node_clustering "https://github.com/dwisusanto29/ml-for-beginners/tree/main/5-Clustering"
click node_nlp "https://github.com/dwisusanto29/ml-for-beginners/tree/main/6-NLP"
click node_timeseries "https://github.com/dwisusanto29/ml-for-beginners/tree/main/7-TimeSeries"
click node_reinforcement "https://github.com/dwisusanto29/ml-for-beginners/tree/main/8-Reinforcement"
click node_realworld "https://github.com/dwisusanto29/ml-for-beginners/tree/main/9-Real-World"
click node_assignments "https://github.com/dwisusanto29/ml-for-beginners/tree/main/1-Introduction"
click node_solutions "https://github.com/dwisusanto29/ml-for-beginners/tree/main/2-Regression"
click node_quizhome "https://github.com/dwisusanto29/ml-for-beginners/blob/main/quiz-app/src/views/Home.vue"
click node_router "https://github.com/dwisusanto29/ml-for-beginners/blob/main/quiz-app/src/router/index.js"
click node_quiz "https://github.com/dwisusanto29/ml-for-beginners/blob/main/quiz-app/src/components/Quiz.vue"
click node_app "https://github.com/dwisusanto29/ml-for-beginners/blob/main/quiz-app/src/App.vue"
click node_entry "https://github.com/dwisusanto29/ml-for-beginners/blob/main/quiz-app/src/main.js"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_intro,node_assignments,node_solutions toneBlue
class node_regression,node_webapp,node_classification toneAmber
class node_clustering,node_nlp,node_timeseries,node_reinforcement,node_realworld toneMint
class node_quizhome,node_router,node_quiz,node_app,node_entry toneRose
class node_learner toneIndigo
```

## Components

### Curriculum

- [ML Foundations](https://github.com/dwisusanto29/ml-for-beginners/tree/main/1-Introduction): `1-Introduction`
- [Challenges & Assignments](https://github.com/dwisusanto29/ml-for-beginners/tree/main/1-Introduction): `1-Introduction`
- [Lesson Solutions](https://github.com/dwisusanto29/ml-for-beginners/tree/main/2-Regression): `2-Regression`

### Supervised Learning

- [Regression](https://github.com/dwisusanto29/ml-for-beginners/tree/main/2-Regression): `2-Regression`
- [ML Web App](https://github.com/dwisusanto29/ml-for-beginners/tree/main/3-Web-App): `3-Web-App`
- [Classification](https://github.com/dwisusanto29/ml-for-beginners/tree/main/4-Classification): `4-Classification`

### Further Topics

- [Clustering](https://github.com/dwisusanto29/ml-for-beginners/tree/main/5-Clustering): `5-Clustering`
- [NLP](https://github.com/dwisusanto29/ml-for-beginners/tree/main/6-NLP): `6-NLP`
- [Time Series](https://github.com/dwisusanto29/ml-for-beginners/tree/main/7-TimeSeries): `7-TimeSeries`
- [Reinforcement](https://github.com/dwisusanto29/ml-for-beginners/tree/main/8-Reinforcement): `8-Reinforcement`
- [Real-World Applications](https://github.com/dwisusanto29/ml-for-beginners/tree/main/9-Real-World): `9-Real-World`

### Quiz App

- [Quiz Selection](https://github.com/dwisusanto29/ml-for-beginners/blob/main/quiz-app/src/views/Home.vue): `quiz-app/src/views/Home.vue`
- [Quiz Router](https://github.com/dwisusanto29/ml-for-beginners/blob/main/quiz-app/src/router/index.js): `quiz-app/src/router/index.js`
- [Quiz Questions](https://github.com/dwisusanto29/ml-for-beginners/blob/main/quiz-app/src/components/Quiz.vue): `quiz-app/src/components/Quiz.vue`
- [Quiz Shell](https://github.com/dwisusanto29/ml-for-beginners/blob/main/quiz-app/src/App.vue): `quiz-app/src/App.vue`
- [App Bootstrap](https://github.com/dwisusanto29/ml-for-beginners/blob/main/quiz-app/src/main.js): `quiz-app/src/main.js`

### Other components

- **Student**

## Connections

- Student → ML Foundations: studies
- Student → Regression: studies
- Student → ML Web App: studies
- Student → Classification: studies
- Student → Clustering: studies
- Student → NLP: studies
- Student → Time Series: studies
- Student → Reinforcement: studies
- Student → Real-World Applications: studies
- Student → Challenges & Assignments: completes
- Student → Quiz Selection: opens quiz
- ML Foundations → Challenges & Assignments: includes exercises
- Regression → Lesson Solutions: solution materials
- ML Web App → Lesson Solutions: solution materials
- Classification → Lesson Solutions: solution materials
- App Bootstrap → Quiz Shell: renders
- App Bootstrap → Quiz Router: installs router
- Quiz Shell → Quiz Router: hosts views
- Quiz Router → Quiz Selection: routes home
- Quiz Router → Quiz Questions: routes quiz
- Quiz Selection → Quiz Questions: links quizzes
- Student → Quiz Questions: answers
