Skip to content

Michael-Moris/E-Commerce-App

Repository files navigation

πŸ›’ FreshCart – E-Commerce Web Application

Welcome to FreshCart, a modern and responsive e-commerce web application designed to deliver a seamless online shopping experience using the power of Angular, Tailwind CSS, and Flowbite plugins. πŸš€


🎯 Project Overview

FreshCart is a fully-featured e-commerce platform that replicates real-world online shopping functionalities with a sleek and intuitive UI. It includes advanced features such as cart and wishlist management, order tracking, user authentication, and much more – all built with scalability, performance, and user experience in mind.


πŸ”₯ Key Features

  • πŸ–₯️ Frontend: Angular 19 + Tailwind CSS + Flowbite UI
  • βš™οΈ State Management: Services, Observables, Interceptors, and Guards
  • πŸ” Authentication: JWT-based Login/Register with route protection
  • πŸ“¦ Cart & Wishlist: Add, update, remove products in real-time
  • πŸ” Search & Filtering: Advanced product search and category filters
  • πŸ“‘ Pagination: Smooth navigation using ngx-pagination
  • πŸ–ΌοΈ Image Carousel: NgOwl Carousel for product image previews
  • πŸ“¦ Order Status Tracking: Real-time delivery status updates based on order time
  • ✨ Animations: Angular Animations for enhanced user interaction
  • ⏳ Loading Experience: Custom SVG spinners for smoother UX
  • ⚠️ Global Error Handling: Centralized error handling via HTTP Interceptors
  • πŸ”” User Notifications: Toastr notifications for feedback alerts
  • βœ… Form Handling: Reactive Forms with full validation
  • ⚑ Lazy Loading Modules: Optimized application performance
  • πŸ§ͺ API Integration & Testing: Built and tested using Postman
  • 🧠 Scalable Code Structure: Modular, maintainable, and clean architecture

🧠 Tech Stack

  • Angular 19
  • Tailwind CSS
  • Flowbite UI
  • Ngx Pagination
  • NgOwl Carousel
  • Toastr
  • Reactive Forms
  • Postman
  • JWT Authentication

πŸ“‚ Folder Structure

src/
β”œβ”€β”€ app/
β”‚   β”œβ”€β”€ core/              β†’ Global services, interceptors, guards
β”‚   β”œβ”€β”€ shared/            β†’ Reusable components, pipes, interfaces
β”‚   β”œβ”€β”€ modules/           β†’ Feature modules (auth, cart, wishlist, etc.)
β”‚   β”œβ”€β”€ components/        β†’ Common layout & UI components
β”‚   └── assets/            β†’ Icons, images, SVGs

πŸš€ Installation & Setup

To run this project locally, follow these steps:

# 1️⃣ Clone the repository
git clone https://github.com/Michael-Moris/E-Commerce-App.git
cd E-Commerce-App

# 2️⃣ Install dependencies
npm install

# 3️⃣ Run the development server
ng serve

# 4️⃣ Open in browser
http://localhost:4200

βœ… Make sure you have Angular CLI installed globally:

npm install -g @angular/cli

ℹ️ Optional: Setup environment variables if needed (e.g., for API base URLs)


πŸ’‘ Contribution

Want to contribute or suggest improvements? Feel free to fork this repo, submit pull requests, or open issues. Your feedback is always welcome! πŸ’™


πŸ“œ License

This project is licensed under the MIT License.

About

πŸ›’ FreshCart – A full-featured Angular e-commerce app with cart, wishlist, order tracking, and secure authentication. πŸ›οΈ

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors