Skip to content

amdadislam01/Tech-Store

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

112 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Tech-Store: High-Performance E-Commerce Experience

Next.js React Tailwind CSS MongoDB Redux

Tech-Store is a premium, high-fidelity e-commerce platform designed for modern consumers. It combines cutting-edge technology with a sleek, minimalist aesthetic to provide a seamless shopping experience for innovative tech gadgets.


Key Features & Functionalities

🎨 Premium UI/UX & Design Philosophy

  • Glassmorphism Design: Modern, translucent interfaces that feel light and premium.
  • Tech Inspired Layout: Professional, high-conversion design with primary green accents and optimized product density.
  • Fluid Animations: Smooth transitions and interactive elements powered by Framer Motion and Lenis Scroll.
  • Responsive Navigation: Mobile-optimized navbar with persistent search, compact action buttons, and intuitive mobile drawer.
  • Dynamic Loading states: Polished, responsive loading components to ensure a seamless transition between pages.
  • Custom 404 Experience: Dedicated, animated error page for a superior brand experience even during broken links.

πŸ›οΈ Core Shopping Experience

  • Interactive Product Details: Immersive product pages with quantity selectors, technical specification tables, and metadata chips.
  • Dynamic Category Management: Real-time category synchronization directly from the product database.
  • Advanced Filtering & Search: Instant filtering by category, search terms, and pricing.
  • Verified Review System: Robust rating and review mechanism with user identity verification.
  • Cart & Wishlist Logic: Persistent state management for a seamless "save for later" and checkout flow.

βš™οΈ Global Site Customization

  • Dynamic Hero Section: Administrators can update the badge, headline, description, and hero image directly from the dashboard.
  • Centralized Settings Catalog: Manage site name, contact details, site logo, and global descriptions via the administrative suite.
  • Responsive Branding: Real-time updates to brand colors and metadata reflected across the entire application.

πŸ’³ Integrated Payment Ecosystem

  • Stripe Integration: Secure and seamless credit/debit card processing.
  • Manual Payment System (MFS): Support for local gateways (bKash, Nagad, Rocket) with a Strict Transaction ID Verification workflow.
  • Dynamic Payment UI: Context-aware payment screens that adapt based on the selected gateway.

πŸ›‘οΈ Smart Access & Advanced Security

  • Role-Based Access Control (RBAC): Fine-grained permissions for Super Admin, Admin, and Manager roles.
  • Secure Authentication: Protected routes and multi-layered user sessions powered by NextAuth.js.
  • Google Site Verification: Fully integrated for search console ownership and indexing.

πŸ“ˆ SEO & Performance Optimization

  • Dynamic Sitemaps: Automated sitemap.xml generation for optimal search engine crawling.
  • Robots.txt Management: Standardized crawler instructions for better indexing control.
  • JSON-LD Structured Data: High-fidelity schema markup for Products and Organizations to enhance Rich Snippets.
  • Next.js 16 Optimization: Utilizing React Server Components and SSR for lightning-fast interactions and SEO dominance.

Future Roadmap

We are constantly evolving the platform. Here are the features currently in development:

  • Payment Gateway Integration: Seamless checkout with Stripe and local MFS (bKash/Nagad/Rocket).
  • SEO Optimization: Complete sitemap, robots.txt, and JSON-LD integration.
  • Dynamic Hero Management: Full administrator control over homepage visuals.
  • AI-Powered Recommendations: Personalized product suggestions based on user browsing history and preferences.
  • Real-time Order Tracking: Interactive dashboard for users to track their order status in real-time.
  • Multi-language Support: Deep localization supporting both English and Bengali (BN).
  • Advanced Analytics Dashboard: Enhanced sales visualization and business intelligence for administrators.
  • Progressive Web App (PWA): Enabling offline access and home screen installation for mobile users.

πŸ’» Tech Stack

Category Technology
Framework Next.js 16 (App Router)
Language TypeScript
Frontend React 19, Tailwind CSS 4
State Management Redux Toolkit
Database MongoDB with Mongoose
Payments Stripe, Manual Payment (MFS)
Animations Framer Motion, Lenis Scroll
SEO Next-Sitemap, JSON-LD
Icons Lucide React
Authentication NextAuth.js

πŸ“‚ Project Structure

