Skip to content

noorjsdivs/babymart-yt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

6 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Babymart E-commerce Platform

A modern, full-stack e-commerce platform specifically designed for baby products, built with cutting-edge technologies and best practices.

๐Ÿš€ Project Overview

Babymart is a comprehensive e-commerce solution featuring four main applications:

  • Admin Dashboard - Manage products, orders, and analytics
  • Client Website - Customer-facing shopping experience
  • Mobile App - Native mobile shopping application
  • Backend Server - RESTful API with comprehensive features

๐Ÿ—๏ธ Architecture

Babymart-yt/
โ”œโ”€โ”€ admin/          # React + Vite Admin Dashboard
โ”œโ”€โ”€ client/         # Next.js Customer Website
โ”œโ”€โ”€ mobileapp/      # React Native Mobile App
โ””โ”€โ”€ server/         # Node.js + Express API Backend

๐Ÿ› ๏ธ Technology Stack

Frontend

  • Admin Dashboard: React 18 + TypeScript + Vite + TailwindCSS + shadcn/ui
  • Client Website: Next.js 14 + TypeScript + TailwindCSS + shadcn/ui
  • Mobile App: React Native + TypeScript + Expo

Backend

  • Server: Node.js + Express.js + MongoDB + JWT Authentication
  • File Storage: Cloudinary integration
  • API Documentation: Swagger/OpenAPI

State Management & UI

  • State: Zustand for all applications
  • UI Components: Radix UI, shadcn/ui, Lucide React icons
  • Forms: React Hook Form + Zod validation
  • HTTP Client: Axios (admin/mobile), Fetch API (client)

๐Ÿš€ Quick Start

Prerequisites

  • Node.js 18+
  • npm or yarn
  • MongoDB (local or Atlas)
  • Cloudinary account (for image storage)

1. Clone the Repository

git clone https://github.com/noorjsdivs/Babymart-yt.git
cd Babymart-yt

2. Setup Backend Server

cd server
npm install
cp .env.example .env  # Configure your environment variables
npm run dev  # Starts on http://localhost:8000

3. Setup Client Website

cd client
npm install
npm run dev  # Starts on http://localhost:3000

4. Setup Admin Dashboard

cd admin
npm install
npm run dev  # Starts on http://localhost:5173

5. Setup Mobile App

cd mobileapp
npm install
npm start  # Follow React Native CLI instructions

๐Ÿ“ฑ Application Details

๐Ÿ–ฅ๏ธ Admin Dashboard (Port 5173)

Purpose: Complete administrative control panel

  • Technology: React + Vite + TypeScript
  • Features: Product management, order processing, analytics, user management
  • Access: http://localhost:5173
  • Start Command: npm run dev

What you'll see: A clean admin interface with placeholder content explaining the admin dashboard purpose. Simply remove the placeholder text and start building your admin features.

๐ŸŒ Client Website (Port 3000)

Purpose: Customer-facing e-commerce website

  • Technology: Next.js + TypeScript
  • Features: Product browsing, shopping cart, user authentication, order tracking
  • Access: http://localhost:3000
  • Start Command: npm run dev

What you'll see: A modern e-commerce homepage with project information. Remove the intro text to start customizing for your needs.

๐Ÿ“ฑ Mobile App

Purpose: Native mobile shopping experience

  • Technology: React Native + TypeScript
  • Features: Mobile-optimized shopping, push notifications, offline support
  • Start Command: npm start

What you'll see: A React Native app ready for mobile e-commerce development with placeholder content explaining the mobile app structure.

๐Ÿ”ง Backend Server (Port 8000)

Purpose: RESTful API backend

  • Technology: Node.js + Express + MongoDB
  • Features: Authentication, product management, order processing, file uploads
  • Access: http://localhost:8000
  • Start Command: npm run dev

API Documentation: Visit http://localhost:8000/api-docs for Swagger documentation

๐Ÿ”ง Configuration

Environment Variables

Each application requires specific environment variables:

Server (.env)

