DESCRIPTION
A Vue.js single page Images Gallery application. The Back-end is over an express-Server, PostgresSQL database & AWS Bucket for images upload.
FEATURES
- Anonymous Image Upload: One of the key features of the app was the ability for anonymous users to upload pictures and add titles and descriptions. This feature was implemented using a simple form with file upload capabilities, which would allow users to easily add new images to the gallery without needing to sign up or log in.
- Automated Gallery Rendering: To ensure that new images were immediately displayed in the gallery after being uploaded, an automatic rendering feature was implemented. This meant that the gallery would update in real-time, providing a seamless and convenient user experience.
- Image Enlargement and Commenting: Users could click on any image in the gallery to enlarge it and view additional information. They could also add comments, which would be instantly displayed alongside the image. This feature was designed to encourage user engagement and facilitate community building.
- Integrated Like Functionality: Finally, the app integrated a fully functional like system, which allowed users to indicate their appreciation for specific images. This feature was fully integrated with the backend database, ensuring that likes were accurately recorded and displayed in real-time.
CHALLENGES
Syntax Learning Curve: Coming from a non-framework background, learning the Vue.js syntax was initially quite challenging. However, as you got more familiar with the framework, you were able to appreciate the strengths and benefits of using a JS framework.
Modal Components and Prop Passing: Implementing modal components and passing props in Vue.js was not as straightforward as it was in React, which led to some difficulty in maintaining visibility and readability of the code. However, with practice and experience, you were able to develop better strategies for managing props and maintaining clear code structure.
Form Submission and AWS Setup: Setting up form submission and AWS bucket integration were also part of the learning curve with JS frameworks. While challenging at first, these experiences provided valuable opportunities for you to develop your skills and gain exposure to new technologies that you could leverage in future projects.