Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/nayon117/gadgetbd


https://github.com/nayon117/gadgetbd

clerk mongoose nextjs14 shadcn typescript zustand

Last synced: about 5 hours ago
JSON representation

Awesome Lists containing this project

README

        

# GadgetBD E-commerce Store

## Overview

GadgetBD is a modern e-commerce platform built using Next.js, TypeScript, and other cutting-edge technologies. The store offers a wide range of electronic gadgets, with features like product search, pagination, cart management, and a smooth checkout process.

## Features

1. **Homepage**
- Banner Section: Highlight current promotions or new arrivals.
- Collections: Display different collections.
- Newsletter: Subscription section.
- About Us: Information about the company.
- Footer: Contact information, social media links, and other relevant links.

2. **Product Pages**
- Product Listing Page: Search and filter options, pagination.
- Product Detail Page: High-quality images, detailed descriptions, Add to Cart button, related products section.

3. **Cart Page**
- Cart Overview: List of selected products with quantities and prices.
- Apply Discount Codes: Field to apply discount codes.
- Total Price Calculation: Display subtotal, discounts, taxes, and total price.
- Proceed to Checkout Button: Leads to the checkout page.

4. **Checkout Page**
- Shipping Information: Form to collect shipping address and contact details.
- Payment Information: Integration with Stripe for payment processing.
- Order Summary: Display order details and total amount.
- Place Order Button: Finalize the purchase.

5. **Authentication**
- User Registration: Form to create a new account.
- User Login: Form to log in to an existing account.
- Password Recovery: Option to reset forgotten passwords.
- Clerk Authentication: Integration for user authentication and management.

6. **User Dashboard**
- Profile Information: View and edit personal information.
- Order History: List of past orders with details and statuses.
- Wishlist: Manage a list of favorite products.
- Logout Button: Log out of the account.

7. **Contact Page**
- Contact Form: Form for users to submit inquiries.
- Contact Information: Display phone number, email address, and physical address.

8. **Blog**
- Display blog posts with titles, excerpts, images, and detailed content.

9. **Other Pages**
- Wishlist: Show all wishlist products.
- Blog: Display a blog page.

10. **Additional Functionalities**
- Search & Pagination Functionality: Search bar to find products easily.
- Responsive Design: Fully functional on mobile and desktop devices.
- Dark & Light Mode: Toggle between dark and light themes.
- SEO Optimization: Optimize pages for search engines.

## Technologies Used

- **Next.js**: For building the front-end and server-side rendering.
- **TypeScript**: For type-safe JavaScript development.
- **Zustand**: For state management.
- **Shadcn UI Library**: For user interface components.
- **Stripe**: For payment processing.
- **Mongoose**: For MongoDB object modeling.
- **Clerk**: For authentication and user management.

## Installation

1. Clone the repository:
```sh
git clone https://github.com/nayon117/gadgetbd.git
2. cd gadgetbd
3. npm install
4. and don't forget to add .env.local file