-
Notifications
You must be signed in to change notification settings - Fork 8
Image Gallery Architecture and Tech Stack
goldy4719 edited this page Apr 10, 2026
·
1 revision
This section details the serverless architecture and specialized tools used to build the image recognition and management gallery. The stack is designed for high availability, automated scaling, and secure user data isolation.
The application utilizes a decoupled serverless architecture, leveraging React for a dynamic frontend and Python-based AWS Lambda functions for backend logic. This design ensures that compute resources only run when needed, minimizing costs while maintaining the ability to handle fluctuating user traffic.
- AWS CLI configured with appropriate IAM permissions.
- Node.js and npm for managing React and Amplify dependencies.
- Python 3.x for local Lambda development and testing.
- Amplify CLI initialized within the project directory.
- React.js: Handles the component-based UI, providing a fast and responsive user experience.
- AWS Amplify: Simplifies the integration between the React frontend and backend cloud services, managing the deployment pipeline and client-side authentication logic.
- Python: Used for all Lambda functions due to its readability and robust support for the Boto3 library, which facilitates seamless interaction with AWS services.
- AWS Lambda: Executes backend code in response to triggers (such as file uploads or API calls) without the need to manage servers.
- Amazon S3: Serves as the primary object storage for all high-resolution image uploads.
- Amazon Cognito: Manages user registration, sign-in, and secure access control, ensuring users only interact with their own data.
- Amazon DynamoDB: A NoSQL database that stores image metadata, including userID, imageID, uploadTimestamp, and the labels generated by AWS Rekognition. Amazon API Gateway: Acts as the secure entry point for the frontend to communicate with Lambda functions, handling request routing and security.