https://github.com/intro-to-programming-2025-1/home
π§ Introduction to Programming
https://github.com/intro-to-programming-2025-1/home
fastapi git github javascript markdown python react sql
Last synced: 3 months ago
JSON representation
π§ Introduction to Programming
- Host: GitHub
- URL: https://github.com/intro-to-programming-2025-1/home
- Owner: intro-to-programming-2025-1
- Created: 2025-06-20T09:37:45.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-06-20T10:17:39.000Z (about 1 year ago)
- Last Synced: 2025-06-20T11:26:55.061Z (about 1 year ago)
- Topics: fastapi, git, github, javascript, markdown, python, react, sql
- Homepage: https://intro-to-programming-2025-1.github.io/home/
- Size: 773 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# π§ Introduction to Programming
Welcome to the **Introduction to Programming** course! In just 8 weeks, youβll learn to build full-stack web applications using modern tools. We start with Git, JavaScript, and React on the frontend, then dive into backend development using **FastAPI** β a high-performance Python web framework β and finish with database integration and authentication.
---
## π
Course Format
- **Duration**: 8 weeks
- **Schedule**: 5 days per week (MondayβFriday)
- **Format**: In-person or Remote
- **Structure**: Hands-on practice, code-along, and weekly challenges
---
## π§ Weekly Breakdown
### [π `week-1` β Git & Developer Tools](./week-01/)
- Git basics: init, add, commit, status, log
- GitHub collaboration: clone, push, pull, branching, PRs
- Terminal & VS Code setup
- Markdown & README writing
- Project structure best practices
---
### [π `week-2` β JavaScript Fundamentals](./week-02/)
- Variables, types, operators
- Conditionals and loops
- Functions and scope
- Arrays and objects
- DOM manipulation & events
---
### [π`week-3` β JavaScript in Action](./week-03/)
- Forms and input handling
- Fetch API & JSON
- Async JavaScript: Promises and async/await
- Basic UI project: To-do app or weather app
---
### [π `week-4` β React Basics](./week-04/)
- JSX, components, props and state
- Event handling
- Lists & conditional rendering
- useState & useEffect & useContext
- Simple component-based app
---
### [π `week-5` β Advanced React](./week-05/)
- Controlled forms & inputs
- State lifting and prop drilling
- React Router for navigation
- Component organization
- Mini project: Task tracker or blog UI
---
### [π `week-6` β Python + FastAPI Intro](./week-06/)
- Python basics (data types, loops, functions)
- Installing and using FastAPI
- Creating your first routes (GET, POST, PUT, DELETE)
- Understanding request/response
- Using Pydantic models for validation
- Serving JSON APIs to connect with frontend
---
### [π `week-7` β Database & Auth with FastAPI](./week-07/)
- Intro to SQL & databases (SQLite or PostgreSQL)
- SQLAlchemy ORM integration with FastAPI
- CRUD operations: Create, Read, Update, Delete
- User registration and login with hashed passwords
- JWT-based authentication
- Protecting routes with auth middleware
- Connecting React frontend to FastAPI backend
---
### [π `week-8` β Final Project Week](./week-08/)
- Design and build your own full-stack app
- React frontend + FastAPI backend + database
- Implement authentication and CRUD features
- Deploy your app (Netlify + Render / Railway)
- Final presentations & code reviews
---
## π Technologies Covered
### π§βπ» Frontend
- HTML, CSS, JavaScript (ES6+)
- React & React Router
### π Backend
- Python 3.11+
- FastAPI
- Pydantic (for validation)
- SQLAlchemy (ORM)
- JWT (Authentication)
### π Database
- SQLite (local) or PostgreSQL (production)
### π§ Tools
- Git & GitHub
- VS Code
- HTTP clients (Postman or browser dev tools)
- Deployment (Netlify, Render)
---
## π Learning Outcomes
By the end of this course, you will:
- [x] β
Understand Git & version control
- [x] β
Build interactive web apps with React
- [x] β
Develop RESTful APIs using FastAPI
- [x] β
Perform CRUD operations with a database
- [x] β
Implement authentication using JWT
- [x] β
Deploy full-stack apps to the internet
- [x] β
Work in a real-world project workflow
---
Happy coding! ππ»