CS651 | Web Systems
  • outline
  • projects
  • syllabus
  • links
Outline

A proposed schedule is given below. This may be subject to change. Topics may be added or removed or eliminated from coverage.




READING Books:

W= "Web Technologies A Computer Science Perspective"

GAE= "Programming Google App Engine: Build and Run Scalable Web Apps on Google's Infrastructure"

M = "Getting MEAN with Mongo, Express, Angular, and Node, Second Edition"

Client= "Pro HTML5 with CSS, JavaScript, and Multimedia: Complete Website Development and Best Practices"

 


Week 1  

I1 Introduction to Class

Class Lecture, W- Chapter 1.

 

  • Course Overview , Intro Web/Internet Concepts, Server Account (local) - many other 3rd party systems will be used., Unix Tips
  • Group Collaboration (work is individual unless sepecifically denoted as group work)

  • Prerequisite/review: git + GitHub Lecture   as video    , git tutorial, git video review, GitHub ReadMe AND GitHub Wiki, GitHub repository creation, Sharing repository , Professional Best Practices for Project Development
Week 1-3  (client side)

F1 HTML (and some basics)

Read  Client Book: : Part I "HyperText Markup Language" AND Part II "HTML,..." and go over:

  • HTTP Request/Response AND HTTP the protocol ,URI/L and Hostnames
  • html intro lecture, HTML intro, (video- tables and more):, Tables, Div Tags (and others), Media ,
  • Informal Lab: Play with HTML in w3schools interactive site
  • LAB F1.1- (not recorded) (individual work). create a simple webpage of your resume including a picture of your self, name it resume.html and put all the files in your csweb01 account (under public_html directory) - uses some div tags, color (nicely) your body, use design pricinples to group and allign your content. Show peers by start of next class

F2 Design - static

  • Design intro (video), Navigation (video),A few General Terms/Concepts/Considerations
  • Example of Accessibility Design - IBM corporation Accessibility Policy
  • Evaluating a Site & a Brief checklist
  • LAB F2.1- (not recorded )(individual work) install trial version of Dreamweaver- read/view their online tutorials and create a mutli-page example of your resume using Templates and upload to csweb01. Show peers by start of next class

Web Authoring: Dreamweaver (FREE FOR STUDENTS @ CSUEB -part of creative cloud)

  • NOTE: these videos are done with an older version of dreamweaver but, the concepts are the same even if the interfaces are a little different --- search on YouTube if you want for updated videos using the version of dreamweaver you are using (e.g. "Dreamweaver CC and site setup") Dreamweaver Basics video done with an older version of dreamweaver -- you can go to Adobe Dreamweaver site or the Adobe Dreamweaver User Guide for up to date info.
    • Dreamweaver Basics VIDEO covering:
      • how to setup a "site" (so you can organize your files and tranfer them to your remote server)
      • how to start a simple html static web page
    • Dreamweaver Templates (video) and Predefined Dreamweaver Templates (quick video)

    • Dreamweaver CSS editing tool (quick video)

Web Authoring of Ads and Interactive Content (can use for static content too): Googe Web Designer (Free)

Image Editing: Photoshop(FREE FOR STUDENTS @ CSUEB -part of creative cloud)     Gimp (Free)

F3 CSS

  • CSS part 1 , CSS part 2 lectures, CSS overview and example (3 column+header+footer+nav bar) and 2nd example (unequal width columns)
  • LAB F3.1 - (indivdual, not recorded)using your previously created multi-page resume, create a styles.css file that creates styles you apply for different text content in your pages, the body of each page, etc. Attach the styles to your template so that it becomes part of each page and then apply as necessary the styles (if they are "named" styles versus styles associated with HTML tags). Show peers by start of next class

F4 Client Side JavaScript

Read Client Book:: Part IV "JavaScript" and go over:

  • Overview (video-part 1 AND part 2)
  • Intro, Standard Output, Conditionals and Loops, Objects, Functions
  • Bootstrap by Example (w/ Webstorm)
  • Dreamweaver and JavaScript
  • TypeScript:: Learn TypeScript AND JavaScript versus TypeScript AND Webstorm IDE supports TypeScript

Interactivity:Event Handeling, Form Validation

DOM - Document Object Model: DOM, DOM and Cookies, DOM official site

More (on your own) :JavaScript to Server side Program, Javascript and Language Detection,JQuery- A JavaScript Framework

