Inspiration
The idea for Gifty was born out of a shared passion for gift-giving and the desire to make the process of finding the perfect gift easier and more enjoyable. We noticed that in today's digital age, people often struggle to keep track of gift ideas and special occasions, leading to last-minute and sometimes less thoughtful gift choices. We were inspired to create a solution that would simplify and enhance the gift-giving experience for everyone.
What it does
Gifty is a versatile mobile application designed to streamline the entire gift-giving process. It acts as a central hub for gift inspiration, curation, and organization. With Gifty, users can:
- Discover Gift Ideas: Gifty sources gift suggestions from popular shopping platforms like Amazon, Shopee, and Lazada, ensuring a wide range of options to choose from.
- Create Wish Lists: Users can curate personalised wish lists for themselves and their loved ones, making it easy to keep track of desired gifts for any occasion.
- Set Reminders: Gifty includes a reminder system that allows users to set alerts for special events, ensuring they never miss an important occasion.
- Share Wish Lists: Users can share their wish lists with friends and family, making it effortless for loved ones to find the perfect gift.
How we built it
Gifty was built on a robust tech stack, ensuring seamless performance across both Android and iOS platforms. Leveraging the power of React Native, we created a universal application that seamlessly adapts to various mobile devices. Powerful UI libraries like React Native Paper and React Native Elements were integrated to ensure an intuitive and visually appealing user interface.
To efficiently manage the application's state, we implemented React Query, which facilitated smooth navigation and data handling within the app. Additionally, we focused on enhancing the user experience by leveraging tools like React Native Gesture Handler and Keyboard Aware Scroll View, optimizing interactions and screen adaptability.
For precise data handling, we employed Formik and Yup, which allowed us to manage forms and validate input, ensuring accurate data processing. Moment.js played a crucial role in formatting dates, ensuring that reminders and event tracking were spot-on.
To facilitate seamless communication with external APIs, we relied on Axios, enabling real-time data retrieval and updates. In cases where APIs were not readily available or lacked sufficient functionality, we turned to Selenium for web scraping. This ensured comprehensive and enriched product information for users.
The backend, built on Express, provided a secure foundation for handling HTTP requests and interactions. Sequelize served as the ORM tool, ensuring efficient data handling and organization within the Postgres database. Expo and AWS EC2 were instrumental in the build and deployment process, ensuring a reliable and accessible application.
Version control was crucial for collaboration, and Git played a pivotal role in managing different iterations of the application. Postman was employed for comprehensive API testing, ensuring the reliability and stability of backend interactions.
This meticulous combination of technologies and tools laid the foundation for Gifty, guaranteeing a smooth, intuitive, and reliable experience for users throughout their gift-giving journey.
Technologies used:
- React Native (UI)
- React Native Paper (UI)
- React Native Elements (UI)
- Moment (Date Formatting)
- Formik (Form Management)
- Yup (Input validation)
- React native gesture handler (UX)
- React native keyboard aware scroll view (UX)
- React native modal (UI)
- React native notifier (UI)
- React query (State Management)
- Axios (HTTP)
- Express (HTTP)
- Sequelize (DB ORM)
- Selenium (Web scraping)
- Expo (Build tool)
- Git (version control)
- Postman (API testing)
- AWS EC2 (Backend Deployment)
- Postgres (DB)
Challenges we ran into
- Complexity of Features: Gifty encompasses a range of features, including gift discovery, wish list creation, reminder setting, and social sharing. Balancing these features while maintaining a clean and intuitive design was a challenge.
- Obscure APIs: In cases where APIs were available, they were often poorly documented or had limited functionality. This made it necessary for our development team to invest additional time and effort in reverse engineering these APIs to extract the required data.
- Incomplete Information: Some platforms provided incomplete or inconsistent information about products. This required us to implement data enrichment processes to fill in the gaps and ensure that users had access to comprehensive product details.
- Information Presentation: Aggregating data from various shopping platforms brought the challenge of presenting this information cohesively. Ensuring that users could seamlessly access product details and options from multiple sources was complex.
Accomplishments that we're proud of
Throughout the development of Gifty, we achieved several significant milestones that we're immensely proud of:
- Intuitive UI Design: We dedicated extensive effort to crafting an intuitive and user-friendly interface. The result is an experience that guides users seamlessly through the app, ensuring an enjoyable and efficient gift-giving journey.
- First Mobile App: Gifty marks our very first journey into mobile app development. The fact that we were able to conceptualise, design, and launch a functional app is a testament to our team's adaptability and dedication to learning new technologies.
- Efficient Data Collection: Another of our major accomplishments was successfully gathering comprehensive listing information from various online shopping platforms. This not only broadened the range of gift options for users but also highlighted our proficiency in data acquisition and organization.
What we learned
Throughout the development and growth of Gifty, we have learned valuable lessons about the importance of user-centric design, the significance of data privacy, and the power of collaboration. We've also gained insights into user behavior and preferences, which continue to shape our app's development.
What's next for Gifty
The journey for Gifty doesn't end here. We have exciting plans for the future, including expanding our platform to include more shopping platforms, adding new features such as personalized gift recommendations, and exploring partnerships to offer exclusive deals and discounts to our users. Our goal is to become the go-to app for thoughtful and hassle-free gift-giving.
Built With
- amazon-ec2
- axios
- expo.io
- express.js
- formik
- git
- moment.js
- postgresql
- postman
- react-native
- react-native-element
- react-native-paper
- react-query
- selenium
- sequelize
- yup
Log in or sign up for Devpost to join the conversation.