Leaf

A book tracking app where you can create playlists and save books you wish to read for later.

Screenshots

Stack Used

React

Next.js

Prisma

NextAuth

PostgreSQL

Railway

Vercel

What is this Project?

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.

Why I built it:

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.

How I built it:

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!