Final Project

Designing and implementing a web application of your own with Python and JavaScript.

Proposal Due
Status Report Due


The final project is your opportunity to design and implement a dynamic website of your own. So long as your final project draws upon this course’s lessons, the nature of your website will be entirely up to you, albeit subject to the staff’s approval.


In this project, you are asked to build a web application of your own. The nature of the application is up to you, subject to a few requirements:

  • Your web application must utilize Django (including at least one model) on the back-end and JavaScript on the front-end.
  • Your web application must be mobile-responsive.
  • In a in your project’s main directory, include a short writeup describing your project, what’s contained in each file you created, and (optionally) any other additional information the staff should know about your project.
  • If you’ve added any Python packages that need to be installed in order to run your web application, be sure to add them to a requirements.txt file!

Beyond these requirements, the design, look, and feel of the website are up to you!


Before you begin working on your project, the proposal is an opportunity for you to run your idea or ideas by the teaching staff. By , complete this form to describe your project and define your milestones.

Your project may be an extension to Projects 1, 2, 3, or 4, so long as that extension is approximately equivalent in scope to the original project itself. You may also choose to create an entirely new web application for your final project.

Your teaching fellow may approve your project, or request modifications. You may begin working on your final project immediately, but know that your teaching fellow may request changes to ensure your project is of sufficient scope. Feel free to use the proposal as an opportunity to ask any questions you may have about the final project as well.

Status Report

To update your teaching fellow on the status of your project, fill out this form no later than .

How to Get Help

  1. Ask questions on Ed
  2. Attend office hours
  3. Email

How to Submit

Step 1

Fill out this form.

Step 2

If you don’t already have it installed, install submit50 by running pip3 install submit50. Then, execute the below, logging in with your GitHub username and password when prompted. For security, you’ll see asterisks (*) instead of the actual characters in your password.

submit50 web50/projects/2020/spring/final

Congratulations! You’ve completed the final project!