Skip to content

SurriyaLuavan/Ecommerce-Payment-Workflow

Repository files navigation

Audiophile - An E-Commerce Web Application

The Audiophile is an modern e-commerce website developed for an electronic gadget store. Built using Next.js, TypeScript, Redux, Stripe, and MongoDB, this project offers a comprehensive solution for a seamless online shopping experience. Users can explore a range of high-quality audio equipment, add items to their cart, and securely complete the checkout process using Stripe. The website incorporates features such as product filtering, cart management, user authentication, order history, and an account page. With its user-friendly interface and robust functionality, the Audiophile FrontEndMentor Challenge showcases the effective utilization of modern technologies to create a sophisticated e-commerce platform.

Features

  • Product Listing: The Audiophile website provides users with a comprehensive catalog of audio products, allowing them to browse through various items and access detailed information about each product.

  • Checkout Process: The Audiophile website streamlines the checkout process, enabling users to proceed smoothly through the payment steps. Users can provide shipping details and complete payments securely using the Stripe payment processing platform.

  • Cart Management: The website offers a robust cart management system, empowering users to add products to their cart, view the items in the cart, update quantities as needed, and remove items seamlessly.

  • User Authentication: Users can create their accounts, securely log in, and manage their profile information. This feature ensures a personalized experience, with users being able to access their saved preferences and settings.

  • Order History: Users have the ability to view their order history, allowing them to keep track of their past purchases and reference previous transactions.

  • Account Page: The website offers an intuitive account page where users can update their profile information, including their address and password. This feature allows users to manage and maintain their personal details conveniently.

Quick demo of Audiophile E-Commerce in action

Screen Record GIF

Live Site URL : Demo

Technologies Used

Frontend Technologies

  • Next.js Framework: An open-source React framework used for building server-rendered web applications.
  • TypeScript: A statically typed superset of JavaScript that helps catch errors during development and improves code quality.
  • Redux: A predictable state container for JavaScript applications, utilized here to manage the global state for the shopping cart and address form.
  • Stripe: A popular payment processing platform that ensures secure and reliable online transactions.

Backend Technologies

  • MongoDB: A NoSQL database offering flexibility and scalability for storing and retrieving data.
  • NextAuth: A flexible authentication library used in the backend with Next.js, providing various authentication methods and integrations.

Development Tools and Libraries

  • Formik - A popular library for building forms in React
  • Yup - A JavaScript validation library
  • Styled Components: A library for writing CSS-in-JS, allowing for styling React components with ease and flexibility.

What I Learned

Some of the key takeaways from this project include:

  • Redux: I gained proficiency in using Redux, a predictable state container for JavaScript applications. It allowed me to manage the global state efficiently, providing a centralized data store for the shopping cart and address form in this project.
  • TypeScript: I learned how to use TypeScript, a statically typed superset of JavaScript. TypeScript helped me catch errors during development and improve code quality by providing type checking and better tooling support.
  • Styled Components: I explored the usage of Styled Components, a library for writing CSS-in-JS. It enabled me to create and manage component-specific styles, improving modularity and reusability of styles within the project.
  • Stripe: I integrated Stripe, a popular payment processing platform, into the application. By working with Stripe, I gained experience in handling secure and reliable online transactions, ensuring a smooth payment flow for users.
  • Building a Full-Stack Application: I successfully developed a full-stack web application using Next.js as the primary framework for both frontend (including SSR and SSG) and backend (utilizing NextAuth for authentication). This experience enhanced my understanding of building scalable and efficient applications using a unified technology stack.

Throughout this project, the hands-on experience in building a full-stack application using these technologies has further strengthened my proficiency as a developer.

Roadmap for Future Development

Some potential features that will be added in the future include:

  • Optimizing website performance to ensure faster loading times and smoother user experience.
  • Adding an Admin Dashboard to monitor and manage orders, providing an efficient backend interface for order tracking and management.

Author

About

This is an Ecommerce Web App developed using Next.js

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published