{"id":23260773,"url":"https://github.com/mohdali300/e-commerce_webapi","last_synced_at":"2025-10-27T07:31:47.418Z","repository":{"id":245341842,"uuid":"804586232","full_name":"mohdali300/E-Commerce_WebAPI","owner":"mohdali300","description":"E-Commerce Restful API with .NET 8","archived":false,"fork":false,"pushed_at":"2024-07-15T15:09:58.000Z","size":551,"stargazers_count":4,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-12-19T13:19:06.635Z","etag":null,"topics":["api-rest","authentication","ecommerce","stripe"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mohdali300.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-05-22T21:50:35.000Z","updated_at":"2024-11-27T20:49:28.000Z","dependencies_parsed_at":"2024-12-19T13:18:38.738Z","dependency_job_id":"b3968e70-1dbd-41d8-97b0-d08e7bac7f56","html_url":"https://github.com/mohdali300/E-Commerce_WebAPI","commit_stats":null,"previous_names":["mohdali300/e-commerce_webapi"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mohdali300%2FE-Commerce_WebAPI","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mohdali300%2FE-Commerce_WebAPI/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mohdali300%2FE-Commerce_WebAPI/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mohdali300%2FE-Commerce_WebAPI/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mohdali300","download_url":"https://codeload.github.com/mohdali300/E-Commerce_WebAPI/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238461547,"owners_count":19476343,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api-rest","authentication","ecommerce","stripe"],"created_at":"2024-12-19T13:18:26.876Z","updated_at":"2025-10-27T07:31:47.049Z","avatar_url":"https://github.com/mohdali300.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# E-Commerce_WebAPI\nE-Commerce Restful API with .NET 8, utilizes AspNetCore.Identity for user management, Mailkit for email communication and Stripe payment integration. This API allow users to view products by categories and brand, manage carts, and complete purchases checkout.\n## Contents\n-  [Features](#features)\n-  [Technologies](#technologies)\n-  [Installation](#installation)\n-  [Configuration](#configuration)\n-  [Database Scheme](#database-scheme)\n-  [Seeds](#seeds)\n\n## Features\n- User registeration and account management.\n- Product listing and categorization by Category or Brand.\n- Orders management.\n- Cart and Shopping functionality.\n- Wishlist management.\n- Checkout and payment.\n- Email communication.\n## Technologies\n- ASP .NET core 8 WebApi.\n- AspNetCore.Identity: for authentication and authorization.\n- EF core as ORM.\n- SQL Server as DBMS.\n- JWT: as token-based authentication.\n- Stripe payment integration.\n- Automapper:  For object-object mapping.\n- DTOs: data transfer between layers.\n- UnitOfWork \u0026 Repository pattern.\n- Mailkit \u0026 Mimekit: for emails communication.\n- Clean architecture.\n## Installation\n1- Clone the Repo:\n  ```bash\n  git clone https://github.com/mohdali300/E-Commerce_WebAPI\n  ```\n2- Install packages:\n  ```bash\n  git restore\n  ```\n## Configuration\nUpdate the appsettings.json file with your own settings:\n  ```json\n     {\n      \"ConnectionStrings\": {\n        \"DefaultConnection\": \"Data Source=.;Initial Catalog=E-CommerceApi;Integrated Security=True;Trust Server Certificate=True;\"\n      },\n      \"Logging\": {\n        \"LogLevel\": {\n          \"Default\": \"Information\",\n          \"Microsoft.AspNetCore\": \"Warning\"\n        }\n      },\n      \"AllowedHosts\": \"*\",\n      \"JWT\": {\n        \"Key\": \"PutYourSecretKeyHere\",\n        \"Audience\": \"AppUser\",\n        \"Issuer\": \"AuthUser\"\n      },\n      \"EmailSettings\": {\n        \"Email\": \"example@gmail.com\",\n        \"Password\": \"emailPassword\",\n        \"Host\": \"smtp.gmail.com\", //for gmail\n        \"DisplayName\": \"API Commerce\",\n        \"Port\": 587 //for gmail\n      },\n      \"Stripe\": {\n        \"PublishableKey\": \"pk_test_get_it_from_your_stripe_account\",\n        \"SecretKey\": \"sk_test_get_it_from_your_stripe_account\"\n      }\n    }\n  ```\n## Database Scheme\n![scheme](./Screens/Schema.png)\n\n### Tables:\n- ***Identity tables.***\n- ***Product.***\n- ***Category.***\n- ***Brand.***\n- ***Cart.***\n- ***CartItems***: Link the Cart table with Product table.\n- ***Order.***\n- ***OrderItems***: Link the Order table with Product table.\n- ***Wishlist.***\n- ***WishlistItems***: Link the Wishlist table with Product table.\n- ***Payment***: Contains payments the user has done and its methods.\n- ***Review***: Contains users reviewsand rates for products.\n- ***RefreshTokens***: Contains users refresh tokens.\n\n## Seeds\nProject contains data seeds as json files for `Products` `Orders` `Ctegories` `...etc` that will help you in testing endpoints.\n\n---\nStar it and feel free to ask, contribute and share it with others.\nThank you for checking out my project.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmohdali300%2Fe-commerce_webapi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmohdali300%2Fe-commerce_webapi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmohdali300%2Fe-commerce_webapi/lists"}