MIT License Terms and Forking Guidelines for AI Engineering from Scratch
The AI Engineering from Scratch repository is released under the MIT License, which permits unrestricted use, modification, and distribution provided the copyright notice and license text are preserved, while the FORKING.md file provides audience-specific workflows for teams, schools, and translators.
The open-source curriculum in rohitg00/ai-engineering-from-scratch is designed for maximum reusability under the MIT License. Understanding the specific terms and conditions for reuse ensures compliance while maximizing the educational value of the codebase. The repository's FORKING.md file complements the license with practical guidance for maintaining attribution and syncing with upstream changes.
MIT License Requirements and Conditions
The license text in LICENSE (lines 1-22) establishes a permissive legal framework with only two mandatory conditions for reuse.
Preserve the Copyright Notice
All copies or substantial portions of the code must include the full copyright line and permission notice exactly as they appear in lines 12-13 of the LICENSE file. This requirement applies whether you are distributing the original code, a modified version, or a larger work that incorporates this curriculum.
Include the Full License Text
Redistributions must carry the entire MIT license text to maintain legal validity. This ensures downstream users understand their rights and obligations when receiving your derivative work.
Warranty Disclaimer
Lines 15-21 of the LICENSE file explicitly state the software is provided "as-is" without warranty of any kind. The authors disclaim liability for any claim, damages, or other liability arising from the software or its use.
Forking Guide and Recommended Workflows
The FORKING.md file provides tailored workflows for different audiences who want to extend the curriculum while maintaining best practices for open-source contribution.
Audience-Specific Forking Strategies
The guide outlines distinct approaches based on your organizational needs:
- Teams: Fork the repository, prune unused phases, add internal examples, and preserve attribution headers in your customized version.
- Schools / Universities: Fork the repository, map phases to your semester structure, add rubrics and assignments, and consider contributing improvements back upstream.
- Bootcamps: Fork the repository, restructure content for your cohort schedule, add video or mentorship materials, and explore sponsorship opportunities.
- Translators / Other Languages: Fork the repository, re-implement examples in a new programming language, preserve the lesson structure, and submit a pull request linking back to the original.
Syncing with Upstream
Lines 44-50 of FORKING.md document the standard Git workflow for keeping your fork updated. First, add the original repository as an upstream remote:
git remote add upstream https://github.com/rohitg00/ai-engineering-from-scratch.git
Then fetch and merge the latest changes:
git fetch upstream
git merge upstream/main
Resolve any conflicts as needed to incorporate upstream improvements into your customized version.
Optional Attribution
While the MIT license does not legally require attribution, lines 52-58 of FORKING.md recommend adding a simple credit notice to respect the community. A recommended format includes stating "Based on AI Engineering from Scratch" and linking to the original repository.
Practical Implementation Examples
When reusing or extending this curriculum, implement these code patterns to ensure compliance.
Adding the MIT License Header to New Files
Include a standard header in any new files you add to derivative works:
# ----------------------------------------------------------------------
# AI Engineering from Scratch – Example Module
# Copyright (c) 2026 Rohit Ghumare
# Licensed under the MIT License – see LICENSE file for details.
# ----------------------------------------------------------------------
Minimal Fork Update Script
Automate synchronization using this bash workflow:
# Add upstream reference (run once)
git remote add upstream https://github.com/rohitg00/ai-engineering-from-scratch.git
# Pull latest changes from the original repo
git fetch upstream
git merge upstream/main # resolve any conflicts as needed
Optional Attribution Block for Your README
Include this markdown block in your repository's README to acknowledge the source:
## Attribution
Based on **AI Engineering from Scratch**
https://github.com/rohitg00/ai-engineering-from-scratch
Summary
- The MIT License permits commercial use, modification, distribution, and sublicensing without restriction.
- You must preserve the copyright notice as found in
LICENSElines 12-13 in all copies. - You must include the full license text from
LICENSElines 1-22 with any redistribution. - The
FORKING.mdfile provides specific workflows for teams, schools, bootcamps, and translators. - Use
git remote add upstreamfollowed byfetchandmergeto sync changes perFORKING.mdlines 44-50. - Attribution is recommended though not legally required under MIT terms.
Frequently Asked Questions
Do I need to pay royalties to use this curriculum commercially?
No. The MIT License explicitly permits selling copies of the software or derivative works without royalty obligations. You can package this curriculum into paid courses, books, or training materials provided you include the original copyright notice and MIT license text as specified in lines 1-22 of the LICENSE file.
Can I remove the original copyright notice if I substantially modify the code?
No. The MIT License requires the copyright notice and permission notice to appear in all copies or substantial portions of the software. This obligation persists regardless of how extensively you modify the original content, as stated in lines 12-13 of the LICENSE file.
Is attribution mandatory under the MIT License?
Legally no, but ethically yes. While the MIT License text in LICENSE does not require attribution beyond preserving the copyright notice, FORKING.md lines 52-58 recommends including a credit notice to acknowledge the original work and support the community.
How do I keep my fork updated with bug fixes from the original repository?
Add the original repository as an upstream remote using git remote add upstream https://github.com/rohitg00/ai-engineering-from-scratch.git, then periodically run git fetch upstream followed by git merge upstream/main to incorporate updates. This workflow is documented in FORKING.md lines 44-50 and ensures your derivative work benefits from upstream improvements.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →