Implement template student portal #62

Merged
BobdaFett merged 21 commits from feat/value-display into main 2026-03-02 21:38:31 +00:00
BobdaFett commented 2026-03-02 21:28:56 +00:00 (Migrated from github.com)

This PR creates the majority of the student portal for use by student users. It shows an alternate forward-facing way to present the application, using a sidebar of tabs and new components that facilitate a better UX.

The application also contains a few changes to the admin page, the biggest two being the ability to export a file containing scholarship information and a new login page intended to help secure that information.

The most important changes are these:

New Features:

  • Created DataDisplay component for easy display of nested ValueType enums, including those contained in a HashMap<String, ValueType>.
  • Created FileDrop component with corresponding API endpoints upload_file, delete_file, and list_files. These are dependent upon the input's form_id, the input's name, and the access_token for the currently signed in user.
  • Added validate_and_get_token_info function that checks an access token and gets a UserClaims struct from it.
  • Fully implemented the StudentEligibilityPage, where students may now upload their essays.
  • Implement new StudentFinancialPage, which allows students to upload their FAFSA information.
This PR creates the majority of the student portal for use by student users. It shows an alternate forward-facing way to present the application, using a sidebar of tabs and new components that facilitate a better UX. The application also contains a few changes to the admin page, the biggest two being the ability to export a file containing scholarship information and a new login page intended to help secure that information. The most important changes are these: ## New Features: - Created `DataDisplay` component for easy display of nested `ValueType` enums, including those contained in a `HashMap<String, ValueType>`. - Created `FileDrop` component with corresponding API endpoints `upload_file`, `delete_file`, and `list_files`. These are dependent upon the input's `form_id`, the input's name, and the `access_token` for the currently signed in user. - Added `validate_and_get_token_info` function that checks an access token and gets a `UserClaims` struct from it. - Fully implemented the `StudentEligibilityPage`, where students may now upload their essays. - Implement new `StudentFinancialPage`, which allows students to upload their FAFSA information.
BobdaFett commented 2026-03-02 21:31:16 +00:00 (Migrated from github.com)

Some things that still need to be done after this is merged:

  • Add buttons on pages that say they are placeholders (specifically the StudentAdditionalPage and the StudentHomePage)
  • Create a date picker component
  • Close the provider forms
  • Add an admin page that will allow picked dates to close forms
  • Force users to upload files that are only of a specific type (*.pdf, *.txt, etc)

I will still merge this for now, but at least the first two must be finished before final deployment.

Some things that still need to be done after this is merged: - Add buttons on pages that say they are placeholders (specifically the `StudentAdditionalPage` and the `StudentHomePage`) - Create a date picker component - Close the provider forms - Add an admin page that will allow picked dates to close forms - Force users to upload files that are only of a specific type (`*.pdf`, `*.txt`, etc) I will still merge this for now, but at least the first two must be finished before final deployment.
Sign in to join this conversation.