Examples 1 , 2, 3, 4

Bootsrap Lab: Learn BootstrapAND Bootstrap5 (HTML, CSS + Javascript framework) via w3schools. Also, look at Getting Started in Bootstrap

F5 React/Angular

Read M Book: Chapter 8-10 

 

React: a little ReactJS intro , tutorial and testing library(including DOM assertions)

    • Create new Project, React Dev Tools for Chrome, Official website, TicTacToe

(On your own) AngularJS to Angular: Lecture part 1, part 2 on services+data,

    • intro, processing http requests and responses from AngularJS
    • How to add Angular to a NodeJS+Express Webstorm project

LAB F5.1 (INDIVIDUAL)- Show start of next class learn react through tutorial make tic tac toe (from reactjs.org site) - Will be recorded - submit screen shot to Canvas->Assignments->Exercise React by Feb 20 start of class

 

Week 4,5 (cloud intro featuring AWS IaaS)

C1 Cloud

Class Lecture,

  • High Level Cloud Intro [MP4 YouTube]
    • Cloud Terminology, Cloud Identity and Authorization, Google and Amazaon Cloud
  • Creating accounts - see invites/announcements sent to you
  • Computation (high level talks on some solutions): : Hadoop-video   , Spark -video and video 2 (more ML friendly- better at itterative algorithms ), Spark MLib- ML library, Spark framework stack (partial)
  • Event Stream(ing) Handeling: Kafka (real time data feed handling/ event streaming.) and video 2.AND Kafka Streams versus Database?

C2 Cloud: Amazon Web Services - EC2 only [cloud as IAAS]

Class Lecture, Read W-Chapter 1, 3, 5, 6(elastic IP)
of AWS for Admins For Dummies (in OReilly index in library.csueastbay.edu).

  • AWS overview MP4 YouTube
  • AWS Academy accounts [ NOTE: it can take minutes++ to launch the sandboxed labs --be patient]
  • "AWS Academy Cloud Developing" Class on AWS Acamdey LMS
    • Experience 1 - Go over Modules 1+2 - review labs associated with Module 2
    • Experience 2 - Go over Module 3 - DO Module 3 Lab to get experience with S3
    • Experience 3 - Go over Moduel 4 - Identity + Access Management

  • architecture Q+A on AWS

EC2

  • (dated) - Launching an EC2 instance, video (2015, not mine) another video (2017, not mine)
    • what if you can't find your instance
  • Connecting to a Launched EC2 instance (using putty), video: on mac (2014, not mine) on windows using cgywin (2014, not mine)
  • How to Stop an EC2 instance (You still are paying for storage)
  • How to Terminate an EC2 instance (now you pay for nothing --its gone read here or if broken search on charges terminated EC2 instances)
  • EC2 instance and security group settings
  • EC2 --using
  • Launch+Configure AWS EC2 Instance (dated)
  • Connecting to AWS EC2 instance with SSH

AMIs: search Amazon Marketplace for a (free, cheap,??) pre-configured AMI, AMI types, AMI Instance (HW) types

S3 overview

Containers: 3rd Party Setup of IaaS (build, ship,run): Docker (opensource, has support for AWS and Google Cloud)

  • ALL 3 parts:
    • ReactJS+Docker+AWS: blog 1, blog 2
    • ReactJS (not with Docker) to AWS using AWS Amplify from GitHub
    • blog on NodeJS + Docker + AWS
    • blog on ruby on rails + docker + AWS EC2 deployment
  • Docker info on deployment to AWS
  • video introducing docker on AWS with ECS NOTE: ECS = Amazon EC2 Constainer Service = highly scalable, high performance container management system that supports Docker containers.

Container Orchestrator Service: : a container orchestration platform that automates the deployment, management, scaling, networking, and availability of the container clusters,

  • AWS ECS -- go over get started
    • (what is it video)   
    •  (get started video)      
  • Kubernetes - open source
    • mulitplatform : Amazon Elastic Kubernetes Servic AEK   AND Google Kubernetes Service-GKS
  • A blog on AWS ECS versus EKS (Kubernetes)

 

Exercise: Docker + AWS GROUP work

