Book Review App is a modern, full-stack three-tier web application that allows users to browse books, read reviews, and submit their own. It demonstrates clean separation of concerns between frontend and backend, and is ideal for hands-on DevOps and cloud deployment practices.
- Unauthenticated users can view book details and existing reviews.
- Authenticated users can register, log in, and submit reviews.
This project is part of the DevOps Zero to Hero: Docker, K8s, Cloud, CI/CD & 4 Projects Udemy course and designed to help students practice DevOps tools and cloud infrastructure end-to-end.
- Frontend: Built using Next.js, providing server-side rendering and dynamic routing.
- Backend: Powered by Node.js and Express.js, handling authentication, book data, and reviews.
- Database: Uses MySQL with Sequelize ORM.
This three-tier architecture can be independently deployed, making it ideal for containerization, cloud hosting, and CI/CD implementation.
- User registration and login
- Email and password-based login
- Secure authentication using JWT tokens
- View all books
- Fetch detailed info for each book
- (Future enhancement: Admins can add/edit books)
- View reviews for each book
- Authenticated users can post reviews
- Each review includes rating, username, and timestamp
- Frontend dynamically interacts with backend APIs
- React Context manages global authentication state
- Next.js – React framework for SSR and routing
- Tailwind CSS – Utility-first CSS framework
- Axios – HTTP client for API calls
- React Context API – For managing global auth state
- Node.js & Express.js – REST API development
- MySQL & Sequelize – Relational DB and ORM
- JWT – Token-based authentication
- bcrypt.js – Password hashing
- CORS – Cross-origin request handling
/book-review-app
├── /frontend # Next.js frontend
├── /backend # Node.js & Express backend
└── README.md # Project overview
/frontend
├── /src
│ ├── /app
│ │ ├── page.js # Home page (list of books)
│ │ ├── /book/[id] # Dynamic route for book details
│ │ ├── /login # Login page
│ │ ├── /register # Register page
│ ├── /components # Reusable UI components (Navbar, etc.)
│ ├── /context # React Context for auth state
│ ├── /services # Axios API functions
│ ├── /styles # Tailwind global styles
├── next.config.js # Next.js config
├── package.json # Dependencies and scripts
└── README.md # Frontend-specific docs
/backend
├── /src
│ ├── /config # Database config and connection
│ ├── /models # Sequelize models (User, Book, Review)
│ ├── /routes # Express route handlers
│ ├── /controllers # API business logic
│ ├── /middleware # JWT auth middleware
│ └── server.js # Entry point of the backend server
├── package.json # Dependencies and scripts
└── README.md # Backend-specific docs
Setup steps for both frontend and backend are provided in their respective folders:
Follow the instructions to install dependencies, configure environment variables, and start the application locally.
This project is designed exclusively for the Udemy course: DevOps Zero to Hero: Docker, K8s, Cloud, CI/CD & 4 Projects.
Students will gain hands-on experience in:
- Git, Docker, Kubernetes
- Terraform, Ansible
- CI/CD Pipelines
- AWS & Azure Cloud
- Full-stack project deployment from scratch
This Book Review App serves as one of the 4 real-world DevOps projects taught in the course.
