An admin review app for social posts stored in Google Sheets. Reviewers approve, disapprove, or flag a post with caution, and each decision writes back to the source sheet.

Built with React and Vite, running on Netlify Functions with a Google Sheets API backend. A separate password-protected upload page lets clients add new posts (title, caption, scheduled date, images) straight into the review queue without seeing existing decisions — images upload directly to Cloudinary from the browser via an unsigned upload preset, so no secrets are exposed client-side.

GitHub

Tech Stack

How This Holds Up for a Web Dev Role

Graded against what this project actually had to solve, not a generic checklist: