Final Project Review, Cleanup Checklist, and What to Improve Next
Review your finished dashboard architecture, learn how to safely clean up AWS resources, and identify the next steps for production hardening.
This lesson is purely conceptual — no AWS usage required.
What You Have Built
At this point, your project has a static frontend, an HTTP API, Lambda functions, an S3 upload bucket, a DynamoDB metadata table, CloudWatch logs, and secure Cognito sign-in hosted on Amplify.
The browser talks to API Gateway, API Gateway talks to Lambda, Lambda reads and writes DynamoDB and S3, S3 stores the files, and CloudWatch holds the logs.
Final Project Review
Your dashboard now has these major capabilities:
| Capability | Main AWS pieces |
|---|---|
| Secure Hosting | Amplify Hosting or CloudFront |
| Sign-in | Cognito User Pool |
| API Routes | API Gateway HTTP API |
| Backend Logic | Lambda |
| File Storage | S3 |
| Metadata Storage | DynamoDB |
| Logging | CloudWatch Logs |
Each service does one focused job. This modularity is the heart of serverless architecture.
The Three End-of-Project Choices
You now have three sensible options for your AWS resources:
- Keep it running: If this is becoming a real portfolio project. Focus on better auth, error handling, and deployment hygiene.
- Pause it safely: Reduce waste by shortening log retention and removing any resources you aren't actively using.
- Fully tear it down: If this was only a learning build. Delete everything to ensure you don't incur ongoing costs.
Cleanup Checklist (Tear Down)
Use this order to ensure you don't leave dangling resources behind:
- Delete the Amplify App: Removes the frontend deployment and CDN.
- Delete the HTTP API: Removes the public endpoint so the backend is no longer reachable.
- Delete the Lambda Functions: Removes the compute logic and associated versions.
- Delete the DynamoDB Table: Removes all metadata records and the table itself.
- Delete the Cognito User Pool: Users can no longer sign in. (Note: Turn off "Deletion Protection" first if enabled).
- Empty and Delete the S3 Bucket: You must empty all objects (including versions) before S3 allows you to delete the bucket.
- Clean Up CloudWatch Logs: Set log retention to 1 day or delete the log groups entirely.
"Pause but Keep" Checklist
If you want to keep the project for your portfolio while minimizing costs:
- Shorten Log Retention: Change CloudWatch retention from "Never Expire" to 1 or 3 days.
- Empty Test Data: Clear out old S3 uploads and DynamoDB records you no longer need.
- Check Free Tier: Monitor your AWS Billing dashboard to see if you are exceeding any Free Tier limits (especially for S3 storage or Cognito monthly active users).
What to Improve Next
If you want to keep building, here is your roadmap for production hardening:
1) Better Authorization
Move beyond just "is signed in" to "what can they do?". Implement custom scopes or group-based access control in Cognito.
2) Infrastructure as Code (IaC)
Instead of clicking in the console, learn how to define this entire dashboard using the AWS CDK or AWS SAM. This makes your deployment repeatable and version-controlled.
3) Monitoring & Alarms
Add CloudWatch Alarms to notify you if Lambda errors spike or if your API is getting hit with unauthorized requests.
Final Readiness Check
You can consider Unit 3 complete if you can confidently answer these:
| Question | Ready if you can say... |
|---|---|
| How does it work? | Browser → API Gateway → Lambda → S3/DynamoDB |
| How is it secured? | Cognito sign-in + JWT-protected API routes |
| How is it deployed? | Amplify or CloudFront path with HTTPS |
| How do you clean it up? | Delete app/API/functions/table/pool, empty bucket |
Micro-activity 1: Your Project Status
Think about it
Choose one: I am keeping / pausing / deleting this project because ___. List exactly which AWS resources you will keep or remove based on your choice.
Micro-activity 2: Match Services to Roles
Match each AWS service to its dashboard role
Examples
Choose one, then match it on the right
Characteristics
Select an example first
0 of 7 matched so far.
Summary
This lesson closes the deployment phase of your dashboard. The most important skill in the cloud isn't just building—it's owning the lifecycle. Knowing how to deploy, secure, observe, and eventually decommission a project is what moves you toward professional-grade work.