Skip to content

A modern, feature-rich e-commerce management system built with React.js, enabling seamless product management, sales tracking, and inventory monitoring with a scalable and modular architecture.

License

Notifications You must be signed in to change notification settings

hexddine/E-Store-reactjs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

18 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

E-Store React JS

Time Spent GitHub Issues GitHub Pull Requests License


πŸ›’ A modern, feature-rich e-commerce management system built with React.js. Manage products, track sales, monitor stock, and view dashboardsβ€”all from one modular and scalable platform.


πŸ“ Table of Contents


🌟 Features

  • πŸ“Š Dashboard Analytics: Get insights into product performance and sales.
  • πŸ› Product Management: Add, update, or delete products with ease.
  • πŸ’° Sales Tracking: View and manage recent and historical sales.
  • πŸ“¦ Stock Management: Monitor stock levels in real-time.
  • 🌍 Localization Support: Switch between English and French with i18n.
  • ♻️ Reusable Components: Shared UI and logic for consistent experience.
  • πŸ”Œ Service-Based Architecture: Clean separation of API logic.

πŸ“ Preview

Preview


πŸ’­ How it Works

  • Dashboard: Visualize stats through charts and cards.
  • Products: Navigate to products tab to create, edit or delete items.
  • Sales: Access sales records and revenue insights.
  • Stock: Keep an eye on inventory levels.
  • Languages: Switch UI language using the toggle (EN/FR).
  • Architecture: Modular, scalable structure using React hooks and context.

🏁 Getting Started

  1. Clone the repository:

    git clone https://github.com/yourusername/e-store-reactjs.git
  2. Navigate into the project directory:

    cd e-store-reactjs
  3. Install dependencies:

    npm install
  4. Start the development server:

    npm run dev
  5. Visit http://localhost:1337 in your browser.