DUE Feb. 27 @ Start of class turn in ONCE per group to Canvas->Assignments ->Exercise Docker+AWS the folloiwng:

  • 1) Screenshot of the ReactJS Application working in a webbrowser after being deployed --MAKE sure I can see the URL in the webrowser
  • 2) Screenshot the AWS Console showing the details of the deployed EC2 instance
  • 3) Description of how you created your Docker image.

STEP 1: Setting up Docker windows, mac, linux This will teach you:

    • install Docker software using the Docker Toolbox
    • use Docker Engine to run a software image in a container
    • browse for an image on Docker Hub
    • create your own image and run it in a container
    • create a Docker Hub account and an image repository
    • create an image of your own
    • push your image to Docker Hub for others to use

STEP 2:Read and practice deployment using Docker to EC2. Deploy your previously created LAB F5.1 exercise

  • make SURE you understand  how to push the image to a container registry (on Docker Hub) so you can use it in an ECS task definition and create a Amazon ECS task definitions use Docker images to launch containers on the container instances in your clusters
    • https://docs.docker.com/engine/reference/commandline/push/
    • Resources:
      • Deploy dockerHub image using ECS task (+ additional setup needed)
      • (NOT doing) Deploy Docker Image to ECS using Amazon Elastic Cloud Respoitory
Exercise/Academy+

AWS Academy: Cloud Foundations: (must have setup your AWS academy account --see Canvas Announceme nts)

  • Modules 1-4, 6,7 (NOTE: only modules 4,6 and 7 have labs) - you have limited credit make sure you stop a session when you are pausing.

 

Week 6-7 (server side)

N1 Serverside Programming: NodeJS, WebStorm

Read M Book - Chapter 3

 

NodeJS basics lecture, NodeJS basics, NodeJS files

Webstorm: GitHub account setup, Webstorm Project Enable Git+ associate with GitHub Respository

Lab N1.1: Go over Jetbrains WebStorm documentation and create a NodeJS file and run locally, Then Enable Git&associate w/ GitHub repository and push it. (finish by 1 week -get help from instructor if you need it)

N2 MEN (start of FullStack)

Read M Book - Chapter 1,2, Read : quick design steps for a MEAN or MERN application (by illustraton)

 

MEAN (or MERN) lecture , MEAN stack

N3 Express, on the Cloud

Read BOOK 1: Chapter 3,4 and go over:

 

Express Lecture and template (interface) options ,Express, Reading Request Data (from URI query or forms), express and MVC AND detailed New Customer Example

Development using Webstorm IDE and Git

  • Install IDE WebStorm
  • demo: Create a NodeJS Express project in WebStorm
    • run configurations
  • GIT & deployment to github or bitbucket & deployment from github to heroku app directly (NOTE: in this class we will NOT use :Heroku)
    • Git overview YouTube
    • GITHUB: how to create a repository (or see below how to do directly by sharing in WebStorm)
    • GIT & Webstorm setup with examples of deploying to both bitbucket and github
    • Read Webstorm documentation on using git


Deployment to Google Cloud Run (serverless Google Cloud --like Amazon Lambda - PAAS)- Video: Cloud Run (no container needed)

  • Deployment from Webstorm Code Directory Manually to Google Cloud Run [ AND how to remove Cloud Service or Project --when want to stop running]
  • Deployment from Github repository to Google Cloud Run AND more details


LAB N3.1 -DUE Start of Class March 25 (demo in person) GROUP. setup WebStorm with Git and Google CloudRun and create beginning NodeJS+Express project (use this code as a base --note this code is very lightly commented --not sufficient for what will be required of course work --but ,is a quick sample) and show deployed to both your local machine and running on GoogleCloudRun. Demo it running in both. ALSO make sure you know how to stop the code running and demo this. Show you know how to deploy from Git or Manually to Google Cloud Run

Week 8-9 (database)

M1 Database - MongoDB

Read M Book - Chapter 5,6 and go over:

 

Data Overview & MongoDB

  • How to Create MongoDB Atlas database (video demonstration)
  • NodeJS with MongoDB, MongDB NodeJS Querries, Connect from Serverless Cloud (w/dynamic IP) to MongoDB Atlas

M2 Lab Database - MongoDB and more on GitHub Projects

  • [curently dysfunctional] Experience 1 - (HOUR 1 ONLY- needsGoogle Cloud Skills Boost credits ) Getting Started with MongoDB Atlas on Google Cloud
  • Experience 2- (webage version ) CodeLab NodeJS + Express + MongoDB Atlas on Google CloudRun
    • step 3 -
      • 1) After subscribing log into MongoDB Atlas with your Google email (campus horizon email)
      • 2) First time create an "organization" givde it a unique name like "CS351_YourLastName"
      • 3) From the Organization create a new "Project" --give it a unique name
      • 4) Then in this Project create a Deployment on Google and this then is what you are seeing in "step 3" of the codeLab CHOOSE a free Google Server (e.g. M0, you can change the name of the cluster or keep the default name cluster 0)
      • 5) After creating the instance it will ask you to setup creditials to log in -- REMEMBER your login and password you setup. MAKE sure that you also add your computer's IP address

  • GitHub Project Management:(overall) Video-example
    • Issues (you can create from issues tab or from a project), Note Issues can not have due dates but, the Milestones they belong to can.
    • GitHub Projects (you can have 1 or more projects associated with a repository) - how to create
    • GitHub Milestones (groupings of issues )



PRELAB - Setup a MongoDB database called "shoppingsite" that contains a collection called "customers". Then understand and execute the sample code --- a NodeJS+Express(w/EJS) project which reads in form data for a new customer and creates a new document in the customers collection.

 

LAB 10.1 -(GROUP) DUE March 25 start of class. In your assigned group work on deployment of a Database and Collection of your choice for your hypothetical company from Project 1 extending the PRELAB work you have done. Add code and an interface form to display the first 10 customers in your "customers" collection. Show the code running when called upon. Turn in a document showing a screenshot of the code running, show a 2nd screenshot of the collection of customers in your database (should be 10 or more).

Week 10,11 (cloud featuring Google PaaS + cloud data)

G1 Cloud:Hosting static site on Google Cloud

*** on your own ***

Google Cloud : Hosting a Static Site (HTML, CSS, ClientSide JavaScript) on Google Cloud - via HTTP (nWo SSL certificate needed) or via HTTPS (with load balancing and need an SSL certificate) : Video Discussing GCP


LAB G1.1- [OPTIONAL] follow step-by-step instructions [NOTE: you do not have a registered domain name just use a unique name for your storage bucket]

G2 Cloud:PAAS - Google App Engine (GAE) high level overview and tools

Class Lecture, GAE book Chapter 1 and 2

Google Cloud, AND Tour of Google Cloud from Google Cloud Skills Boost (QwikLabs) (45 minutes)

Intro to Google App Engine

  • Getting Started with GAE + NodeJS - Shortcut to deploy on command line or optional GitHub CI deployment
  • Documentation: running NodeJS on GAE AND NodeJS GAE reference
  • Comparing App Engine Environments AND Standard Environmnet on GAE

Other [Optional]

  • Google App Engine + IntelliJ
  • Eclispe pluggin for Google App Engine **** READ LATEST on Eclipse + Google Cloud Project Creeation and Deployment*** and first Google Cloud Tools for Eclipse***
    • setting up Eclipse
    • creating a GAE project using Eclipse (official site)
    • Deploying to GAE official site
  • Creating an Project (registration) in Google App Engine

 

Budget, Pricing [optional] --articles (go over after understand GAE): Budget, Pricing and Tunning your GAE app , GAE pricing model, The Amazing Story Of AppEngine And The Two Orders Of Magnitude, Google's Scaling Lecture (OLD) and Video

 


Exercise G2.1 (INDIVIDUAL) DUE 11pm March 28 Go through Use gcloud app deploy and gcloud app browse to deploy and view your service from the Google Cloud CLI (Command Line Interface). Create a simple NodeJS Express application (or reuse one from before) and deploy it to Google Cloud. Turn in the following


    1) Running.jpg = screen shot of the web app running in your browser FROM GAE (not local!!!)
    2) URL to GAE app
    3) GAE_deploy.jpg = screen shot of your Google App Engine dashboard showing your app deployed.


 

Advanced Lab Experience - using Google Cloud Code --on your own-What is Google Cloud Code?


G3 Cloud: Google App Engine (GAE) Details - web transactions- front-end, request-handler and back-end

Class Lecture,

  • Comparison of Google Cloud Run and Google App Engine AND GAE Load Balancing + Scaling Control
  • GAE generic architecture,      Example Application Architecture,   Google Data Solutions
  • GAE: setting up static files (images, HTML, javascript)
  • GAE: secure connections with https
  • GAE: configuring frontend for restricted access (Google Accounts)
  • GAE: App caching
  • GAE: Logging
  • GAE: Limits

Exercise G3.1: (Group) Due start of class April 8 Google App Engine+ to deploy a Google Translate app. Deploy 2 versions of the code where v1=green background and v2=pink background. Load Balancing so that each version gets 50% traffic. Turn in 3 screen shots: 1+2) applicaton running with URL shown of GAE deploymen -GIVE 2 screenshots showing v1 and v2 running spearately 3) Screenshot of application deployed in GAE console. Turn in 3 screenshots - 1 showing the application deployed in GAE console and the 2nd and 34d showing v1 and v2 of the application running with the URL clearly shown in the screenshot corresponding to the GAE deployed URL.

G4 Cloud: Google App Engine (GAE) - Firestore (datastore)

Class Lecture, GAE book- Chapters 4,5,6,8

  • Firestore Native versus Datastore Mode Comparison
  • Firestore (Natvie) with NodeJS on GAE basic steps AND Firestore (Datastore Mode)
  • NodeJS Firebase + Firestore API
  • Getting Started with FIrestore (from Firebase)

 

Lab - Learn to use Firestore (Native) with NodeJS + deploy to Firebase (yet another PaaS Google Cloud Offereing)

  • Exercise G4.1: (Group) start of class April 10, Complete the Friendly Eats NodeJS application w/ Firestore deployed in GAE. Turn in 3 screen shots: 1) applicaton running with URL shown of GAE deployment 2) Screenshot of application deployed in GAE console 3) Screenshot of Firestore with Data in Colleciton.

 

 

Firestore Running in Datastore Mode (index based datastorage):

  • Intro - Entities, keys and and properties and more AND official documentation AND get started
  • Accessing Data Store with Low Level API ---featuring Java AND NodeJS API for Datastore
  • Property Values/ Data Types
  • More on Keys --code getting, creating, converting to strings and more
  • Entities - Getting, Updating and Deleting
  • Queries & Official Doc & NodeJS Query api
  • Indexes read more on google about indexes
  • Multivalued Properties
  • Google Datastore Related Links
    • Uploading and Downloading Data
    • DataStore admin console in GAE Admin Console (backup, copy,etc)
      '

 

Other Experience:

  • 1)Create Datastore (Firestore in Datastore mode -indexed data storage)
  • 2) (OPTIONAL ) Do QuickStart and the query sample + others you want to try

 

G5 Cloud: Google App Engine (GAE) - caching & SaaS example - google cloud vision

Class Lecture, GAE book- Chapter 9

Memcache

 

Software as a Service Example: Google Cloud Vision Service

Google Cloud Vision API experiences:

  • LAB: Do Face Detection NodeJS tutorial AND find one more on the site you like to try
  • Google Cloud Vision API example
  • See support for multiple languages (examples with image file stored on server): https://cloud.google.com/vision/docs/libraries

