Coder Social home page Coder Social logo

hoanglechau / adomin-be Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 1.23 MB

Adomin is a full-stack e-commerce Admin Dashboard app that displays graphs and tables of sales and performance stats, built with React, Redux, Material UI, Node.js, Express, and MongoDB

Home Page: https://adomin.vercel.app/

JavaScript 100.00%
express full-stack material-ui mongodb nivo nodejs react redux redux-toolkit

adomin-be's Introduction

Adomin - An E-Commerce Admin Dashboard

Table of Contents
  1. Links
  2. About The Project
  3. API Endpoints
  4. Entity Relationship Diagram
  5. Getting Started

Links

(back to top)


About The Project

Adomin Screenshot One

Adomin Screenshot Two

Project Description

Adomin is a full-stack e-commerce Admin Dashboard app that displays graphs and tables of sales and performance stats.

(back to top)

User Stories

  • As a user, I can view a Dashboard with general sales information in table and graph forms.
  • As a user, I can view a list of products.
  • As a user, I can view a table with a list of customers.
  • As a user, I can view a table with a list of transactions.
  • As a user, I can view a world map showing where the users are located.
  • As a user, I can view a line graph displaying an overview of general sales revenue and profit.
  • As a user, I can view a chart of daily sales.
  • As a user, I can view a chart of monthly sales.
  • As a user, I can view a pie chart breakdown of sales by category.
  • As a user, I can view a table with a list of admins.
  • As a user, I can view a table with my Affiliate Sales Performance.
  • As a user, I can toggle between light and dark modes.

(back to top)

Notable Features

  • Users can switch between dark and light modes.
  • In the Transactions page, users can choose to hide or show individual columns.
  • In the Transactions page, users can change the display density of the table information (Compact, Standard, or Comfortable).
  • In the Transactions page, users can download the data in CSV format.
  • In the Transactions page, users can print the table.
  • In the Overview page, users can change the unit of currency of the vertical axis (Units or Sales).
  • In the Daily page, users can change the time period shown on the chart.
  • All tables have server-side paginations. Users can change the number of rows per page, and change pages.

(back to top)

Built With

  • React
  • React Router
  • Redux
  • Redux Toolkit
  • Material UI
  • nivo (charts)
  • Node.js
  • Express
  • MongoDB
  • ESLint
  • Prettier

(back to top)


API Endpoints

Client APIs

/**
 * @description Get all products
 * @param {*} req
 * @param {*} res
 * @route GET /client/products
 * @access Public
 */
/**
 * @description Get all customers
 * @param {*} req
 * @param {*} res
 * @route GET /client/customers
 * @access Public
 */
/**
 * @description Get the locations of all customers
 * @param {*} req
 * @param {*} res
 * @route GET /client/geography
 * @access Public
 */

(back to top)

General APIs

/**
 * @description Get a single user by ID
 * @param {id} req
 * @param {*} res
 * @route GET /general/user/:id
 * @access Public
 */
/**
 * @description Get the Dashboard stats
 * @param {*} req
 * @param {*} res
 * @route GET /general/dashboard
 * @access Public
 */

(back to top)

Management APIs

/**
 * @description Get all admins
 * @param {*} req
 * @param {*} res
 * @route GET /management/admins
 * @access Public
 */
/**
 * @description Get the performance stats of users
 * @param {id} req
 * @param {*} res
 * @route GET /management/performance/:id
 * @access Public
 */

(back to top)

Sales APIs

/**
 * @description Get all sales data
 * @param {*} req
 * @param {*} res
 * @route GET /sales/sales
 * @access Public
 */

(back to top)


Entity Relationship Diagram

Adomin ERD

(back to top)


Getting Started

Prerequisites

  1. Check your version of Node.js and npm
    node -v
    npm -v
  2. Install Node.js and npm if needed at https://nodejs.org/en/download

(back to top)

Installation

Backend

  1. Clone the repo
    git clone https://github.com/hoanglechau/adomin-be.git
    cd adomin-be
  2. Install NPM packages
    npm install
  3. Create an .env file with the following contents
    MONGO_URI=your_mongodb_uri
    PORT=your_port // default value: 9000
  4. Replace the default values with your own values for PORT (optional), and MONGO_URI in the .env file
  5. Start the server
    npm start

Frontend

  1. Clone the repo
    git clone https://github.com/hoanglechau/adomin-fe.git
    cd adomin-fe
  2. Install NPM packages
    npm install
  3. Create an .env file with the following contents
    REACT_APP_BASE_URL=your_api_url // default: http://localhost:5001
  4. Replace the value of REACT_APP_BASE_URL with the URL of your deployed API
  5. Build the app
    npm run build
  6. Run the app
    npm run start

(back to top)

adomin-be's People

Contributors

hoanglechau avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.