Bookify is a simple full-stack web application that allows users to borrow, return, and pay for books. It is built with React (frontend) and Java Spring Boot (backend).
- Frontend: Deployed on Vercel
- Backend: Deployed on Render
- Database: Deployed on Aiven
- Authentication: Integrated with Auth0 for login/logout
- Payment: Integrated with Stripe in test mode with full features
- React 18
- React Router DOM
- Auth0 React SDK (
@auth0/auth0-react) β for authentication - Stripe JS + React Stripe (
@stripe/react-stripe-js,@stripe/stripe-js) β for payment - TypeScript
- Hosting: Vercel
- Spring Boot 3.2
- Maven
- Java 18
- RESTful API
- Hosting: Render
Auth0 is used for OAuth2/OIDC user authentication. After logging in, users are redirected to /callback and issued an access token to communicate securely with the backend API.
Stripe is integrated to handle secure payments using the @stripe/react-stripe-js package on the frontend and stripe SDK on the backend to create checkout sessions.
- π¨βπ« Chad Darby, Eric Roby β for their amazing course Full Stack: React and Java Spring Boot β The Developer Guide
- βοΈ Vercel, Railway β Fast, free, and reliable deployment platforms
- π Auth0 β Easy-to-integrate OAuth2 authentication with a generous free tier
- π³ Stripe β Secure, developer-friendly online payment system
- πΈ TrαΊ§n Ngα»c Anh Khoa β for providing beautiful book images that made the UI shine β€οΈ
- π¨ Canva β for being a lovely design tool to build up our branding
- πββοΈ Myself (NgΓ΄ Quang TrΖ°α»ng) β who coded this through sleepless nights and doubled as a reluctant but determined designer =))
Made with love by TruongPersonal β Bookify Project πΌ