https://github.com/meeruzairwashere/pickmart
Pickmart API simplifies user registration, product creation, reviews, and product ordering for seamless interaction.
https://github.com/meeruzairwashere/pickmart
api backend express javascript node
Last synced: about 1 year ago
JSON representation
Pickmart API simplifies user registration, product creation, reviews, and product ordering for seamless interaction.
- Host: GitHub
- URL: https://github.com/meeruzairwashere/pickmart
- Owner: MeerUzairWasHere
- Created: 2023-11-08T10:46:40.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2025-02-02T19:28:45.000Z (over 1 year ago)
- Last Synced: 2025-04-05T07:41:39.095Z (about 1 year ago)
- Topics: api, backend, express, javascript, node
- Language: HTML
- Homepage: https://pickmart.onrender.com
- Size: 520 KB
- Stars: 4
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
PICKMART API simplifies user registration, product creation, reviews, and product ordering for seamless interaction.
Explore the docs »
View Demo
·
Report Bug
·
Request Feature
     
## Table Of Contents
- [About the Project](#about-the-project)
- [Built With](#built-with)
- [Getting Started](#getting-started)
- [Prerequisites](#prerequisites)
- [Installation](#installation)
- [Usage](#usage)
- [Roadmap](#roadmap)
- [License](#license)
- [Authors](#authors)
## About The Project
**PickMart API** is a robust and versatile E-Commerce solution that empowers developers to create and manage online marketplaces with ease. It simplifies user registration, product creation, reviews, and product ordering, providing a seamless and efficient platform for both administrators and customers.
### Key Features
- **User Registration**: A user-friendly and secure process, allowing new users to sign up and create accounts easily.
- **Product Management**: Administrators can add, update, and delete products effortlessly, keeping listings accurate for customers.
- **Reviews and Ratings**: Customers can leave reviews and ratings, fostering trust and informed purchasing decisions.
- **Product Ordering**: A streamlined ordering process enables customers to add products to carts, review orders, and make secure payments.
## Built With
- [JavaScript]()
- [Node.js]()
- [bcryptjs]()
- [Cloudinary]()
- [cookie-parser]()
- [CORS]()
- [dotenv]()
- [Express.js]()
- [express-async-errors]()
- [express-fileupload]()
- [Helmet]()
- [http-status-codes]()
- [Morgan]()
- [jsonwebtoken]()
- [Validator]()
- [xss-clean]()
- [Nodemon]()
## Getting Started
Welcome to PickMart! This guide will walk you through the essential steps to get started with the PickMart E-Commerce API, from setting up your environment to making your first API requests.
### Prerequisites
- **Node.js**: Download and install Node.js.
- **MongoDB**: Set up a MongoDB database (local or Atlas).
- **npm**: Ensure npm is installed with Node.js.
- **Text Editor/IDE**: Use any code editor like VSCode, Sublime, or WebStorm.
- **API Testing Tool**: Tools like Postman or Insomnia can be used to interact with the API.
### Installation
1. **Clone the Repository**:
```bash
git clone https://github.com/MeerUzairWasHere/Pickmart.git
```
2. **Install Dependencies**:
```bash
cd pickmart
npm install
```
3. **Environment Variables**: Create a `.env` file and configure it with your MongoDB connection string and other keys (e.g., Cloudinary API keys).
4. **Database Setup**: Ensure your MongoDB is running and connected.
5. **Start the Server**:
```bash
npm start
```
6. **Testing**: Run tests to verify setup:
```bash
npm test
```
7. **API Documentation**: Refer to the documentation for available API endpoints.
## Usage
Once PickMart is set up, you can perform tasks such as managing users, products, reviews, and orders.
- **User Registration**
POST: `https://pickmart-g9tr.onrender.com/api/v1/auth/register`
- **User Login**
POST: `https://pickmart-g9tr.onrender.com/api/v1/auth/login`
- **View All Products**
GET: `https://pickmart-g9tr.onrender.com/api/v1/products`
- **Create Product (Admin Only)**
POST: `https://pickmart-g9tr.onrender.com/api/v1/products`
Refer to the API documentation for more details on each endpoint.
## Roadmap
### Phase 1: Core Functionality
- Bug Fixes and Testing
- User roles and permissions
- Performance improvements
### Phase 2: Features and UX
- Recommendation system
- Enhanced product search and filtering
- Payment gateway integration
### Phase 3: Community Engagement
- Documentation and tutorials
- Developer community forum
### Phase 4: Security and Compliance
- Regular security audits
- PCI DSS compliance
### Phase 5: Mobile Applications
- Mobile apps for Android and iOS
## Contributing
Contributions are what make the open-source community a great place to learn and create! Any contributions are greatly appreciated.
1. Fork the Project
2. Create a Feature Branch (`git checkout -b feature/AmazingFeature`)
3. Commit your Changes (`git commit -m 'Add some AmazingFeature'`)
4. Push to the Branch (`git push origin feature/AmazingFeature`)
5. Open a Pull Request
### Please follow the [Code of Conduct](https://github.com/MeerUzairWasHere/Pickmart/blob/main/CODE_OF_CONDUCT.md).
## License
Distributed under the MIT License. See [LICENSE](https://github.com/MeerUzairWasHere/Pickmart/blob/main/LICENSE.md) for more information.
## Authors
- **Meer Uzair** - [GitHub](https://github.com/MeerUzairWasHere)