A collaborative project developed using React.js, focusing on user authentication, authorization, and comprehensive CRUD functionality. The project involved building out internal Express APIs, integrating external APIs, and managing image uploads with AWS S3, all within a group collaboration setting employing TDD and git workflows.
Key Features
- User authentication and authorization
- CRUD functionality for managing trip data
- Drag and drop image functionality
- Hosting images on AWS S3
- Integration with various external APIs
Technologies Used
React.js, Express, Node.js, AWS S3, TDD with Jest, Git for version control
Purpose and Goal
To provide a platform for users to rate their trips and experiences, with a focus on ease of use and robust data management.
Role
Collaborative role as one of four full-stack developers, with specific focus on implementing authentication, CRUD functionality, and the drag and drop image feature.
Technical Hurdles
- Implementing drag and drop functionality for image uploads
- Configuring AWS S3 for secure and efficient image hosting
- Ensuring robust authentication and authorization to protect user data
Solutions
- Integrated react-dropzone for the front-end to handle drag and drop of images
- Configured AWS S3 buckets for storage and retrieval of images ensuring security and scalability
- Implemented JWT-based authentication and role-based authorization to secure application endpoints