# AI Engineering from Scratch Roadmap for Future Development: 20 Phases, 503 Lessons, and ~1,050 Hours

> Explore the AI Engineering from Scratch roadmap with 20 phases and 503 lessons. Plan your learning journey for future development with this extensive curriculum.

- Repository: [Rohit Ghumare/ai-engineering-from-scratch](https://github.com/rohitg00/ai-engineering-from-scratch)
- Tags: roadmap
- Published: 2026-06-06

---

**Yes, `rohitg00/ai-engineering-from-scratch` maintains a comprehensive, publicly-visible roadmap for future development inside [`ROADMAP.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/ROADMAP.md), tracking 20 phases, 503 lessons, and approximately 1,050 hours of planned and in-progress curriculum work.**

The open-source curriculum does not hide its future plans. Instead, it publishes a detailed **roadmap for future development** directly in the repository root, giving contributors and learners full visibility into what is complete, under construction, or still planned. This living document serves as the single source of truth for all current and upcoming content.

## Where the Roadmap Lives and How It Is Structured

The definitive plan resides in two locations:

- **[`ROADMAP.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/ROADMAP.md)** at the repository root — the central curriculum status tracker.
- The **`phases/`** directory — contains the detailed phase breakdowns.

Inside [`ROADMAP.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/ROADMAP.md), every lesson is marked with a status glyph. These glyphs are not decorative; they drive automation. **✅** indicates a complete lesson, **🚧** marks work in progress, and **⬚** denotes planned content. Each phase covers a thematic block such as “Setup & Tooling,” “Math Foundations,” “Deep Learning Core,” “Vision,” “NLP,” “LLMs from Scratch,” and “Agent Engineering.”

## Curriculum Scope: 20 Phases and ~1,050 Hours

The roadmap enumerates **20 phases**, **503 lessons**, and an estimated **~1,050 hours** of learning and implementation work. This makes the roadmap the definitive plan for all current and future development of the project.

Because the document is version-controlled and publicly editable, contributors can see exactly what remains to be built. New lessons are added by contributors over time, and status updates reflect real-time progress.

## How [`site/build.js`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/site/build.js) Turns the Roadmap into the Public Website

The repository does not force users to read raw Markdown. As implemented in `rohitg00/ai-engineering-from-scratch`, the file **[`site/build.js`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/site/build.js)** parses the roadmap glyphs and converts them into structured data.

It reads [`ROADMAP.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/ROADMAP.md), interprets the status symbols, and outputs **[`site/data.js`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/site/data.js)**. This generated file powers the online curriculum viewer, turning the static roadmap into a browsable web interface.

## Inspecting the Roadmap Programmatically

You can consume the roadmap from CI pipelines, custom dashboards, or local scripts. The examples below query the raw [`ROADMAP.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/ROADMAP.md) directly from GitHub.

### Fetch Planned Lessons with Python

The following script downloads the roadmap and lists every lesson still marked ⬚ (planned):

```python
import requests
import re

URL = "https://raw.githubusercontent.com/rohitg00/ai-engineering-from-scratch/main/ROADMAP.md"
text = requests.get(URL).text

# Find all lines that start a new lesson entry and are still ⬚ (planned)

planned = re.findall(r'\|\s*\d+\s*\|\s*\[(.*?)\]\(.*?\)\s*\|\s*⬚', text)
print("Planned lessons:")
for title in planned:
    print("- " + title)

```

### Check Phase Progress with Bash

For a quick terminal overview of completed lessons by phase, use `curl` and `awk`:

```bash
curl -s https://raw.githubusercontent.com/rohitg00/ai-engineering-from-scratch/main/ROADMAP.md |
awk '/## Phase [0-9]+:/ {phase=$0} /\| ✅ \|/ {print phase ": " $0}' |

head -n 20

```

These snippets illustrate how the roadmap can be consumed by tools and integrated into external trackers.

## Key Files That Govern Future Development

Beyond [`ROADMAP.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/ROADMAP.md), several files ensure the roadmap stays accurate and consistent:

- **[`AGENTS.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/AGENTS.md)** — Defines repository conventions, including the one-commit-per-lesson rule, which keeps roadmap status aligned with actual repository history.
- **[`README.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/README.md)** — The public landing page that is automatically synced with roadmap counts via CI.
- **[`site/build.js`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/site/build.js)** — Parses [`ROADMAP.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/ROADMAP.md) into [`site/data.js`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/site/data.js) for the web viewer.

Together, these files constitute the source of truth for the project’s future development plan.

## Summary

- The **roadmap for future development** lives in **[`ROADMAP.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/ROADMAP.md)** and the **`phases/`** directory.
- It tracks **20 phases**, **503 lessons**, and roughly **1,050 hours** of content.
- Status glyphs (**✅**, **🚧**, **⬚**) drive both human readability and the **[`site/build.js`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/site/build.js)** generator.
- **[`AGENTS.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/AGENTS.md)** and CI-synced **[`README.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/README.md)** enforce conventions that keep the roadmap accurate.
- You can query the roadmap programmatically using Python or Bash to build custom dashboards.

## Frequently Asked Questions

### Is there a public roadmap for ai-engineering-from-scratch?

Yes. The repository includes a comprehensive, publicly-visible roadmap for future development in [`ROADMAP.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/ROADMAP.md). It contains 20 phases and 503 lessons, each marked with completion status glyphs.

### How is the roadmap updated?

Contributors add new lessons directly to [`ROADMAP.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/ROADMAP.md) and the `phases/` folder. Status glyphs are updated manually, and repository conventions defined in [`AGENTS.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/AGENTS.md) enforce a one-commit-per-lesson rule to keep history clean.

### What do the status symbols in the roadmap mean?

The three glyphs indicate progress: **✅** means the lesson is complete, **🚧** means it is in progress, and **⬚** means it is planned but not yet started. These symbols are parsed by [`site/build.js`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/site/build.js) to generate the public website.

### Can I use the roadmap data in my own tools?

Yes. Because [`ROADMAP.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/ROADMAP.md) is plain Markdown hosted on GitHub, you can fetch it with standard HTTP requests. The Python and Bash examples above show how to filter for planned or completed lessons programmatically.