A book tracking app where you can create playlists and save books you wish to read for later.
— React
— Next.js
— Prisma
— NextAuth
— PostgreSQL
— Railway
— Vercel
Leaf is nothing but a fun book tracking app where you can keep track of books you wish to read by managing playlists of books! Leaf uses Google Books API and has over 10M+ books for you to choose from.
I wanted to make an app similar to Goodreads because my personal experience with Goodreads was not so good. Their UI looks so outdated now and it is a bit janky. So, this was mainly the reason why I made Leaf. I also got a lot of hands-on experience with Next.js and Prisma. I gained a lot of experience building a real-world project and I think this is one of the many best things I've done so far.
I decided to use Next.js as my main tech here because it lets you build and integrate API routes in your application seamlessly without having a back-end. So I'd have one less thing to care about. For authenticating the users, I used NextAuth.js which is amazing and pretty much works out of the box with Next.js.
I also wanted to get experience with Prisma and PostgreSQL, therefore I used both of these technologies while building this app. For querying and fetching the books, I used the Google Books API which is quite awesome and has millions of books! Finally, I deployed the main app on Vercel and hosted my PostgreSQL database on Railway!