Courses‎ > ‎Software Development‎ > ‎Dyrland-Weaver‎ > ‎Projects‎ > ‎

Project 1: Get your data off of me, you damn dirty APIs!

posted Nov 30, 2016, 7:15 AM by JonAlf Dyrland-Weaver   [ updated Dec 14, 2016, 8:25 AM ]
FULL POJECT DEADLINE: 8am Monday Morning 12/12

  • Design Document
  • Readme (see below)
  • API Key file (to be emailed)
  • Separate file listing changes between the design document and the finished product.
  • All necessary code file

With your team, select 2 (or more) REST APIs and use them to create a novel website of our design.
  • You must continue to use flask as your backend driver.
  • Use multiple python files as needed.
  • You must use a css framework, most likely bootstrap or foundation (it doesn't make sense to learn a new one).
  • You must provide your own css customization.
  • If you're looking for REST APIs, try this list made by you and your peers!
  • You will need a DEVLOG for this project. 
    • The purpose of the devlog is so that any group member can see what the current state of the project is.
    • The devlog should be a plain text file that can be easily edited.
    • PM will make sure devlog is being maintained, but will not make all entries.
    • When any team member stops working and pushes changes to github, they should update the devlog explaining what changes have been made. Include any errors/bugs discovered (or created).
    • Separate devlog entries with newlines, put the latest entries on the bottom
    • Each line should begin with the following format: firstL -- TIMESTAMP\n
      • eg: jonalfD -- 2016-12-04 14:32


  • Do not make your API keys publicly available
  • Put all your keys in a single text file located at the root of your app directory
  • When the project is due, I will send an email to the class mailing list requesting API keys. Each project manager will reply to that email and attach their API key file.
  • Modify the file in your groups github repository to contain the following information
    1. Any specific installation instructions if required. Including necessary modules that have not been discussed in class.
    2. What your site is supposed to do.
    3. How to use your site

  • Create a design document for the project. 
  • Include a timeline for your project with incremental deadlines.
  • Include a component map, site map and database schema (if applicable), as well as any necessary supporting documentation.
  • Divide the tasks among your group members. Include a "Project Manager"
    • The Project Manager cannot have held that role for Project 0
    • Project manager should also have coding tasks, but will also make sure the group is consistently moving together.
    • Project manager should make certain the design document is coherent and that the group is adhering to the agreed design.
    • If changes need to be made to the design, project manager should be informed.
    • There will be a summary document at the end of the project created by the group, but the project manager will have certain duties pertaining to that document as well.
  • Create a pdf titled DESIGN.pdf in the upgraded-parakeet repository.
Design Document Rubric
  • database schema (if applicable, 0 - 1)
  • task delegation (0 - 1)
  • site map (0 - 3)
  • component map (0 - 3)
  • component description (0 - 5)