Web development
Undergraduate · CS / Programming
Syllabus focus
Topics typically covered
Standard syllabus
Front-end fundamentals
- HTML semantics and accessibility basics
- CSS layout: flexbox, grid, responsive design
- JavaScript: DOM manipulation and events
- Fetch API and asynchronous programming (promises/async)
- Front-end tooling: npm, bundlers (survey)
Back-end and data
- HTTP methods, status codes, REST conventions
- Server frameworks (Express, Django, or similar intro)
- Routing, middleware, and session management
- Connecting to SQL or document databases
- Authentication: cookies, JWT (intro)
Full-stack foundations
- Semantic HTML and accessible forms
- CSS layout: flexbox, grid, and responsive design
- Client-side JS and DOM events
- HTTP methods, status codes, and REST conventions
- Sessions, cookies, and JWT auth patterns (intro)
- Web security basics: XSS/CSRF prevention
STEM / applied
Production web apps
- Component frameworks: React, Vue, or Angular (survey)
- State management patterns for SPAs
- Deployment: static hosting vs server containers
- CI/CD for front-end and back-end tests
- Performance: caching, CDN, and lighthouse audits
Engineering practices
- API design and versioning
- Security headers and CORS configuration
- Testing: unit, integration, E2E (Playwright/Cypress intro)
- WebSockets and real-time features (intro)
- Capstone project: full-stack application
Shipping web products
- Framework survey: React/Vue/Svelte or server templates
- API design and OpenAPI/Swagger (intro)
- Databases behind web apps and migrations
- Deploying to a host with env config
- Performance: caching, lazy loading, Core Web Vitals (survey)
- Capstone: full-stack app with auth and CRUD
Notes
Stack choices vary widely by program. Courses may be front-end heavy or full-stack project based.