{"id":21101928,"url":"https://github.com/elvan/ecommerce-shop-app-frontend-angular","last_synced_at":"2026-04-12T19:45:38.891Z","repository":{"id":263694495,"uuid":"855143526","full_name":"elvan/ecommerce-shop-app-frontend-angular","owner":"elvan","description":"This project is a comprehensive e-commerce platform built with Angular, providing a full-fledged shopping experience with features such as product browsing, cart management, order processing, and an administrative dashboard for managing products and orders.","archived":false,"fork":false,"pushed_at":"2024-09-22T04:11:31.000Z","size":6022,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-21T02:44:21.496Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"TypeScript","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/elvan.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-09-10T11:40:37.000Z","updated_at":"2024-09-22T04:12:44.000Z","dependencies_parsed_at":"2024-11-20T00:03:52.647Z","dependency_job_id":null,"html_url":"https://github.com/elvan/ecommerce-shop-app-frontend-angular","commit_stats":null,"previous_names":["elvan/ecommerce-shop-app-frontend-angular"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elvan%2Fecommerce-shop-app-frontend-angular","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elvan%2Fecommerce-shop-app-frontend-angular/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elvan%2Fecommerce-shop-app-frontend-angular/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/elvan%2Fecommerce-shop-app-frontend-angular/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/elvan","download_url":"https://codeload.github.com/elvan/ecommerce-shop-app-frontend-angular/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243544535,"owners_count":20308171,"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":["angular","bootstrap","bootstrap5"],"created_at":"2024-11-19T23:50:53.838Z","updated_at":"2025-12-28T19:14:43.460Z","avatar_url":"https://github.com/elvan.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# E-Commerce Shop Angular\n\n## Description\n\nThis project is a comprehensive e-commerce platform built with Angular, providing a full-fledged shopping experience with features such as product browsing, cart management, order processing, and an administrative dashboard for managing products and orders. The project aims to deliver a seamless and interactive user experience, leveraging modern web technologies and best practices in web development.\n\n## Features\n\n### **Admin Dashboard and Catalog Management**\n\n- **Product Management**: Provides CRUD operations for managing products, including creation, updates, deletion, and stock management. The admin can easily navigate and manipulate the catalog through a user-friendly interface.\n- **Order Management**: Admins can view, process, and manage customer orders, including issuing refunds and tracking order status. A dedicated dashboard is available for order overview and detailed management.\n- **Stock Updates**: Allows real-time updates to product quantities, ensuring accurate stock levels are maintained.\n\n### **Modular Route Management**\n\n- **Lazy-Loaded Feature Modules**: The project utilizes lazy-loading for route management, splitting the application into feature modules such as account, checkout, and orders. This enhances performance by loading only the necessary modules.\n- **Dynamic Component Loading**: Admin routes and other features are loaded dynamically to improve the application's responsiveness and scalability.\n\n### **Checkout and Payment Integration**\n\n- **Stripe Payment Gateway**: Implements Stripe for secure payment processing, including token creation, payment confirmation, and error handling.\n- **Order Creation and Confirmation**: Automatically creates orders upon successful payment, with support for order tracking and detailed summaries.\n\n### **Coupon and Discount Functionality**\n\n- **Coupon Application**: Users can apply discount codes during checkout, which are validated and reflected in the order summary.\n- **Dynamic Pricing**: The system calculates discounts and updates the order total based on the applied coupon, enhancing the shopping experience.\n\n### **Real-Time Order and Notification Management**\n\n- **SignalR Integration**: Real-time notifications for order status updates and notifications. This ensures users and admins receive live updates on order progress and other critical events.\n\n### **Comprehensive Cart and Checkout System**\n\n- **Cart Management**: Full-featured cart system with add, update, and remove item functionality. Integrates with local storage to persist cart data between sessions.\n- **Checkout Flow**: Guided checkout process with address, delivery, and payment steps, ensuring a smooth user experience from cart to order completion.\n\n### **User Authentication and Route Protection**\n\n- **User Authentication**: Secure login and registration with route protection to ensure that only authenticated users can access certain pages.\n- **Role-Based Access Control**: Admins have access to specialized features and routes, protected by custom guards and directives.\n\n### **Enhanced UI and UX**\n\n- **Loading and Empty States**: Improved user experience with dynamic loading indicators and empty state components that provide helpful prompts and actions.\n- **Responsive Design**: Utilizes TailwindCSS and Angular Material to create a responsive and visually appealing interface across all devices.\n\n#### Technology Stack\n\n- **Frontend**: Angular, Angular Material, TailwindCSS\n- **Backend**: ASP.NET Core (for API integration)\n- **Payment**: Stripe API\n- **Real-Time Communication**: SignalR\n- **State Management**: RxJS\n- **Other Tools**: TypeScript, RxJS, Angular CLI\n\n## Installation\n\n### Prerequisites\n\n- **Node.js** (v14 or higher) and **npm**\n- **Angular CLI** (v12 or higher)\n- **Git**\n- **ASP.NET Core** (for backend API)\n- **Stripe Account** (for payment integration)\n\n### Environment Setup\n\n1. **Clone the repository:**\n\n   ```bash\n   git clone https://github.com/elvan/ecommerce-shop-app-frontend-angular.git\n   cd ecommerce-shop-app-frontend-angular\n   ```\n\n2. **Install dependencies:**\n\n   ```bash\n   npm install\n   ```\n\n3. **Setup environment variables:**\n   Create an `.env` file in the root directory with the following contents:\n\n   ```bash\n   STRIPE_PUBLIC_KEY=your_stripe_public_key\n   STRIPE_SECRET_KEY=your_stripe_secret_key\n   API_URL=http://localhost:5000/api\n   ```\n\n4. **Start the development server:**\n\n   ```bash\n   ng serve\n   ```\n\n   The application will be available at `http://localhost:4200`.\n\n5. **Start the backend server:**\n\n   Follow the instructions in the backend repository to start the API server.\n\n## Usage\n\n1. **Admin Dashboard:**\n\n   - Navigate to `http://localhost:4200/admin` to access the admin dashboard. You must be logged in as an admin to access this section.\n   - Use the dashboard to manage products, update stock, and handle orders.\n\n2. **Product Browsing and Cart Management:**\n\n   - Browse products on the shop page, add items to the cart, and proceed to checkout when ready.\n   - Apply coupon codes during checkout to receive discounts on your order.\n\n3. **Order Tracking and Notifications:**\n\n   - After completing an order, use the order history page to track your orders and receive real-time updates via notifications.\n\n4. **User Authentication:**\n\n   - Register or log in to manage your account, view order history, and save items to your cart.\n\nThis project is structured to provide a robust foundation for an e-commerce application, and can be extended further with additional features and customizations as needed.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Felvan%2Fecommerce-shop-app-frontend-angular","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Felvan%2Fecommerce-shop-app-frontend-angular","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Felvan%2Fecommerce-shop-app-frontend-angular/lists"}