About โข Learning Objectives โข Modules โข Labs โข Resources
๐ Course 2 of the GitHub Copilot Mastery Pathway โฑ๏ธ Duration: ~60 minutes
Welcome to "GitHub Copilot for System-Level Development"! This course builds on foundational prompting techniques to tackle complex system-level challenges including test-driven development, large-scale refactoring, and infrastructure automation. You'll learn how to leverage GitHub Copilot for generating comprehensive test suites, navigating sprawling codebases, and creating production-ready infrastructure configurations.
This is the second course in the GitHub Copilot Mastery Pathway, designed to advance your skills from effective prompting to professional system-level development workflows.
By the end of this course, you will be able to:
- โ Implement test-driven development (TDD) workflows with GitHub Copilot
- โ Generate and refine complex test suites with mocking and edge case coverage
- โ Strategically navigate and refactor large, multi-file codebases
- โ Analyze cross-file dependencies in complex projects
- โ Perform system-wide code cleanup and style enforcement
- โ Generate infrastructure as code (IaC) configurations
- โ Create production-ready Dockerfiles with AI assistance
- โ Develop Terraform and Ansible automation scripts
- โ Evaluate and improve test coverage systematically
- ๐งช Introduction to AI-assisted TDD workflows
- ๐ Generating complex test suites with edge cases
- ๐ญ Mocking dependencies and external services
- ๐ฏ Challenge: TDD for a new feature
- โ Solution: TDD for a new feature walkthrough
- ๐ Evaluating and improving test coverage
- ๐บ๏ธ Strategic use of workspace commands for navigation
- ๐ Analyzing cross-file dependencies
- ๐ฏ Challenge: System-wide code cleanup
- โ Solution: System-wide code cleanup walkthrough
- ๐จ Enforcing coding styles and constraints
- ๐ Generating project-specific guidelines
- โ๏ธ Generating IaC configurations
- ๐ณ Creating Dockerfiles with AI
- ๐๏ธ Terraform configuration generation
- ๐ Course wrap-up and next steps
This course includes hands-on labs organized by module to reinforce your learning. Each lab provides practical experience with the concepts covered in the videos.
- Lab 1: Introduction to AI-Assisted TDD
- Lab 2: Generating Complex Test Suites
- Lab 3: Mocking Dependencies with Copilot
- Lab 4: Challenge - TDD for a New Feature
- Lab 5: Evaluating Test Coverage
- Lab 6: Strategic Use of Workspace
- Lab 7: Analyzing Cross-File Dependencies
- Lab 8: System-Wide Code Cleanup
- Lab 9: Enforcing Styles and Constraints
- Lab 10: Generating IaC Configurations
- Lab 11: Creating Dockerfiles with AI
- Lab 12: Terraform Configuration Generation
- Bonus 1: Shell Script Quality with bashrs - ๐ง Use GitHub Copilot prompts to clean up shell scripts using bashrs quality tools
This repository includes a complete working example demonstrating shell script quality improvement:
๐ bashrs Shell Script Cleanup Example - A fully functional demonstration with:
- ๐ด Messy shell script with 9+ quality issues
- โ Clean version following best practices
- ๐ Documented GitHub Copilot prompts for each transformation
- ๐งช Comprehensive test suite for validation
- ๐ Before/after quality comparison
Run the example:
# Build and test
make example-test
# Just build
make example-build
# See quality improvements
bashrs lint examples/bashrs-cleanup/scripts/messy-deploy.sh
bashrs lint examples/bashrs-cleanup/scripts/clean-deploy.shThis course uses redactr as the primary practice repository - a Rust HTTP microservice for PII redaction.
Repository: https://github.com/alfredodeza/redactr
This repository is ideal for practicing because it:
- โ Real-world system-level Rust project
- โ HTTP microservice architecture
- โ Regular expression-based text processing
- โ Comprehensive test suite structure
- โ Production-ready code organization
- โ Active development with real-world patterns
Clone the repository to follow along:
git clone https://github.com/alfredodeza/redactr.git
cd redactr
cargo test # Verify setupThis course leverages professional-grade quality tools:
Documentation validation and repository health scoring:
# Validate all documentation links
make validate-docs
# Check repository health score
make repo-scoreLearn more: PMAT Documentation
Makefile and shell script linting/formatting:
# Lint Makefile
make lint
# Lint shell scripts
bashrs lint examples/bashrs-cleanup/scripts/*.shLearn more: bashrs Documentation
Before starting the labs, ensure you have:
- ๐ค GitHub Copilot Access: An active GitHub Copilot subscription (individual, business, or enterprise)
- ๐ป IDE Setup: Visual Studio Code or a JetBrains IDE with GitHub Copilot extension installed
- ๐ฆ Git: Installed and configured on your system
- ๐ฆ Rust: For working with the redactr practice repository and quality tools
-
Clone this repository:
git clone https://github.com/paiml/ghcp-for-systems-level-development cd ghcp-for-systems-level-development -
Install dependencies:
make install
-
Run tests to verify setup:
make test -
Optional: Clone practice repository:
git clone https://github.com/alfredodeza/redactr cd redactr cargo test
- Start with Module 1 labs in
labs/module1/ - Open the repository in your IDE with GitHub Copilot enabled
- Follow along with video content and complete hands-on exercises
- Practice on the redactr repository to reinforce learning
- Complete bonus exercises for advanced applications
Build and test the bashrs cleanup example:
# Run all tests
make example-test
# Just build the example
make example-build
# Clean build artifacts
make example-cleanmake help # Show all available commands
make install # Install all dependencies
make lint # Run all linting
make test # Run all tests
make validate # Validate repository structure
make example-test # Test the working example
make repo-score # Check repository health scoreUse the following tools and resources to enhance your experience when working with this course:
- GitHub Copilot Documentation
- GitHub Copilot Chat
- GitHub Copilot in VS Code
- JetBrains GitHub Copilot Plugin
- Redactr Practice Repository
- Rust Documentation
- Docker Documentation
- Terraform Documentation
- Ansible Documentation
- PMAT Toolkit
- bashrs
- Pragmatic AI Labs
This course is Course 2 in a 4-course series:
- ๐ Advanced Prompting with GitHub Copilot - Repository
- ๐ง GitHub Copilot for System-Level Development (this course) - Repository
- ๐ก๏ธ Responsible AI Development with GitHub Copilot - Repository
- ๐ Capstone: Building Production Features with Copilot - Repository
This repository maintains strict quality standards:
- โ Documentation Validation: All links verified with PMAT
- โ Makefile Quality: Linted with bashrs
- โ Repository Health: Scored with PMAT (target: 90+/110)
- โ CI/CD: Automated quality gates on all commits
- โ Test Coverage: Working examples with validation
Run quality checks:
make validate # Run all quality gates
make validate-docs # Validate documentation links
make repo-score # Check repository health
make lint # Lint Makefiles and markdown- ๐งช Start with TDD: Write tests before implementation - it improves code quality
- ๐บ๏ธ Use Workspace Commands: @workspace helps Copilot understand large codebases
- ๐ Iterate on Tests: Generate tests first, then refine with edge cases
- ๐ Context is Key: Keep relevant files open for better suggestions
- ๐ Review Infrastructure: Always review generated IaC configs before deploying
- โ Validate Everything: Use tools like PMAT and bashrs to catch issues early
- ๐ฏ Practice Refactoring: Large-scale refactoring skills transfer across languages
- ๐ Document Your Prompts: Save effective prompts for reuse in similar scenarios
- ๐งช Experiment: Try different prompting approaches to find what works best
- ๐ Report Issues: Found a bug or broken link? Open an issue
- ๐ก Suggest Improvements: Have ideas for new labs or content? Share them!
- ๐ Fix Documentation: Improve clarity, fix typos, or add examples
- โจ Add Examples: Contribute additional working examples or exercises
All contributions must meet these standards:
- โ
Pass all linting checks (
make lint) - โ
Pass all tests (
make test) - โ Include documentation for new features
- โ Follow existing code style and patterns
- โ Update CLAUDE.md if repository structure changes
Copyright ยฉ 2025 Pragmatic AI Labs
This course material is provided for educational purposes. All rights reserved.
For licensing inquiries, contact Pragmatic AI Labs.
Made with โค๏ธ by Pragmatic AI Labs