Fullstack Engineering Projects
Every project below is a real fullstack problem teams hit in production - broken React state, blank dashboards, uploads, streaming, and global delivery. Fix it in a live cloud workspace and it lands on your portfolio as a clickable proof point.
20 projects to build
Fix a React useState Stale-State BugSwitched the three setCount calls in `addThree` to the functional updater form - `setCount(c => c + 1)` - so eFix a Blank React Dashboard (Failed Fetch)Fixed loadUsers() to return response.data (the API wraps the array in a `data` field) instead of the whole resUpload Avatars to AWS S3 With Presigned URLsImplemented the browser-side upload - fetch PUT the image bytes to the presigned S3 URL with the right contentFix the React Search That Won't Filter (useEffect Deps)Added the missing `query` dependency to the useEffect's dependency array so the filtered list recomputes as yoFix the CORS Error Blocking Your API CallsAdded the missing CORS headers (and a preflight handler) to the Flask API so the browser stops blocking the ReStop the Form From Reloading the Page on SubmitCalled e.preventDefault() in the form's submit handler so React handles the add in JavaScript instead of the bFix the Stray '0' React Renders for an Empty CountChanged {count && <Badge/>} to {count > 0 && <Badge/>} so an empty inbox renders nothing instead of a stray '0Return 201 Created From the POST EndpointChanged the create-todo endpoint to return HTTP 201 Created instead of a bare 200, so the React UI's `res.statReturn 400 on a Missing Field Instead of Crashing With 500Validated the required email field before using it, so a request without email returns a clean 400 with a messFix the Cart Total That Concatenates Instead of AddingCoerced the string amounts to numbers before summing, so the cart total adds up (10 + 5 + 3 = 18) instead of cFix the Leaderboard That Sorts Numbers as StringsPassed a numeric comparator to .sort() so scores sort by value (100, 50, 25, 9) instead of JavaScript's defaulMigrate a React App From JavaScript to TypeScriptConverted api.js to api.ts with a User type, explicit parameter types, and Promise<User>/Promise<User[]> returWire React to Supabase (CRUD + Realtime)Implemented profile CRUD via the pg client - createProfile / getProfile / updateProfile / deleteProfile againsAdd a JWT Login and a Protected Route in ReactMade the /api/me endpoint actually require a valid Bearer JWT (it was returning the profile to anyone), so theFix the AI Chat That Dumps the Whole Reply at OnceFixed the streaming chat backend to forward LLM tokens as they arrive instead of buffering the whole reply, soImplement Cursor Pagination for a 'Load More' FeedImplemented cursor-based pagination - the feed endpoint now returns the items AFTER a given cursor id plus theFree the Port: Your Server Won't Start (EADDRINUSE)Tracked down the stale process holding port 8000 and killed it so the real API could bind - the classic 'addreFix the CRLF Line Endings Breaking start.shConverted start.sh from Windows CRLF to Unix LF line endings so the shebang resolves and the script runs - fixDeploy a React App Globally With AWS CloudFrontWrote deploy.sh that creates the S3 bucket, syncs the build artifacts up, then creates a CloudFront distributiReplace LIKE Search With Postgres Full-Text SearchSwapped a naive ILIKE substring search for Postgres full-text search (to_tsvector @@ plainto_tsquery, ranked b
Plus 11+ more Fullstack projects in the workspace, with new ones added regularly.
More for Fullstack engineers
Build your Fullstack portfolio free. Fix real systems in a live cloud workspace - every fix is yours to keep.
Start free →