Welcome to Online Book Sales, an e-commerce platform where you can browse, purchase, and enjoy a wide range of books from our extensive catalog! Our system is built with a 3-tier architecture, featuring a MongoDB database backend, Node.js & Express.js middleware, and a sleek React frontend.
- Features π
- Live Project Links π
- Tech Stack π οΈ
- Code of Conduct π
- How to Contribute π€
- How to Run Locally π»
- Using GitHub Desktop π₯οΈ
- In-Depth Project Analysis π
- Our Contributors π
- Contact Information π§
- User Registration & Login: Secure account creation with user authentication.
- Browse Books: Explore our rich catalog with detailed book info.
- Shopping Cart: Easily add, update, or remove items.
- Order History: View your past purchases at any time.
- Frontend: Book4U π±οΈ
- Backend: API Server π
Frontend | Backend | Database |
---|---|---|
We encourage everyone to be respectful and inclusive. Please take a moment to review our Code of Conduct to help foster a positive environment. π¬
We welcome all contributions! π If you'd like to add new features or fix bugs, check out the Contributing Guidelines to get started. Fork the repo, clone it, make your changes, and submit a pull request.
Hereβs how to fork the project:
-
Navigate to the Repository:
- Head to the Online Book Sales repository.
-
Click the Fork Button:
- Click on the βForkβ button in the upper-right corner.
-
Create Your Copy:
- Select your GitHub account to fork the repository.
Follow these steps to run the project on your local machine:
-
Clone the repository:
git clone https://github.com/Trisha-tech/OnlineBookSales.git cd OnlineBookSales
-
Write the command.
npm install
-
For Frontend Go to 'client' directory write command
npm install
-
Write the command.
yarn start / npm start
That's it! Youβre ready to explore the application locally. π
- Error:
npm install
fails:- Ensure that Node.js and npm are correctly installed on your machine. You can check this by running
node -v
andnpm -v
in your terminal. - If you encounter permission issues, try using
sudo npm install
(for macOS/Linux) or running the command prompt as an administrator (for Windows).
- Ensure that Node.js and npm are correctly installed on your machine. You can check this by running
- Error:
Cannot find module 'express'
:- This error usually indicates that the required packages haven't been installed. Make sure to run
npm install
in both the root andclient
directories.
- This error usually indicates that the required packages haven't been installed. Make sure to run
- Server crashes on startup:
- Check the console logs for any errors that may provide hints about what went wrong. Common issues could be related to incorrect environment variables or database connection strings.
- Version conflicts:
- Ensure that all dependencies in your
package.json
are compatible. If you see warnings or errors during installation, consider usingnpm audit fix
to resolve vulnerabilities.
- Ensure that all dependencies in your
-
Q: How do I reset my local database?
- A: You can drop the existing database and run your migrations or seed scripts again. Make sure to back up any important data before doing this.
-
Q: How can I contact support?
- A: If you have further issues or questions, please open an issue in this repository, and we'll be happy to help!
- Clarity: Make sure the instructions are as clear as possible. For example, specify where to run commands (in which directory).
- Links: If you refer to any external resources (like Node.js downloads), adding hyperlinks could be beneficial.
Alternatively, you can use GitHub Desktop to manage the repository:
- Download GitHub Desktop from here.
- Clone the Repository by signing in to your GitHub account, selecting the repository, and clicking "Clone".
- Make Changes: Edit code locally using your favorite editor.
- Commit & Push: Commit your changes and push them to GitHub via the GitHub Desktop interface.
For a detailed overview of how the project works, please read the Project Details documentation. This will give you a deep dive into the architecture and design decisions. π§
If you have any questions or feedback, feel free to reach out via GitHub. You can also join our discussion forum.
We look forward to hearing from you! β¨
π Thank You !!! π