Uwitondanishema Muslim

e-comm-team-axel25-(fe&be)

e-comm-team-axel25-(fe&be)

Image not found ERD Image not found

Backend

This repository contains a fully featured e‑commerce platform implemented by a collaborative development team.

Image not found

Image not found

Image not found

Coverage Status

CircleCI

This e‑commerce backend API (Team Axel) is implemented in TypeScript for Node.js. It provides typical storefront backend features: user authentication (including two‑factor and Google), product management, shopping cart and checkout/order flows, notifications, reviews, wishlist functionality, and a chat component. The repository also includes database migrations, seed scripts, and automated tests.

Key responsibilities and features

  • User authentication and account flows: registration, login, password reset, two‑factor authentication, and Google OAuth.
  • Product catalogue management: create/read/update product endpoints and search utilities.
  • Shopping cart and checkout: cart management and order creation (Stripe integration available).
  • Reviews and ratings for products.
  • Notifications and real‑time chat via Socket.io.
  • Wishlist management.
  • Background jobs for routine maintenance (cron jobs).
  • OpenAPI / Swagger documentation is provided in the docs directory.

Tech stack

  • Node.js with TypeScript
  • Express
  • Sequelize ORM with PostgreSQL (pg / pg-hstore)
  • Testing: Jest and SuperTest
  • Linting and formatting: ESLint and Prettier, with Husky and lint-staged
  • Package manager: pnpm
  • Real‑time communication: Socket.io
  • Payment processing: Stripe
  • CLI tooling: sequelize-cli for migrations and seed data
  • Documentation: Swagger / OpenAPI YAML files Swagger (OpenAPI)

Frontend

The frontend application, “team-axel-e-commerce-frontend”, is implemented with React and TypeScript.

  • Built with React and TypeScript, utilising Redux Toolkit for state management.
  • Bundled with Webpack and managed with pnpm.
  • Provides user-facing features such as product browsing, cart management, and checkout, as well as seller-facing interfaces for product management.
  • Integrates with backend services via API slices and uses Firebase where applicable.
  • Includes UI and UX tooling: Tailwind CSS, Framer Motion, react-toastify, react-hook-form, Storybook for component development, and testing with Jest and Testing Library.

Primary features include a home page with a product showcase, product listing and card components, authentication flows with protected routes, cart and checkout management, and notification handling. The application employs React Router v6 for client-side routing.

Image not found Image not found

Frontend | Backend