Overview
Welcome to the CSE120 GitHub Workshop!
This workshop will guide you through a complete software development workflow using GitHub, Python, FastAPI, and modern development tools.
What You'll Learn
- Git branching and pull request workflow
- Issue tracking and project management
- Test-driven development (TDD)
- Continuous Integration/Continuous Deployment (CI/CD)
- Docker containerization
- Web API development with FastAPI
- UI development with NiceGUI
- Cloud deployment (Render)
- Collaborative development and conflict resolution
Steps
| # | Step | Description |
|---|---|---|
| 00 | Prerequisites & Git Basics | Install tools, learn Git fundamentals |
| 01 | Create a Repository | Set up your project from the template |
| 02 | Milestones & Issues | Plan work with GitHub project management |
| 03 | Dev Environment | Configure Codespaces or local setup |
| 04 | Health Endpoint & Tests | Create your first API + tests |
| 05 | NiceGUI Interface | Build the UI shell |
| 06 | CI & Docker | Automate testing and containerize |
| 07 | Create Pull Request | Submit your work for review |
| 08 | Merge Pull Request | Review and merge as a team |
| 09 | Team Feature Development | Build features collaboratively |
| 09a | Team of 2 Guide | Coordination tips for pairs |
| 09b | Team of 3 Guide | Coordination tips for trios |
| 10 | Deploy to Render | Deploy your app to the cloud |
Getting Started
Start with Step 00: Prerequisites and Git Basics.