NODE_ENV=development
PORT=8000
MONGODB_URI=mongodb://localhost:27017/Babymart
JWT_SECRET=your-jwt-secret
CLOUDINARY_NAME=your-cloudinary-name
CLOUDINARY_API_KEY=your-api-key
CLOUDINARY_API_SECRET=your-api-secret
CLIENT_URL=http://localhost:3000
ADMIN_URL=http://localhost:5173

Client (.env.local)

NEXT_PUBLIC_API_URL=http://localhost:8000/api
NEXT_PUBLIC_CLOUDINARY_CLOUD_NAME=your-cloudinary-name

Admin (.env)

VITE_API_URL=http://localhost:8000/api
VITE_CLOUDINARY_CLOUD_NAME=your-cloudinary-name

See configuration.md for complete environment setup details.

๐Ÿ“‹ Features Overview

Admin Dashboard

  • ๐Ÿ“Š Analytics & Reports
  • ๐Ÿ“ฆ Product Management (CRUD)
  • ๐Ÿ›๏ธ Order Management
  • ๐Ÿ‘ฅ User Management
  • ๐Ÿท๏ธ Category & Brand Management
  • ๐Ÿ“ธ Image Upload & Management
  • ๐Ÿ’ณ Payment Processing
  • ๐Ÿ” Role-based Access Control

Client Website

  • ๐Ÿ›’ Shopping Cart & Checkout
  • ๐Ÿ” Product Search & Filtering
  • ๐Ÿ‘ค User Authentication & Profile
  • ๐Ÿ“ฑ Responsive Design
  • โญ Product Reviews & Ratings
  • ๐Ÿ’ Wishlist Functionality
  • ๐Ÿ“‹ Order History
  • ๐ŸŽฏ Category Browsing

Mobile App

  • ๐Ÿ“ฑ Native Mobile Experience
  • ๐Ÿ”” Push Notifications
  • ๐Ÿ“ด Offline Support
  • ๐Ÿ“ Location Services
  • ๐Ÿ“ท Camera Integration
  • ๐Ÿ”„ Sync with Web Platform

Backend API

  • ๐Ÿ” JWT Authentication
  • ๐Ÿ“ก RESTful API Design
  • ๐Ÿ“Š MongoDB Integration
  • โ˜๏ธ Cloudinary File Storage
  • ๐Ÿ“ Comprehensive Logging
  • ๐Ÿ”„ Request Validation
  • ๐Ÿ“– Swagger Documentation

๐Ÿš€ Deployment

Development

All applications are configured for local development with hot reload enabled.

Production

Ready for deployment on:

  • Frontend: Vercel, Netlify, or any static hosting
  • Backend: Railway, Render, DigitalOcean, AWS
  • Database: MongoDB Atlas
  • Mobile: App Store & Google Play Store

๐Ÿค Contributing

  1. Fork the repository
  2. Create your 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

๐Ÿ“„ Documentation

  • Setup Guide: See setup.md for detailed installation instructions
  • Configuration: See configuration.md for environment variables
  • Architecture: See baseContext.md for detailed project structure
  • API Docs: Available at http://localhost:8000/api-docs when server is running

๐Ÿ”ฎ Upcoming Features

  • Multi-language support
  • Advanced analytics dashboard
  • AI-powered product recommendations
  • Social media integration
  • Advanced inventory management
  • Multi-vendor marketplace support

๐Ÿ“ž Support

If you have any questions or need help with setup:

  • ๐Ÿ“ง Create an issue in this repository
  • ๐Ÿ“– Check the documentation files
  • ๐Ÿ’ฌ Join our community discussions

๐Ÿ“œ License

This project is licensed under the MIT License - see the LICENSE file for details.

๐Ÿ™ Acknowledgments

  • Built with modern web technologies
  • Designed for scalability and performance
  • Following industry best practices
  • Ready for production deployment

Happy Coding! ๐Ÿš€

Note: This is a complete e-commerce platform template. Remove the placeholder content from each application's homepage and start building your custom features!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published