Skip to content

Latest commit

 

History

145 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Project Logo

Shoppe E-Commerce

🚀 Built with the following technologies

ASP.NET MVC HTML5 CSS3 JavaScript Bootstrap



Table of Contents


Overview

The purpose of this project is to design and develop an e-commerce website that provides essential functionalities such as:

  • User registration and authentication
  • Product management
  • Shopping cart
  • Order placement and management
  • Admin Dashboard for system administration

The website is designed with a focus on user-friendliness, security, and scalability, ensuring that it is easy to use, protects user data, and can be extended in the future.

Objectives

  • Build an intuitive and user-friendly interface.
  • Implement core functionalities such as user, product, and order management.
  • Support buyers and sellers in performing basic e-commerce transactions efficiently.
  • Ensure system and user data security.

Scope and Target Users

The project focuses on developing a basic e-commerce platform suitable for small to medium-sized businesses.
Target users include: customers, sellers, and system administrators.

Research Methodology

The project applies system analysis and object-oriented design methodologies.
It is implemented using web technologies such as HTML, CSS, JavaScript, combined with ASP.NET Core MVC for the application layer.
MySQL is used as the database management system to store and retrieve data.


Features

  • User registration and authentication
  • Shopping cart management
  • Product and order management
  • Admin Dashboard for system administration
  • User-friendly and responsive UI with Bootstrap
  • Security-focused design to protect user data
  • Scalable architecture for future enhancements

Project Structure

└── ShoppeWebApp/
    ├── appsettings.json
    ├── Areas
    │   ├── Admin
    │   ├── Customer
    │   └── Seller
    ├── Constraints
    │   └── AdminConstraint.cs
    ├── Controllers
    │   ├── AuthenticationController.cs
    │   └── HomeController.cs
    ├── Data
    │   └── ShoppeWebAppDbContext.cs
    ├── Migrations
    │   └── [Entity Framework Core migrations...]
    ├── Models
    │   ├── Chitietdonhang.cs
    │   ├── Cuahang.cs
    │   ├── Danhgia.cs
    │   ├── Danhmuc.cs
    │   ├── Donhang.cs
    │   ├── Giohang.cs
    │   ├── Nguoidung.cs
    │   ├── Sanpham.cs
    │   ├── Taikhoan.cs
    │   └── Thongtinlienhe.cs
    ├── Program.cs
    ├── Properties
    │   └── launchSettings.json
    ├── Services
    │   ├── DatabaseChecker.cs
    │   ├── ImageUpload.cs
    │   ├── PagingLoad.cs
    │   ├── PasswordHasher.cs
    │   └── Quantity.cs
    ├── ShoppeWebApp.csproj
    ├── ViewModels
    │   ├── Admin
    │   ├── Authentication
    │   ├── Customer
    │   ├── Seller
    │   └── ErrorViewModel.cs
    ├── Views
    │   ├── _ViewImports.cshtml
    │   ├── _ViewStart.cshtml
    │   ├── Authentication
    │   ├── Home
    │   └── Shared
    └── wwwroot
        ├── css
        ├── icons
        ├── images
        ├── js
        └── shoppe_logo32.ico

Getting Started

Follow the steps below to set up and run the project locally.


Prerequisites

Before you begin, make sure you have the following installed:


Installation

  1. Clone the repository

    git clone https://github.com/GuenNhatKing/Shoppe.git
  2. Navigate to the project directory

    cd PBL-Nen-tang-mua-sam-truc-tuyen-Shoppe
  3. Restore dependencies:

    dotnet restore
  4. Install required NuGet packages: Run the following commands to install the necessary dependencies:

    dotnet add package Hangfire --version 1.8.20
    dotnet add package Hangfire.MySqlStorage --version 2.0.3
    dotnet add package Microsoft.EntityFrameworkCore --version 8.0.15
    dotnet add package Microsoft.EntityFrameworkCore.Tools --version 8.0.15
    dotnet add package Pomelo.EntityFrameworkCore.MySql --version 8.0.3
  5. Configure database connection:
    Open the appsettings.json file and update the connection string:

    "ConnectionStrings": {
        "DefaultConnection": "Server=localhost;Database=ShoppeDB;User Id=root;Password=yourpassword;"
    }
  6. Apply database migrations:
    Run the following command to create and apply migrations to the database:

    dotnet ef database update

Usage

Run the project with:

dotnet run

Testing

Shoppe uses the xUnit test framework (replace with your actual one if different). Run the test suite with:

dotnet test

Contributing

  • 💬 Join the Discussions: Share your insights, provide feedback, or ask questions.
  • 🐛 Report Issues: Submit bugs found or log feature requests for the Shoppe project.
Contributing Guidelines
  1. Fork the Repository: Start by forking the project repository to your GitHub account.
  2. Clone Locally: Clone the forked repository to your local machine using a git client.
    git clone https://github.com/GuenNhatKing/PBL-Nen-tang-mua-sam-truc-tuyen-Shoppe.git
  3. Create a New Branch: Always work on a new branch, giving it a descriptive name.
    git checkout -b feature/new-feature-x
  4. Make Your Changes: Develop and test your changes locally.
  5. Commit Your Changes: Commit with a clear message describing your updates.
    git commit -m 'Implemented new feature x.'
  6. Push to LOCAL: Push the changes to your forked repository.
    git push origin new-feature-x
  7. Submit a Pull Request: Create a PR against the original project repository. Clearly describe the changes and their motivations.
  8. Review: Once your PR is reviewed and approved, it will be merged into the main branch. Congratulations on your contribution!
Contributor Graph


License

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

Acknowledgments


About

Shoppe is a web-based e-commerce platform built with ASP.NET Core MVC and MySQL, featuring user authentication, product & order management, shopping cart, and an admin dashboard.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages