CSIS 314 Assignments


Generally, work will be submitted electronically by:

New assignments are added as the semester progresses. Check back often.

Weekly

Engineering Your Soul (EYS)
Read the assigned reading and participate as directed on the course syllabus page.

Due 1/19

(20 Points) Assignment 1: HTML Form
Create an HTML page with a form that submits to https://jorr.cs.georgefox.edu/resources/php/echo-form.php. The content of the page is up to you but it needs the following tags included:

  • table
  • img
  • div
  • a
  • input
    • text
    • date
    • url
    • checkbox
    • multiple radio buttons (ensure only one is selectable)
    • hidden with the value foo
Be sure to check your HTML against the validator. Commit your code to your Gitlab project.

Due 2/2

(40 Points) Assignment 2: Dynamic HTML Page
Create an HTML page that dynamically builds a table of statistics with JavaScript. The user will enter a single row of data via a input field and a button labled Calculate. Use JavaScript to parse the inputted string into a list of at most 10 numbers and append them to the table, creating a new row. The numbers should be deliminted by a single space. The table should have 14 columns, the first 10 resevered for the data. The other 4 should contain statistics calculated from the data: mean, median, mode, and standard deviation.

If one of the numbers is invalid i.e. not actually a number, display an error message somewhere on the page. Do not use an alert, modify or add something to the DOM to display an error.

Be sure to check your HTML against the validator and to split out your JavaScript functions into their own file. Minimally style the page with CSS.

Commit your code to your Gitlab project.

Due 2/9

(60 Points) Assignment 3: Car API
Create an HTML page with JavaScript to call the NHTSA API to look up information on cars. The page should have a form to search for car models based on manufacturer name and year. The search results, both make and model, should be displayed in a table on the page if the search was successful. You will need to do multiple API calls for this search. If the search fails, display an error message on the page. Validate the user input and use appropriate form fields. If the user searches again, the previous search results should be deleted.

Be sure to check your HTML against the validator and to split out your JavaScript functions into their own file. Minimally style the page with CSS.

Commit your code to your Gitlab project.

Due 2/18

(60 Points) Assignment 4: REST Client
Write command-line programs in Python to be a REST client for the APIs from the previous assignment. The program should take command line arguments for the manufacturer and year. The usage should be python carinfo.py honda 1997. Your program should display all the makes and models, in the format make, model, one pair per line. Be sure to use the argparse module to accept the command line arguments and do additional input validation.

Commit your code to your Gitlab project.

Due 2/27

(120 Points) Assignment 5: TO-DO App
Create the front-end for a simple web application. See the README.md file in the starter repository for details.

Due 4/24

Final Project
Design and implement a Tumblr-clone web application.

Due 3/20

Milestone 1
See the project page for details.

Due 4/10

Milestone 2
See the project page for details.

Due 4/24

Milestone 3
See the project page for details.

Due 5/1

Final Project Presentation
Give a 15 minute presentation on the day of the final. Your presentation needs to include the following:

  • A demonstration of your project that shows all the pages and features of your site
  • The theme/specialty of your project
  • What kind of data is being stored in the extra field
  • The design of your API including the endpoints/resources, methods, parameters, etc
  • A diagram of the dependencies of your files: PHP, HTML, and JS
  • The structure of you PHP code i.e. which files implement which parts of your API, common files, etc
  • The main things that you learned
  • The largest challenges that you faced


This page was last modified on 2026-08-19 at 20:15:09.

Copyright © 2018–2026 George Fox University. All rights reserved.