Fall 2026 Course Project

Due: 11:59 pm Dec 6, 2026

VersionDateChanges
1.01/21/2026Original specifications

Overview

This is an individual project, so you can claim to be a full-stack developer! Your project is to create a web-database application for our baseball database. The application must support users, who can sign up through the website. User information should be secure.

The project must follow the flask tutorial covered in class as part of Asynchronous Monday. On the first access to the web site, the user must be presented with the option to login or register. For the registration, the user must submit an unique username and a password. The application must securely store the user information in a table called users. The SQL command to create the table and to populate it with an original user must be part of your submission.

Once logged in, the user should be able to pull a franchise name from a drop down box. The application will randomly select a player or a manager that played(managed) at least 1 game for the franchise. All players and managers are equally likely to be selected. For players, it will generate the following report for that player:

For managers, it will generate the following report:

The system will remember all franchises selected by eash user in the database.

There should be a cheat button. When the cheat button is selected, a list of players who played in an all-star game for that franchise is presented. Note that some teams don't have any all-star players. Each player in the list is a link that will generate a page as described above.

There should be a list button. When the list button is selected, a list of 20 random players for that franchise is generated. Each player in the list is a link that will generate a page as described above.

There should be a managers button. When the managers button is selected, a list of managers for the franchise WHO WERE NEVER PLAYERS is generated. Each manager in the list is a link that will generate a page as described above.

There should be a history button that shows the last 5 franchises selected by the user. Each franchise in the list will set the default team to that franchise and randomly generate a page for a player from that franchise. All future selections will use this franchise.

Requirements

All projects must:
  1. Use the MariaDB relational database baseball that we used in the class
  2. Provide a file yourlastname.sql that creates the user table in the database
  3. Use Flask as your development backend
  4. Set the project name in .flaskenv
  5. You may not touch any database other than baseball.
  6. You may change the baseball database in any way needed for the project. These commands should be included in the yourlastname.sql file.
  7. Use ONLY these python libraries:

    Submission

    You must submit the following in a single zip file:

    Rubric

    Your project will be graded along these guidelines.