PageTurner is a sophisticated online bookstore platform built on the MEAN stack (MongoDB, Express.js, Angular, and Node.js). Designed for the Information Technology Institute (ITI), this application offers a full-featured e-commerce experience tailored for book lovers and retailers alike.
- User Authentication System: Secure login and registration systems for users.
- Dynamic Book Catalog: Admins can manage book listings with ease.
- Shopping Cart & Checkout: Full e-commerce capabilities including a shopping cart and checkout process.
- Order Tracking: Users can track their orders in real-time.
- Responsive Design: A mobile-friendly design ensures accessibility on all devices.
- Secure Payment Integration: Integrates with leading payment gateways for secure transactions.
- Advanced Search: Users can search for books by title, author, or ISBN.
PageTurner/
├── client/ # Angular front-end
│ ├── src/
│ │ ├── app/
│ │ ├── assets/
│ │ └── styles/
│ ├── angular.json
│ ├── package.json
│ └── tsconfig.json
│
├── server/ # Express back-end
│ ├── config/
│ ├── controllers/
│ ├── models/
│ ├── routes/
│ ├── services/
│ ├── validations/
│ ├── app.js
│ └── server.js
│
├── .gitignore
├── package.json
└── README.md
- Angular v13+
- Angular Material
- NgRx
- RxJS
- HTML5 & CSS3/SCSS
- Bootstrap
- Node.js
- Express.js
- MongoDB
- Mongoose
- JWT
- Bcrypt
- Git & GitHub
- npm
- ESLint & Prettier
- Jest & Jasmine
- Node.js (v14+)
- npm or yarn
- Angular CLI (v13+)
- MongoDB
-
Clone the repository:
git clone https://github.com/ahmed-el-amine/PageTurner.git cd PageTurner -
Backend setup:
cd apps/server npm install npm run dev -
Setup Frontend
cd ../client
npm install
ng serve- Access the Application
- Frontend: http://localhost:4200
- Backend API: http://localhost:5000/api
- Register and authenticate securely.
- Explore books by various categories.
- Add books to the cart and proceed through a secure checkout process.
- Review and rate purchased books.
- Manage personal user profiles.
- Manage inventory, including add, edit, and remove listings.
- Oversee order processing and status updates.
- Analyze sales data and generate reports.
- Control user access and roles.
This project is licensed under the MIT License - see the LICENSE file for details.
- Appreciation to the Information Technology Institute (ITI) for their guidance.
- Gratitude to the MEAN Stack community for their invaluable resources.
Made with ❤️ by the PageTurner Development Team