Frontend internship project · Compensation pending

Turning supplied requirements into a connected browser experience.

I implemented a responsive AI skin-analysis flow using the design, assets, APIs, and phased requirements supplied by Frontend Simplified.

RoleFrontend implementation
Provided by FESDesign · Assets · APIs · Requirements
Compensation$200 expected, not confirmed received

01 / Context

Implementation work—not an original product-design claim.

Frontend Simplified supplied the visual direction, assets, external APIs, expected behavior, and phased requirements. My responsibility was to translate those inputs into a working, typed, responsive application. This was not direct client work.

02 / Challenge

Several browser capabilities had to feel like one flow.

The experience connects validated intake data, asynchronous API requests, gallery-to-Base64 image handling, camera permissions, selfie capture, and demographic results that users can review and correct.

03 / Implementation

Required behaviors verified in the repository.

  • Responsive landing, intake, scan, results, and demographics routes
  • Controlled name and location inputs with string validation
  • External API requests, local persistence, navigation, and error feedback
  • Gallery upload with FileReader and Base64 conversion
  • Camera permission, video preview, canvas capture, JPEG conversion, and media cleanup
  • Demographic ranking, two-decimal confidence display, correction, reset, and confirmation

04 / Verification boundary

A strong build with one honest testing gate remaining.

The repository passes lint, TypeScript compilation, and a production build. Its public Home, Analysis, Scan, and Demographics routes return successfully. Before calling the flow fully verified, I still need one manual live-browser pass covering the external APIs, upload, camera, selfie, and mobile interactions.

The public project also needs a clear facial-image disclosure, stronger upload validation, a project-specific README, and cleanup of placeholder or unused routes.

Previous case study

PawCircle Membership ↗