πŸ“ Folder Structure

   src                          # Source code
    β”œβ”€β”€ App.jsx                  # Main React app component
    β”œβ”€β”€ main.jsx                 # Entry point for React app
    β”œβ”€β”€ api                      # API client and endpoints
    β”‚   β”œβ”€β”€ Client.js
    β”‚   β”œβ”€β”€ Endpoints.js
    β”‚   └── test.js
    β”œβ”€β”€ assets                   # Static assets like images and styles
    β”‚   β”œβ”€β”€ images               # Image files
    β”‚   └── styles               # CSS styles
    β”‚       β”œβ”€β”€ App.module.css
    β”‚       └── index.css
    β”œβ”€β”€ config                   # Configuration files
    β”‚   └── i18n.js              # Internationalization setup
    β”œβ”€β”€ features                 # Feature modules
    β”‚   β”œβ”€β”€ dashboard            # Dashboard feature
    β”‚   β”‚   β”œβ”€β”€ index.jsx        # Dashboard main component
    β”‚   β”‚   β”œβ”€β”€ components       # Dashboard UI components
    β”‚   β”‚   β”‚   β”œβ”€β”€ Activity.jsx
    β”‚   β”‚   β”‚   β”œβ”€β”€ CardStats.jsx
    β”‚   β”‚   β”‚   └── charts       # Chart components
    β”‚   β”‚   β”‚       β”œβ”€β”€ AreaChart.jsx
    β”‚   β”‚   β”‚       β”œβ”€β”€ BarChart.jsx
    β”‚   β”‚   β”‚       └── PieChart.jsx
    β”‚   β”‚   └── hooks            # Dashboard hooks
    β”‚   β”‚       β”œβ”€β”€ useGetData.js
    β”‚   β”‚       β”œβ”€β”€ useProductsStats.js
    β”‚   β”‚       β”œβ”€β”€ useRecentActivities.js
    β”‚   β”‚       └── useStockSalesData.js
    β”‚   β”œβ”€β”€ products             # Products feature
    β”‚   β”‚   β”œβ”€β”€ index.jsx        # Products main component
    β”‚   β”‚   β”œβ”€β”€ components       # Products UI components
    β”‚   β”‚   β”‚   └── ProductTable.jsx
    β”‚   β”‚   β”œβ”€β”€ hooks            # Products hooks
    β”‚   β”‚   β”‚   β”œβ”€β”€ useAddProduct.js
    β”‚   β”‚   β”‚   β”œβ”€β”€ useDeleteProduct.js
    β”‚   β”‚   β”‚   β”œβ”€β”€ useEditProduct.js
    β”‚   β”‚   β”‚   β”œβ”€β”€ useProductModal.js
    β”‚   β”‚   β”‚   └── useProducts.js
    β”‚   β”‚   └── services         # Products services
    β”‚   β”‚       └── productService.js
    β”‚   β”œβ”€β”€ sales                # Sales feature
    β”‚   β”‚   β”œβ”€β”€ index.jsx        # Sales main component
    β”‚   β”‚   β”œβ”€β”€ components       # Sales UI components
    β”‚   β”‚   β”‚   └── SaleTable.jsx
    β”‚   β”‚   β”œβ”€β”€ hooks            # Sales hooks
    β”‚   β”‚   β”‚   β”œβ”€β”€ useAddSale.js
    β”‚   β”‚   β”‚   β”œβ”€β”€ useDeleteSale.js
    β”‚   β”‚   β”‚   β”œβ”€β”€ useEditSale.js
    β”‚   β”‚   β”‚   β”œβ”€β”€ useSale.js
    β”‚   β”‚   β”‚   └── useSaleModal.js
    β”‚   β”‚   └── services         # Sales services
    β”‚   β”‚       └── saleService.js
    β”‚   β”œβ”€β”€ stock                # Stock feature
    β”‚   β”‚   β”œβ”€β”€ index.jsx        # Stock main component
    β”‚   β”‚   β”œβ”€β”€ components       # Stock UI components
    β”‚   β”‚   β”‚   └── StockTable.jsx
    β”‚   β”‚   β”œβ”€β”€ hooks            # Stock hooks
    β”‚   β”‚   β”‚   β”œβ”€β”€ useAddStock.js
    β”‚   β”‚   β”‚   β”œβ”€β”€ useDeleteStock.js
    β”‚   β”‚   β”‚   β”œβ”€β”€ useEditStock.js
    β”‚   β”‚   β”‚   β”œβ”€β”€ useStock.js
    β”‚   β”‚   β”‚   └── useStockModal.js
    β”‚   β”‚   └── services         # Stock services
    β”‚   β”‚       └── stockService.js
    β”œβ”€β”€ layouts                 # Layout components
    β”‚   └── MainLayout.jsx
    β”œβ”€β”€ pages                   # Page components
    β”‚   └── ErrorPage.jsx
    β”œβ”€β”€ routes                  # Route definitions
    β”‚   └── index.jsx
    └── shared                  # Shared components and utilities
        β”œβ”€β”€ components         # Shared UI components
        β”‚   β”œβ”€β”€ common         # Common reusable components
        β”‚   β”‚   β”œβ”€β”€ Divider.jsx
        β”‚   β”‚   β”œβ”€β”€ EntityModal.jsx
        β”‚   β”‚   β”œβ”€β”€ ListTable.jsx
        β”‚   β”‚   β”œβ”€β”€ Loading.jsx
        β”‚   β”‚   β”œβ”€β”€ SelectOptions.jsx
        β”‚   β”‚   └── TableDefault.jsx
        β”‚   β”œβ”€β”€ Header          # Header components
        β”‚   β”‚   └── Header.jsx
        β”‚   β”œβ”€β”€ SideBar         # Sidebar components
        β”‚   β”‚   └── SideBar.jsx
        β”‚   └── Toolbar         # Toolbar components
        β”‚       └── Toolbar.jsx
        β”œβ”€β”€ hooks              # Shared hooks
        β”‚   β”œβ”€β”€ useModalState.js
        β”‚   β”œβ”€β”€ useSearch.js
        β”‚   └── modalStates             # Modal state hooks
        β”‚       β”œβ”€β”€ useArticleList.js
        β”‚       β”œβ”€β”€ useOperationModalState.js
        β”‚       └── useProductModalState.js
        └── utils              # Utility functions
            β”œβ”€β”€ dateUtils.js
            └── validators.js

⛏️ Built Using

  • React.js
  • Vite
  • React Router
  • Axios
  • React Context API
  • i18next
  • Chart.js
  • CSS Modules

🀝 Contributions

Your contributions are welcome! Feel free to fork the repo and submit pull requests, open issues, or suggest features.


πŸ“œ License

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

About

A modern, feature-rich e-commerce management system built with React.js, enabling seamless product management, sales tracking, and inventory monitoring with a scalable and modular architecture.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published