React & FastAPI File Uploader

Замовник: AI | Опубліковано: 19.02.2026
Бюджет: 30 $

I need a small, self-contained web application that couples a React front end with a FastAPI back end. The sole purpose of the site is to let a user choose a file (max 1 MB), press Upload, and immediately receive a unique receipt number once the transfer succeeds. Back-end details • FastAPI should expose a single POST endpoint that accepts the file stream, enforces the 1 MB size cap, stores the file in a configurable server directory, and responds with the generated receipt number in JSON. • For each upload, write a line to an uploads.csv log containing the receipt number and the original filename. No route for listing, downloading, or otherwise exposing stored files should exist. Front-end details A minimal React page with nothing more than an upload field, a submit button, and a receipt confirmation area will do. Because the app will sit behind an nginx reverse proxy, please avoid hard-coded ports, respect the host headers, and make the base path easily adjustable. Feel free to pick any lightweight styling solution or vanilla CSS; I have no strict preference. Acceptance criteria 1. Any file above 1 MB is rejected client- or server-side with a clear error message. 2. Successful uploads return a UUID-like receipt number. 3. nginx proxying works out of the box after the base path is set in one place. 4. uploads.csv is appended correctly on every successful request. Deliverables • Complete source code for both React and FastAPI components • A brief README describing local setup, environment variables (upload directory, base path), and a sample nginx snippet That’s all—clean, simple, and reliable.