
Course structure overview covering GitHub Copilot installation, core features, advanced configuration, and language-specific practice sections for JavaScript, Python, Java, and React using Visual Studio Code.
Udemy platform tips including video playback speed controls, downloadable course resources and GitHub diffs, the Q&A section, and the course announcements tab.
Defines GitHub Copilot as an AI coding assistant built on large language models from OpenAI and Anthropic, covering autocomplete, chat, code explanation, test generation, and context limitations.
GitHub Copilot signup using a GitHub account, comparing the free tier (2,000 completions, 50 chat requests per month) against the Pro, business, and enterprise plans.
GitHub Copilot activation inside Visual Studio Code by signing in with a GitHub account, using the built-in integration that requires no separate extension install.
GitHub Copilot plugin installation and GitHub account device login inside IntelliJ IDEA, including enabling GitHub Copilot Chat with the Ctrl+Shift+C shortcut.
GitHub Copilot privacy settings covering data usage for AI model training on Free, Pro, and Pro+ plans, and how to opt out through the Copilot account settings.
GitHub Copilot troubleshooting using VS Code output logs, the chat diagnostics command, GitHub API status checks, and the manage chat settings for disabled features.
Overview of GitHub Copilot Chat topics covered in this section: code completions, explain/review/fix/document, unit test generation, and non-deterministic LLM behavior.
GitHub Copilot Chat interface walkthrough covering chat history, agent mode, ask mode, plan mode, the model selector, and the agent customizations panel for agents, skills, instructions, prompts, hooks, and MCP servers.
GitHub Copilot Chat context handling using opened files, selected code, dragged-in folders, and workspace scanning, plus context window size limitations for large codebases.
GitHub Copilot Chat advanced features: inline chat editing, edit mode file changes, chat participants (@workspace, @terminal, @github), slash commands, and the fetch tool for reading live web pages.
GitHub Copilot code completions (ghost text) triggered by comments and function names, accepting suggestions with Tab, the completions panel, and snoozing or disabling autocomplete.
GitHub Copilot's explain, review, fix, and document commands for understanding unfamiliar code, catching bugs like a missing await keyword, and generating code documentation.
GitHub Copilot unit test generation using the setup tests command to install and configure Vitest in agent mode, then generating tests for math and date utility functions.
Using GitHub Copilot Chat as a learning tool with quiz-style Q&A on programming topics like Python string manipulation, plus explanations of regular expressions and unfamiliar scripts.
GitHub Copilot image input for extracting text from screenshots into markdown files and extracting a color theme from a reference image to restyle project CSS files.
Prompt engineering tips for GitHub Copilot covering context use, breaking tasks into simple instructions, being specific with requirements, and dictating prompts with the VS Code Speech extension.
How GitHub Copilot's large language models process tokens and context size, using the OpenAI Tokenizer to visualize tokenization and comparing model context windows like Claude Haiku 4.5.
Anatomy of a GitHub Copilot Chat request: prompt, file context, chat history, system instructions, and tool definitions, inspected using the context window indicator and chat debug view.
Overview of advanced GitHub Copilot configuration topics covered in this section: instructions, prompt files, custom agents, hooks, and agent mode for building applications.
GitHub Copilot's customizations tab for managing agents, skills, instructions, prompts, hooks, and MCP servers at built-in, workspace (.github folder), and user levels.
Creating GitHub Copilot custom instructions using the copilot-instructions.md file in the .github folder, generating project-specific instructions, and splitting rules into multiple .instructions.md files with applyTo scoping.
Configuring GitHub Copilot commit message generation with custom instructions in .vscode/settings.json, including adding emojis to generated commit messages.
Building reusable GitHub Copilot prompt files (.prompt.md) with model and tool selection, using them to create a custom code review prompt that references copilot-instructions.md.
Creating custom GitHub Copilot agents (.agent.md) with configured name, description, model, and tools, including a documentation-lookup agent using the fetch tool for Playwright docs.
GitHub Copilot agent hooks configured as JSON files for lifecycle events like userPromptSubmitted and sessionStart, including a hook that injects the local Node.js version into chat context.
Building a complete Snake game with GitHub Copilot agent mode on a Vite-generated React and TypeScript project, from initial prompt to a working, playable app.
Difference between agentic and non-agentic AI workflows, and how AI agents plan, reason, and use tools like file access and web fetch inside GitHub Copilot.
Model Context Protocol (MCP) explained as a standardized interface connecting GitHub Copilot to external services like GitHub, JIRA, Playwright, and web search.
Installing the GitHub MCP server through VS Code's built-in MCP extensions, authenticating with GitHub, and using natural language to create branches, commits, and pull requests.
Manually installing a custom MCP server (Airbnb) as an npm package via the mcp.json configuration file, then querying it through GitHub Copilot Chat in agent mode.
Building a get-tasks.prompt.md prompt file that uses the GitHub MCP server to fetch assigned pull requests and issues into a daily markdown task list.
Introduction to GitHub Copilot Agent Skills as reusable markdown instructions (skill.md) loaded into context on demand to eliminate repetitive prompting.
Building a GitHub Copilot Agent Skill from scratch: a skills folder with skill.md, a referenced template.md response file, and a Node.js script invoked from the skill for dynamic output.
Building a practical count-tests Agent Skill that runs a Node.js script to count test files and cases, then formats the JSON output using a template.md response.
Decision guide for when to use GitHub Copilot custom instructions, prompt files, custom agents, skills, or MCP servers based on task complexity and repetition.
The Awesome Copilot community resource for pre-built custom agents, instruction files, skills, and hooks, installable directly into VS Code with one click.
Token-saving tips for GitHub Copilot's usage-based billing: clearing chats, using cheaper models, keeping MCP servers and instructions local to a project, and the Caveman tool.
Introduction to the hands-on project sections: a password checker built with GitHub Copilot in JavaScript, Python, and Java, each with generated unit tests.
Overview of the upcoming password checker project built with GitHub Copilot, implemented separately in JavaScript/Node.js, Python, and Java practice sections.
Writing a JavaScript password checker function using GitHub Copilot code completions, rewriting the implementation without regular expressions, and generating JSDoc documentation.
Generating unit tests for a JavaScript password checker using GitHub Copilot with Node.js's built-in test module (node:test) and node:assert, including debugging import errors.
Iterating on a GitHub Copilot prompt to update a password checker's regular expression for a new requirement, then updating the corresponding unit tests to match.
GitHub Copilot assistance initializing a TypeScript project, generating a .gitignore file, inferring a TypeScript type from an object, and using template literal types with quick fixes.
TypeScript array exercises with GitHub Copilot: generating sample employee data and writing find, filter, map, and reduce implementations for salary and name queries.
Optional MySQL database setup for later Node.js and Java projects, including creating a database, checking the connection port, and configuring the SQLTools VS Code extension.
Introduction to the Express and MySQL backend project: a REST API for employee CRUD operations built with GitHub Copilot's assistance.
Initializing an Express and TypeScript backend project with GitHub Copilot: installing Express 5, ts-node, @types/express, and the mysql2 driver, plus a generated .gitignore.
Setting up a MySQL database connection in a Node.js Express project with GitHub Copilot: a db config file, an EmployeeRepository class using mysql2's connection pool, and a connection test script.
Generating SQL CRUD queries in TypeScript with GitHub Copilot from typed method signatures: get employees, get by ID, add, update position, delete, and filter by position.
Building an Express server class with a router and employee routes using GitHub Copilot, then testing the /hello endpoint with the REST Client VS Code extension.
Building an EmployeeController layer between Express routes and the repository with GitHub Copilot, implementing get, get by ID, add, update, and delete endpoints with try/catch error handling.
End-to-end testing of the Express employee REST API's GET, POST, PUT, and DELETE endpoints using .http request files in the REST Client VS Code extension.
Key takeaways on GitHub Copilot's stronger performance with popular frameworks like Express and with TypeScript's explicit types, with a pointer to the React section.
Overview of the Python section: a GitHub Copilot password checker, list exercises, and matplotlib data visualization, using the Python, Pylance, and Black formatter VS Code extensions.
Writing a Python password validator with GitHub Copilot in three versions: boolean return, raised error messages, and a regular-expression-based implementation.
Generating Python docstrings for password checker functions and meaningful Git commit messages with GitHub Copilot's inline generation features.
Setting up Python unit testing with GitHub Copilot using the built-in unittest module, writing the first test case, and running tests from the terminal.
Writing and generating Python unittest cases with GitHub Copilot for password length, case, digit, and special-character checks, including tests for the error-message function variant.
Python list exercises with GitHub Copilot: generating an Employee class, sample data, and functions to get names, maximum salary, and employees above a salary threshold.
Python virtual environment setup with venv: creating, activating, and deactivating the environment, installing matplotlib via requirements.txt, and generating README setup instructions.
Data visualization with matplotlib and GitHub Copilot: line plots, cosine and sine functions with dashed line styling, a world population chart, and a programming language usage pie chart.
Overview of the Java section: a GitHub Copilot password checker with JUnit tests, a list exercise, and a Spring Boot MySQL backend, using the VS Code Java Extension Pack.
Setting up a Maven Java project with GitHub Copilot: generating the project via archetype, upgrading to JUnit 5 dependencies, setting the Java version in pom.xml, and configuring .gitignore.
Writing a Java PasswordChecker class with GitHub Copilot in boolean and exception-throwing variants, explaining regular expressions, and generating Javadoc documentation.
Generating JUnit 5 unit tests for a Java password checker with GitHub Copilot, fixing imports, refactoring duplicated setup into a @BeforeEach method, and running tests with mvn test.
Java list and Stream API exercises with GitHub Copilot: an Employee class, an EmployeeList with stream-based filtering and sorting by salary and age, plus generated JUnit tests.
Optional MySQL database setup for the Java Spring project, including creating a database, checking the connection port, and configuring the SQLTools VS Code extension.
Introduction to the Spring Boot employee manager REST API backed by MySQL, with GitHub Copilot summarizing the controller's routes and methods.
Initializing a Spring Boot Maven project with the Spring Initializer VS Code extension, adding Spring Web, Spring Data JPA, and MySQL driver dependencies, and configuring the datasource URL.
Building a Spring Boot Employee JPA entity with @Table, @Entity, and @GeneratedValue annotations, and a REST controller using @RestController and @GetMapping with GitHub Copilot.
Building a Spring Data JPA EmployeeRepository and EmployeeService layer with GitHub Copilot, then wiring GET, POST, PUT, and DELETE REST endpoints in the controller.
Testing the Spring Boot employee REST API's add, get-by-position, update, and delete endpoints with .http request files in the REST Client VS Code extension.
Generating Spring Boot unit tests with GitHub Copilot using Mockito to mock the repository in service tests and MockMvc to simulate HTTP requests in controller tests.
Overview of the React employee front-end app built with GitHub Copilot, connecting to the Express or Spring backends or a simple in-memory database.
Initializing a React and TypeScript app with Vite using GitHub Copilot, structuring components and services folders, and scaffolding Home, ListEmployees, AddEmployee, and EmployeeDetails components.
Configuring client-side routing with react-router-dom and GitHub Copilot: a BrowserRouter with routes for home, add employee, list employees, and employee details by ID.
Building an in-memory employee repository with GitHub Copilot as a database-free alternative to the Express or Spring backends, including generated employee IDs.
Building an employee TypeScript type, a fetch-based addEmployee data service function, and a generated add-employee form component with GitHub Copilot in React.
Fixing CORS errors between a React front end and Node.js or Java back ends using GitHub Copilot, adding the cors middleware in Express and @CrossOrigin in Spring.
Building a getEmployees data service function and a React table component using useEffect and useState hooks, generated with GitHub Copilot to list employees.
Building a React employee details component with GitHub Copilot using the useParams hook, getEmployee and getEmployeeBio data service functions, and 404 handling.
Adding client-side navigation buttons with the React Router Dom Link component between the employee list, details, and add-employee views using GitHub Copilot.
Master GitHub Copilot — the AI-powered coding assistant — from fundamentals to advanced agentic coding with MCP, Agent Mode, and prompt engineering. Prepare for the GH-300 GitHub Copilot Certification while building real projects in JavaScript, TypeScript, Python, Java, and React inside VS Code.
Topics covered inside the course:
What is GitHub Copilot and how you can use it
What are advantages of using GitHub Copilot
How to sign up and install it inside Visual Studio Code and JetBrains IDE
Use GitHub Copilot inside Java Projects - with Spring
Use GitHub Copilot inside Python Projects - with data visualization
Use GitHub Copilot inside JavaScript and TypeScript Projects
Use GitHub Copilot with React
Prepare for GitHub Copilot Certification - GH-300
Intermediate topics:
How to use GitHub Copilot chat for general questions and inside a software project
How to iterate prompts
Code generation
4 ways to interact with Copilot inside Visual Studio Code
In this course you will also learn how to write HTML and CSS faster with GitHub Copilot
Advanced topics: Use JavaScript, Python of Java code examples:
Complex project: Password checker - prompt and iterate with Copilot
Setup Unit testing and generate complex tests with Copilot
Use GitHub Copilot for text generation: code description, commit messages
Model Context Protocol - implement and use inside Copilot
Course advantages:
Beyond the basics - after finish, you can directly use this knowledge into production code
Practical knowledge - presentations are kept to a minimum, we focus on what is really important
Logical and flexible structure - take the course at your own pace
Fast paced, concise, most typing cut out - focus on explanations - respect for your time
Big font, dark background, full HD content, this way it is readable even on a small screen or even tablet.
Lifetime access
Certificate of completion to present to your current or prospective employer
Q&A active instructor
Go beyond the theory and learn from an active instructor, aligned with today's programming demands!
By the end of this course, you'll have a thorough understanding of GitHub Copilot and how to use it to its full potential. Whether you're a seasoned developer looking to speed up your workflow, or a beginner seeking to learn more about the latest tools in software development, this course has something for you.
Join me on this journey and start coding smarter, not harder, with GitHub Copilot!
Update history:
* Jun 2026 update *
General update with the new interface
Agentic AI with Copilot
Chat debug
Prompt files / Hooks / Skills / Agents
External and local models
* Dec 2025 update *
Chat update - with new interface
* Aug 2025 update *
Model Context Protocol - new dedicated section
Learning with Copilot - learning mode
Reading images with GitHub Copilot
Custom instructions
Copilot Agent mode and custom chat modes
* Jun 2025 update *
Copilot Chat - new features
* Jan 2025 update *
Multi file edits - new feature
Copilot chat - updated lecture
* Dec 2024 update *
Spring and Express projects added
Data visualization with Copilot added