...loading
salim.codes...loading
salim.codesA full-stack book tracking platform built from scratch using Node.js, Express, EJS, and SQLite without relying on frontend frameworks.
Screenshots
Features
User Authentication
Secure user registration, login, logout, password hashing, and session-based authentication with protected routes.
Book Management
Create, browse, edit, and delete books while ensuring users can only modify their own submissions.
Reading Tracker
Track reading status, monitor page progress, and organize books into Want to Read, Reading, and Finished collections.
Ratings & Reviews
Write, edit, and delete book reviews with star ratings while displaying community averages for every book.
Search & Discovery
Quickly locate books by title, author, or genre using integrated search and filtering capabilities.
Robust Backend Validation
Performs comprehensive server-side validation, graceful error handling, custom error pages, and user-friendly feedback.
Why it was built
Book Club App is a personal learning project built to explore full-stack web development without relying on frontend frameworks. The goal was to understand how modern web applications work under the hood by implementing routing, authentication, server-side rendering, relational databases, sessions, validation, and CRUD operations using only Express, EJS, and SQLite. Throughout the project, emphasis was placed on writing modular code, designing a maintainable architecture, and creating an intuitive user experience while keeping the technology stack intentionally lightweight.
Tech stack
Node.js
Runs the backend server and application logic.
Express.js
Handles routing, middleware, authentication, and HTTP request processing.
EJS
Provides server-side rendering for dynamic HTML pages.
SQLite
Stores users, books, reading progress, and reviews in a lightweight relational database.
Express Session
Maintains authenticated user sessions across requests.
CSS
Creates a responsive and consistent user interface without CSS frameworks.