Optional (python/java based):

  • Python Based example ( search "google codelab vision api -- this is in python--do this to get idea) OR similar/same walkthrough
  • Performing Call from Java Stand alone console applicaiton
  • Performing Call to Google Cloud Visions from Java Android example

 

EXERCISE:(20 points, GROUP) DUE April 12, @11pm : Exercise Software As A Service on Google

 

G6 Cloud: Google App Engine (GAE) - Fetching Web resources, Task and Queues (On your own)

Class Lecture, GAE book- Chapter 12, 15

Fetching URLs (other Web resources/services)

What is a TaskQueue and Google's Task Queues Lecture and Video, Java TaskQueue API

G7 Cloud: Google Cloud- other / advanced (on your sown)

Class Lecture,

 

 

 Google Cloud Skills Boost (QwikLab) Experience - Google Cloud + ML

 

Other

  • 3rd party container-based deployment : About Docker and Containers
    • 3rd party custom deployment (or going to Google Cloud Iaas): e.g. Docker and Docker and managed VMs on Google w/ running GCE apps on these managed VMs
    • STEP 1: Setting up Docker windows, mac, linux This will teach you:
        • install Docker software using the Docker Toolbox
        • use Docker Engine to run a software image in a container
        • browse for an image on Docker Hub
        • create your own image and run it in a container
        • create a Docker Hub account and an image repository
        • create an image of your own
        • push your image to Docker Hub for others to use
    • STEP 2: Quickstart guide

  • GAE: App Engine Services can be configured to use different runtimes and to operate with different performance settings (taking things beyond typical webapps) -- MANUALLY scale to get longer running apps.
    • if you need jobs to run longer than 10 minutes of TaskQueue jobs
    • Requests can run indefinitely. A manually-scaled instance can choose to handle /_ah/start and execute a program or script for many hours without returning an HTTP response code. Task queue tasks can run up to 24 hours.
    • <appengine-web-app xmlns="http://appengine.google.com/ns/1.0">
        <application>simple-app</application>
        <module>default</module>
        <version>uno</version>
        <threadsafe>true</threadsafe>
        <instance-class>B8</instance-class>
        <manual-scaling>
          <instances>5</instances>
        </manual-scaling>
      </appengine-web-app>


  • Cron jobs (time scheduled), Blobstore (on own)
  • How Google writes their own App using GAE (old but, still good to read)and Video
  • StackTrace Driver service (api including for java)

G8 Cloud: Selected AI Services

 

Google Cloud Skills Boost  Experience -

  • IN CLASS: Google Gemini AI intro, AND Generating Text w/ Gemni via Vertex API (NodeJS) AND Variety Gemni (JS) AND Silly Express NodeJS Webstorm Project w/Gemini Generative Texgt
  • Intermediate Gemini AI,
  • IN CLASS: MultiModal Generative with Gemini AI,
  • Intro to Vertext AI Workbench (web not skills boost)

Week 12 (security intro) [*depending on schedule potentially asynchronous]

S1 Lecture, Security

  • Secure Communications (TSL)
  • Firewalls: (Reference book optional reading E-Chapter 11)
  • Encription: Assymetric and Symmetric
  • More: Stanford web cryptography lecture , Web Authentication paper, Cross Site Scripting Paper , SQL Injection paper
Week 13+ (formats, analytics + various) [ *depending on schedule potentially asynchronous]

O1 Web Data: JSON & XML W- Chapter 7, (Reference book optional reading J- Chapter 9,14)

Lecture

JSON lecture, JSON: a data interchange "language"


XML, intro to XML

  • Examples:first, DTD example, with CSS, DataBinding, XSL simple, XSL simple 2, XSL to HTML, XSL to VRML, SVG &HTML,
  • XSL documentation , XSLT (transfer xml to other xml documents, part of XSL), Commerce XML, Multimedia XML

O2 Web Issues: Internationalization, Localization

 

Lecture: Encoding, Internationalizaiton,NodeJS and Internationalization

 

O3 More on "Data", Cache and Other Issues

    • Systems and intro to Performance
    • Performance, more
    • At the low level: Replication and Consistency
    • CDN
    • Performance
    • Architecture
    • Some Talks and more
    • Caching: Memcached
      • memcached homepage
    • Redis = like memcached with both persistence and extended data types. Different than databases in that optimized for FIFO kinds of actions. Sometimes called a datastructure server.
    • Varnish cache (http accelerator for web content -images,etc and supports load balancing using both a round-robin and a random director)

 

O4 Web Issues: Services, Analytics, and more

    • YQL Lecture, intro (console)
      some YQL examples
      YQL Open Tables Lists (already existing YQL access to web services)
    • Google Maps Lecture
      • Google Maps Source and Explained
      • Example Stylized Maps
    • Google Analytics Lecture
      • Why Google analytics
      • Google's demos
      • Get Google Analytics
      • Demo- how to add web profile to Google Analytics
    • Mozilla Firebug
      • get Firebug from Mozilla
      • My Firebug demo
      • Firebug movie demo
    • Yahoo! YSlow Demo
      • get YSlow from Yahoo!
    • Google and Yahoo! advertising
    • Google Checkout
    • Apple Pay (mobile iOS)
    • Others Topics to search on: Twitter, Yelp, Amazon, Yahoo! Pipes, and more, Yahoo! YUI

G9 Cloud: FaaS and APIs

 

Lecture


Lab 1:Getting Started with Google Run Functions Codelab & Simple quickstart

Lab 2: Google API Gateway Quickstart (with Google Run Functions)

 

Lab 3 (optional, 2023) - Functions + API Codelab

Week 14-16 Project work / Presentations / Final
Extended Content AS NEEDED

cs651:web systems

  • home
  • outline
  • projects
  • syllabus
  • links