Inspiration
Reading among Gen Z has significantly declined, and we sought to create an interactive and personalized way to reignite interest in reading. LeafIt tailors book recommendations to individual preferences, goals, and genres to foster a reading habit that feels rewarding and engaging.
What it does
LeafIt takes user input—such as genres, interests, and objectives—and generates personalized book recommendations and monthly reading lists. It incorporates features like reading streaks, rewards for progress, and the ability to review books, which then influence future recommendations. This creates a feedback loop that keeps the reading experience adaptive and engaging.
How we built it
We used React and Tailwind for the frontend UI/UX, FastAPI for the backend API, and MongoDB Atlas to store user data, preferences, and reviews. OpenAI’s API powers the personalized book recommendations by processing user input and returning tailored suggestions.
Challenges we ran into
We faced challenges in integrating the React frontend with FastAPI to ensure seamless data flow between the two, particularly when storing and fetching data from MongoDB Atlas. Styling and ensuring responsiveness in the UI also required careful coordination between the frontend and backend teams
Accomplishments that we're proud of
We successfully developed an intuitive user interface, including a landing page and sign-up page, preference-based input, personalized book recommendations, and a user dashboard showcasing reading streaks and progress. Our ability to implement AI-powered suggestions and a smooth interaction flow stands out as a major achievement.
What we learned
We gained significant experience in integrating AI through OpenAI’s API to process user data and provide dynamic recommendations. Additionally, we deepened our understanding of React and Tailwind for frontend development and learned how to combine FastAPI with React to build a robust API-driven web app. We also strengthened our skills in MongoDB Atlas for scalable data storage.
What's next for LeafIt
We plan to add social features, such as user leaderboards, reading groups, and adaptive difficulty in book suggestions. We aim to introduce a mobile app version that allows users to read within the app, offers a subscription service for access to curated booklists, and integrates reading challenges, rewards, and in-app book purchasing to create a fully immersive reading experience.
Built With
- css
- fastapi
- html
- javascript
- mongodb-atlas
- python
- react
- tailwind
- typescript
Log in or sign up for Devpost to join the conversation.