Tech-Store/
β”œβ”€β”€ app/                        # Next.js App Router (Core Application)
β”‚   β”œβ”€β”€ (main)/                 # Main User-Facing Routes (Home, Products, ID)
β”‚   β”‚   β”œβ”€β”€ cart/               # Shopping Cart & Management
β”‚   β”‚   β”œβ”€β”€ checkout/           # Secure Checkout & Payment Flow
β”‚   β”‚   β”œβ”€β”€ product/            # Immersive Product Detail Pages
β”‚   β”‚   β”œβ”€β”€ products/           # Advanced Product Listing & Filtering
β”‚   β”‚   β”œβ”€β”€ login/              # User Authentication (Sign In)
β”‚   β”‚   β”œβ”€β”€ register/           # User Authentication (Sign Up)
β”‚   β”‚   β”œβ”€β”€ privacy/            # Professional Privacy Policy
β”‚   β”‚   β”œβ”€β”€ terms/              # Terms of Service Documentation
β”‚   β”‚   └── cookies/            # Cookie Policy & Compliance
β”‚   β”œβ”€β”€ api/                    # Backend API Route Handlers (Server-Side)
β”‚   β”‚   β”œβ”€β”€ auth/               # Authentication Logic & Registration
β”‚   β”‚   β”œβ”€β”€ products/           # Inventory Management API
β”‚   β”‚   β”œβ”€β”€ orders/             # Order Lifecycle & Status Management
β”‚   β”‚   β”œβ”€β”€ payment/            # Stripe Integration (Intent Creation)
β”‚   β”‚   └── webhook/            # Payment Gateway Webhooks (Stripe)
β”‚   β”œβ”€β”€ dashboard/              # Comprehensive Administrative Panel
β”‚   β”œβ”€β”€ layout.tsx              # Root Layout & Provider Initialization
β”‚   └── globals.css             # Global Styles & Tailwind Design Tokens
β”œβ”€β”€ components/                 # Reusable React UI Components
β”‚   β”œβ”€β”€ Sections/               # Modular Page Blocks (Hero, Features, Catalog)
β”‚   β”œβ”€β”€ Checkout/               # Payment-Specific UI (Stripe/MFS Forms)
β”‚   β”œβ”€β”€ dashboard/              # Admin-Specific UI Components
β”‚   β”œβ”€β”€ Navbar.tsx             # Dynamic Navigation System
β”‚   └── Footer.tsx             # Information-Rich Site Footer
β”œβ”€β”€ lib/                        # Infrastructure & Utility Layer
β”‚   └── db.ts                   # Robust Mongoose Connection Logic
β”œβ”€β”€ models/                     # Data Architecture (Mongoose Models)
β”‚   β”œβ”€β”€ Product.ts             # Product Catalog Schema
β”‚   β”œβ”€β”€ Order.ts               # Transaction & Logistics Schema
β”‚   β”œβ”€β”€ User.ts                # Secure User Profile Schema
β”‚   └── Settings.ts            # Global Site Configuration Schema
β”œβ”€β”€ public/                     # Static Optimized Assets
β”‚   └── images/                 # Optimized UI Icons & Graphics
β”œβ”€β”€ redux/                      # Global Reactive State Management
β”‚   β”œβ”€β”€ slices/                 # Feature-Specific State Logic (Cart, Auth, UI)
β”‚   └── store.ts                # Centralized Redux Store Configuration
β”œβ”€β”€ types/                      # Comprehensive TypeScript Interfaces
└── next.config.js              # Advanced Framework Configuration

🌐 API Endpoints

Authentication

  • POST /api/auth/register - Create a new user account.
  • POST /api/auth/login - Authenticate users with credentials (handled via NextAuth).

User Profile

  • PUT /api/user/profile - Update user profile information (name, image, password). (Requires authentication).

Products

  • GET /api/products - Fetch a paginated list of products. Supports category, search, page, and limit query parameters.
  • POST /api/products - Create a new product. (Restricted to Admin/Manager).
  • GET /api/products/{id} - Retrieve detailed information for a specific product.
  • PATCH /api/products/{id} - Update existing product details. (Restricted to Admin/Manager).
  • DELETE /api/products/{id} - Permanently remove a product. (Restricted to Super Admin/Admin).

Reviews

  • POST /api/products/{id}/reviews - Submit a customer review (rating and comment) for a specific product. (Requires authentication).

Orders

  • GET /api/orders - List all orders (Admin/Manager) or specific orders for the authenticated user.
  • POST /api/orders - Create a new order (Supports guest and authenticated checkouts).
  • GET /api/orders/{id} - Fetch detailed information for a specific order.
  • PATCH /api/orders/{id} - Update order status or transaction details. (Admin restricted for status changes).

Categories & Settings

  • GET /api/categories - Fetch a unique list of all product categories.
  • GET /api/settings - Retrieve global application settings (e.g., Contact info, MFS numbers, Hero configurations).

Payment Gateways

  • POST /api/payment/create-intent - Generate a Stripe Payment Intent for secure card transactions.
  • POST /api/webhook/stripe - Handle asynchronous payment events from Stripe.

Getting Started

Prerequisites

  • Node.js (Latest LTS version)
  • MongoDB (Local instance or Atlas connection)

Installation

  1. Clone the repository:

    git clone https://github.com/amdadislam01/Tech-Store.git
    cd Tech-Store
  2. Install dependencies:

    npm install
  3. Environment Setup: Create a .env file in the root directory and add your configurations:

    # Database & Auth
    MONGODB_URI=your_mongodb_connection_string
    NEXTAUTH_SECRET=your_secret_key
    NEXTAUTH_URL=http://localhost:3000
    
    # Payment Gateway (Stripe)
    STRIPE_SECRET_KEY=your_stripe_secret_key
    NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY=your_stripe_publishable_key
    STRIPE_WEBHOOK_SECRET=your_stripe_webhook_secret
    
    # Image Hosting (ImgBB)
    NEXT_PUBLIC_IMGBB_API_KEY=your_imgbb_api_key
  4. Run the development server:

    npm run dev
  5. Visit the app: Open http://localhost:3000 in your browser.

About

Tech-Store is a premium, high-fidelity e-commerce platform designed for modern consumers. It combines cutting-edge technology with a sleek, minimalist aesthetic to provide a seamless shopping experience for innovative tech gadgets.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages