m-tedeschi / ez-resume

Beautiful, dynamic resumes done quick & easy using Jake's Resume Template
2 stars 0 forks source link

US3: Backend Setup #3

Open m-tedeschi opened 1 month ago

m-tedeschi commented 1 month ago

AS A logged-in user, I WANT TO generate a resume from my text inputs to LaTeX code, TO use CloudConvert's API to convert from LaTeX to PDF SO THAT I can view/download my completed resume and submit it to companies (GOLDEN PATH ENDING).

SCENARIO: User Successfully Generates Resume GIVEN the user pressed the "Generate Resume" button, WHEN the user has selected WHICH resume to generate, AND the user has an internet connection, THEN the backend server should generate the corresponding LaTeX code for the resume, WITHIN several seconds, AND issue a cloud function call to use the CloudConvert API to convert the corresponding LaTeX file to PDF THEN serve the PDF to the user and store it on the server for several days. WITHIN several seconds.

SCENARIO: User Is Not Connected To The Internet GIVEN the user pressed the "Generate Resume" button, WHEN they are not connected to the internet, THEN the system should display an error code 0x90 "Please ensure you are connected to the internet" WITHIN 1 second, AND prompt the user to return to the main menu.

SCENARIO: Server Receives An Error While Generating Resume GIVEN the server threw an error WHEN performing the API call to CloudConvert THEN the system should log the error (e.g. if we ran out of Conversion Credits) AND throw an error code 0x91 to the user WITHIN 1 second AND email the administrators to alert them.

SCENARIO: User Receives An Error While Generating Resume GIVEN the server threw an error WHEN performing the API call to CloudConvert THEN the system should display an error code 0x91 "Error when generating resume. Please report this to the developer" WITHIN 1 second AND prompt the user to return to the main menu.

m-tedeschi commented 1 month ago

Update 1. The cloud function to convert a .tex document to .pdf using CloudConvert's API is working locally on my machine.