Skip to content

Full Stack E-Commerce Marketplace. Built with the Next.js 14 App Router, tRPC, TypeScript, Payload & Tailwind

Notifications You must be signed in to change notification settings

mar19a/EcxtaticStore

Repository files navigation

Ecxtatic Store

Screenshot 2024-06-06 at 4 36 05 PM

Ecxtatic Store is a sophisticated fullstack e-commerce platform designed to deliver a seamless shopping experience for users. It incorporates cutting-edge technologies and frameworks to ensure robustness, efficiency, and scalability.

App Walkthrough

Look at Editor Picks, New Arrivals, or Bestsellers for Merch or Digital Assets: Screenshot 2024-06-06 at 4 36 20 PM Screenshot 2024-06-06 at 4 36 29 PM

User friendly sign in or sign up forms:

Screenshot 2024-06-06 at 4 36 44 PM Screenshot 2024-06-06 at 4 36 52 PM

Browse through products and look at their details:

Screenshot 2024-06-06 at 4 59 26 PM Screenshot 2024-06-06 at 4 38 06 PM

Add Products to Shopping cart and pay for them using either Google pay, link, or by inserting your credit card information:

Screenshot 2024-06-06 at 4 38 56 PM Screenshot 2024-06-06 at 4 39 37 PM Screenshot 2024-06-06 at 4 39 53 PM

Users are able to sell their products in the website aswell. They're subject to admin's approval:

Screenshot 2024-06-06 at 4 40 57 PM Screenshot 2024-06-06 at 4 41 44 PM Screenshot 2024-06-06 at 4 41 58 PM

Admins are able to toggle Light or Dark mode for the website:

Screenshot 2024-06-06 at 4 41 17 PM Screenshot 2024-06-06 at 4 41 26 PM

Admins can see files store such as Media, Users, Orders, and Products. Making it easy to find information quick:

Screenshot 2024-06-06 at 4 41 44 PM Screenshot 2024-06-06 at 4 42 24 PM Screenshot 2024-06-06 at 4 42 57 PM

Verification and Order Confirmation Emails:

Screenshot 2024-06-06 at 5 09 28 PM Screenshot 2024-06-06 at 11 53 37 AM

Overview

This platform serves as a comprehensive digital marketplace, leveraging modern technologies to provide a rich user experience. From frontend to backend, it harnesses the power of Next.js, React, TypeScript, Tailwind CSS, and a myriad of other tools to offer a smooth e-commerce solution.

Purpose

The primary motivation behind creating Ecxtatic Store was to develop a modern and efficient e-commerce solution that addresses common challenges faced by both merchants and consumers. As an avid tech enthusiast and software developer, I wanted to create an application that not only demonstrates my skills but also serves a practical purpose. Building Ecxtatic Store allowed me to delve deep into full-stack development, integrating various technologies to create a cohesive and robust application.

What I Learned

Technical Skills

  • Frontend Development: Using Next.js and React helped me understand server-side rendering, static site generation, and building highly interactive user interfaces. Tailwind CSS was instrumental in creating responsive and visually appealing designs quickly.
  • Backend Development: Working with Node.js, Express, and MongoDB provided insights into building secure, scalable, and efficient backend services. I learned to manage data effectively and implement RESTful APIs.
  • State Management: Zustand and React-hook-form taught me the importance of efficient state management and form handling in complex applications.
  • Data Fetching and Caching: React-query showed me how to handle data fetching and caching, which significantly improved the application's performance and user experience.
  • Payment Integration: Implementing Stripe for payment processing was a valuable experience, as it involved understanding and ensuring secure transaction workflows.

Soft Skills

  • Problem-Solving: Building Ecxtatic Store required solving numerous technical challenges, enhancing my problem-solving abilities.
  • Project Management: Managing the project from inception to deployment taught me the importance of planning, organizing, and executing tasks effectively.
  • Collaboration: Although this was a solo project, I learned the value of using collaborative tools like Git and GitHub for version control and project management.

Tech Stack

  • Frontend: Next.js 14, React, TypeScript, Tailwind CSS, React-query, Zustand, Shadcn-ui
  • Backend: Node.js, Express, MongoDB, Payload CMS, tRPC
  • Utilities: Zod, React-hook-form, Lucide-react, React-email, Nodemailer, Resend, Sonner, Swiper
  • Payment Processing: Stripe

Key Features

  • Robust and Scalable Architecture: Built with Next.js, React, and TypeScript for exceptional performance and scalability.
  • Responsive Design: Tailwind CSS ensures rapid and consistent styling across the platform, adapting seamlessly to various screen sizes.
  • Efficient Data Management: React-query manages data fetching and caching efficiently, providing a smooth user experience even with large datasets.
  • Flexible Data Storage: MongoDB handles the storage and retrieval of e-commerce data with flexibility and efficiency.
  • Secure API Development: Express is used for developing secure and performant API endpoints, enabling seamless communication between the frontend and backend.
  • User-friendly Content Management: Payload CMS provides a content management system for merchants to manage their products, categories, and other content.
  • API Gateway: tRPC handles authentication, authorization, and routing requests to the appropriate microservices.
  • Seamless Payment Processing: Stripe facilitates secure and seamless payment processing, ensuring a fraud-free and user-friendly payment experience.
  • Strict Data Validation: Zod enforces strict data validation rules, ensuring data integrity and preventing errors during data processing.
  • State Management: Zustand handles state management across the application, ensuring data consistency and reactivity.
  • Form Handling: React-hook-form simplifies form handling and validation, making it easy to build user-friendly forms.
  • Custom Components: Shadcn-ui provides a collection of custom React components for enhancing the application's UI and UX.
  • Charts and Visualizations: Lucide-react enables the creation of interactive and data-driven charts, providing merchants with valuable insights into their sales performance.
  • Email Notifications: React-email facilitates the sending of email notifications to customers and merchants, enhancing communication and user engagement.
  • Email Sending: Nodemailer is integrated with React-email for sending emails through various email providers.
  • Resend Mechanism: Resend provides a convenient mechanism for resending emails that failed to deliver due to technical issues.
  • Date and Time Manipulation: Sonner simplifies date and time manipulations, ensuring accurate and consistent date-related operations.
  • Product Carousels: Swiper facilitates the creation of engaging and responsive product carousels, enhancing the product discovery experience.

License

This project is licensed under the MIT License.

About

Full Stack E-Commerce Marketplace. Built with the Next.js 14 App Router, tRPC, TypeScript, Payload & Tailwind

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published