A Modern Web-Based Bookstore Experience
Read'n'Rave is a modern web-based bookstore designed to enhance the online reading experience. Developed as part of an Agile Software Development course at Princess Nourah University, this application allows users to explore books, manage purchases, and engage with the reading community through reviews and ratings.
- π User Authentication - Secure login and registration using Firebase
- π Book Discovery - Real-time search and advanced filtering options
- π Shopping Cart - Add books to cart and manage purchases
- β€οΈ Wishlist Management - Save books for later
- β Reviews & Ratings - Read and write book reviews with star ratings
- π± Responsive Design - Optimized for all screen sizes and devices
- π¨ Modern UI - Clean, user-friendly interface with smooth interactions
Experience Read'n'Rave live: https://v0-readn-rave-website.vercel.app/
| Technology | Purpose |
|---|---|
| React.js | Frontend framework for building interactive UI |
| Tailwind CSS | Utility-first CSS framework for modern styling |
| Firebase | Backend services (Authentication & Firestore Database) |
| Vercel | Deployment and hosting platform |
Before running this project, make sure you have:
- Node.js (v14 or higher)
- npm or yarn package manager
- Git
git clone https://github.com/Rajawialqhtani/read-n-rave.git
cd read-n-ravenpm installCreate a .env.local file in the root directory and add your Firebase configuration:
REACT_APP_FIREBASE_API_KEY=your_api_key
REACT_APP_FIREBASE_AUTH_DOMAIN=your_auth_domain
REACT_APP_FIREBASE_PROJECT_ID=your_project_id
REACT_APP_FIREBASE_STORAGE_BUCKET=your_storage_bucket
REACT_APP_FIREBASE_MESSAGING_SENDER_ID=your_messaging_sender_id
REACT_APP_FIREBASE_APP_ID=your_app_idnpm run devOpen http://localhost:3000 to view the application in your browser.
read-n-rave/
βββ public/
βββ src/
β βββ components/
β βββ pages/
β βββ hooks/
β βββ services/
β βββ utils/
β βββ App.js
βββ package.json
βββ README.md
npm run dev- Start development servernpm run build- Build for productionnpm run start- Start production servernpm run lint- Run ESLint
This project was developed using Agile methodologies, including:
- β Sprint Planning and Daily Standups
- β Product Backlog Creation and Management
- β Iterative Sprint Reviews and Retrospectives
- β Version Control using Git and GitHub
- β Continuous Integration and Deployment
This project was developed by students from Princess Nourah University as part of the CS 388 Agile Software Development course:
| Name | Role |
|---|---|
| Hala Alqhtani | Product Owner |
| Ghaida Aldrees | Scrum Master |
| Rajawi Alqhtani | Developer |
| Khulud Alkenani | Developer |
| Reem Awshan | Developer |
We welcome contributions! Please feel free to submit a Pull Request.
- Fork the project
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Princess Nourah University CS Department
- CS 388 Agile Software Development Course
- Firebase for backend services
- Vercel for hosting
For questions or support, please reach out to the development team or create an issue in this repository.
Made with β€οΈ by the Read'n'Rave Team at Princess Nourah University