This series documents a PDF-to-image conversion application built with React, AWS Amplify, API Gateway, Lambda, and S3. The first part focuses on the browser application and the workflow a visitor sees before the serverless processing begins.

AWS Amplify makes it straightforward to begin a React application and connect it to AWS services. It can provide authentication and GraphQL capabilities when needed, but this project keeps the first version focused on uploads, API calls, and static hosting.

The application starts from a React project, then adds the components needed to choose a PDF, show progress, and present generated image files. The browser gathers file details and requests a signed upload URL instead of exposing storage credentials.

A signed request lets the browser upload directly to S3 with a narrowly scoped permission. The application keeps a safe file name, records the file type, and updates its visible state as the upload and conversion workflow progresses.

The interface is deliberately split into small pieces: the upload control starts the process, a loading state gives immediate feedback, and an image area is ready to display pages once processing is complete. That separation keeps the client manageable as the workflow grows.

The remaining parts of the series cover the extra React components and the Lambda function that converts the uploaded PDF. Together, the pieces demonstrate a serverless pattern in which the browser uploads a file, background processing creates outputs, and the application presents the result.