How to Contribute a New Course to the cs-video-courses List
To contribute a new course to the cs-video-courses list, edit README.md to add a markdown list entry under the appropriate topic section following the format [Title – Institution – Platform] (URL), then submit a pull request to the master branch.
The Developer-Y/cs-video-courses repository is a curated collection of computer science video lectures maintained as a plain-text markdown document. Because the entire list lives in a single file, contributing a new course requires no code compilation—only precise editing of README.md according to the conventions defined in CONTRIBUTING.md.
Locate the Correct Section in README.md
All courses reside in README.md at the repository root. The file organizes content by topic using ATX headings (e.g., ### Data Structures and Algorithms, ### Artificial Intelligence).
- Open
README.mdin your forked repository. - Find the heading that matches your course’s primary subject.
- Identify the insertion point by reviewing the existing list’s academic level progression.
Courses within each section follow a rough ordering from undergraduate to graduate level. Insert your entry in the appropriate position to maintain this hierarchy.
Format Your Course Entry
Each course is a single unordered list item using standard markdown link syntax. The repository mandates a specific pattern to ensure consistency and searchability.
The required format is:
- [Course title – optional subtitle – Institution (Semester/Year) – Platform] (URL)
Critical requirements from CONTRIBUTING.md:
- The URL must point directly to the video collection or playlist, not to a course registration page or university portal.
- Use an en-dash (–) or hyphen (-) to separate fields within the title text.
- Precede the entry with a hyphen and space (
-) to maintain list structure.
Example entry for a machine learning course:
- [CS 330 – Introduction to Machine Learning – University of XYZ – Fall 2024 – YouTube] \
(https://www.youtube.com/playlist?list=PLxxxxxxxxxxxxxxxx)
Preserve Course Ordering
Maintaining logical flow is essential for readability. Within each topical section, entries are roughly sorted by academic progression:
### Machine Learning
- [CS 229 – Machine Learning – Stanford – Fall 2023 – YouTube] (https://youtu.be/xxxx)
- [CS 330 – Introduction to Machine Learning – University XYZ – Fall 2024 – YouTube] (https://youtu.be/yyyy)
- [CS 484 – Deep Learning – Carnegie Mellon – Spring 2025 – YouTube] (https://youtu.be/zzzz)
Place introductory undergraduate courses earlier in the list, followed by advanced graduate-level content.
Submit Your Contribution via Pull Request
After editing README.md, submit your changes through the standard GitHub workflow. The repository’s CI workflow only verifies that the PR builds successfully; no compilation or test suite execution is required.
Complete contribution workflow:
# 1. Fork the repository via the GitHub web interface
# 2. Clone your fork locally
git clone https://github.com/<your-username>/cs-video-courses.git
cd cs-video-courses
# 3. Create a descriptive branch
git checkout -b add-ml-course
# 4. Edit README.md, inserting your entry under the correct heading
# 5. Stage and commit with a clear message
git add README.md
git commit -m "Add CS 330 – Intro to Machine Learning (University of XYZ) to ML section"
# 6. Push to your fork
git push origin add-ml-course
# 7. Open a Pull Request targeting the upstream master branch
Ensure your PR description references the specific course and verifies that the link points directly to video content as mandated by the contribution guidelines.
Key Files Reference
README.md: Contains the searchable master list of all video courses, organized by computer science topic.CONTRIBUTING.md: Defines formatting standards, quality rules, and ordering conventions for new entries.
Summary
- Edit
README.mdto add your course; the repository stores all data in this single file. - Follow the strict format:
- [Title – Institution – Platform] (Direct-Video-URL). - Maintain ordering: Insert undergraduate courses before graduate-level content within each section.
- Target the
masterbranch with your pull request; no code compilation is required for the CI check. - Reference
CONTRIBUTING.mdfor detailed quality standards and formatting rules.
Frequently Asked Questions
What file do I edit to add a new course?
Edit README.md at the repository root. This file contains the entire curated list, organized by topic sections. Do not create new files or modify other documents unless specifically requested by maintainers.
What is the exact format required for a course entry?
Use a markdown list item with a structured title and direct URL: - [Course Title – Institution – Year – Platform] (URL). The link must point directly to the video playlist or lecture series, not to a university registration page, according to the rules in CONTRIBUTING.md.
Do I need to run tests or compile code before submitting?
No. The cs-video-courses repository contains no executable code. The CI workflow only checks that the pull request builds the repository successfully. However, you should verify that your markdown renders correctly and that all URLs are accessible.
How are courses organized within each section?
Courses are roughly ordered by academic level, progressing from undergraduate introductions to advanced graduate seminars. When adding a new entry, scan the existing list in that section and insert your course in the appropriate position to maintain this logical flow.
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 →