Skip to content

Project 1A: Build Checkpoint

Deliverables

Build Checkpoint – 5 points – due Friday, September 20th, 11:59pm

Getting Started

Repository Setup

Fork the class-specific repository into your personal GitHub account.

Warning

Even though this project is based off of an active open source project, we have made changes to ensure its suitability for our class. As such, be sure you are forking off of UCF-CEN-5016/Fakeflix-UCF and direct any questions to course staff. Do not contact the maintainers of Fakeflix for assistance with your homework questions.

Ensure that GitHub Actions are enabled (click the green button under the "Actions" tab), then follow the below installation instructions based on your computer's operating system:

Once you have run Fakeflix successfully, the login page for Fakeflix should be visible in the browser window that the npm start command launcehd. By default, Fakeflix will be deployed to port 3000 on your machine. You may change this port number (e.g. to avoid conflict with another process running on your machine).

Fakeflix Main Page

Warning

In this class, we do expect students to first try debugging errors on their own; this includes following stack traces, searching up error strings and unfamiliar outputs, etc. If you do get stuck, or if the process of installing and running Fakeflix is taking you more than a few hours, stop and ask for help on Ed Discussions!

Take some time to click through the pages and explore the different features that Fakeflix has to offer.

Analysis Tools

When working on an existing codebase, especially in a collaborative setting, we want to ensure that none of our changes introduce unexpected bugs or issues for other developers. To fulfill these goals, we often use different tools to help us evaluate our code. Luckily, Fakeflix is already packaged with a few neat tools!

Follow the Development Tools section in the repository README to run both the linter and testing tools provided by Fakeflix on your computer. Without any changes to the repository, both tools should pass (the Linter output should be blank and all tests should pass).

After the test suite finishes running, Fakeflix will also generate a code coverage report. This report gives you measurements with regards to what percentage of the codebase is covered by the test suite.

Coverage Report

The tests for this codebase... leave something to be desired, there are currently only two test that test some utilities in a single file. This could be one area that you work on for the SDE project!

If you are seeing red failing messages, it may mean that the test suite was not run properly. Double-check that all of the tests passed and that there were no failures.

More on Analysis Tools

A linter is a tool that directly analyzes your source code for common errors. A test suite is a set of test cases that you write for a software program to show that it has some specified set of behaviors; our testing tool provides a framework to structure our test cases, runs the test suite, and generates a report of which tests pass/fail.

We will do a more in-depth exploration of analysis tools later in the course. For now, just know that these tools exist for you to use in evaluating your code.

Build Checkpoint (5 pts)

Upon completing the above steps, take screenshots of

  • the login page of Fakeflix, and
  • the coverage report generated by the coverage tool

Be sure the URL is clearly visible in the login page screenshot (i.e. localhost:3000 for the login page), so we can confirm that you have everything running locally. The test screenshot should be from the output of running npm test from the terminal.

Submit the two screenshots to Webcourses.

Grading

To receive full credit for this checkpoint, we expect:

  • A Webcourses submission of two screenshots showing a local running build of Fakeflix and the coverage report from the terminal