E-commerce for fitness and sports equipment

Overview

Fitnest

E-commerce for fitness and sports equipment.

References

Links

Frontend

Production:

Local:

Backend

Production:

  • https://api.kontenbase.com/query/api/v1/19877131-8b2f-4e7a-91fc-db45066dea23

Design

Main Features

  • Products showcase
  • Detail product
  • Show products by brand
  • Filter products by category
  • Search products
  • See cart page
  • Add to cart
  • Checkout cart
  • Authorization user

Team Members

Name Role GitHub URL
Fikri Alwan R. Lead, Frontend, Design @fikrialwan
Nur Ikhwan Frontend, Design @ikhwanmachmud
Muhamad Agung Nur R. Frontend, Design @agnuramdan
Mohammad Farizan Frontend, Design @mohammadfarizan

Tech Stack

Commerce

  • HTML
  • CSS
    • Tailwind CSS
  • JavaScript
    • TypeScript
  • Node.js & npm
  • React
    • Vite v3
      • React Router v6
  • Data Fetching
    • REST API: swr & axios
  • State Management
    • Recoil
  • Misc
    • Prettier
    • ESLint

Development

Install dependencies:

npm install

Run server in development mode:

npm run dev

Build for production:

npm run build

Start in production mode:

npm start

Deployment

This project is deployed on Netlify, you can check the website in the about section or visit fifa-fitnest.netlify.app.

REST API Endpoints

HTTP Endpoint Description
GET /brands?$lookup=* Get all brands
POST /brands/ Create brand
PATCH /brands/:id Patch brand
DELETE /brands/:id Delete brand
GET /products?$lookup=* Get all products
POST /products/ Create product
PATCH /products/:id Patch product
DELETE /products/:id Delete product
GET /categories?$lookup=* Get all categories
POST /categories/ Create category
PATCH /categories/:id Patch category
DELETE /categories/:id Delete category
GET /sizeCategory?$lookup=* Get all sizeCategory
POST /sizeCategory/ Create sizeCategory
PATCH /sizeCategory/:id Patch sizeCategory
DELETE /sizeCategory/:id Delete sizeCategory
GET /carts?$lookup=* Get all carts
POST /carts/ Create cart
PATCH /carts/:id Patch cart
DELETE /carts/:id Delete cart
GET /checkout?$lookup=* Get all checkout
POST /checkout/ Create checkout
PATCH /checkout/:id Patch checkout
DELETE /checkout/:id Delete checkout

Data Model

Product

{
  "_id": "abc123",
  "brandId": "nike123",
  "name": "Nike Tiempo",
  "descripton": "Some details about\nthe product",
  "imageUrl": "https://fitnest/imags/filename.jpeg",
  "price": 1500000,
  "createdAt": "",
  "updatedAt": ""
}

Cart

{
  "_id": "abc123",
  "productId": ["productID"],
  "userId": "user123",
  "isCheckout": false,
  "createdAt": "",
  "updatedAt": ""
}

Brand

{
  "_id": "abc123",
  "name": "Adidas",
  "description": "Some details about\nthe brand",
  "imageUrl": "https://fitnest/images/filename.jpeg",
  "createdAt": "",
  "updatedAt": ""
}

Category

{
  "_id": "abc123",
  "productId": "nike123",
  "sizeQuantityId": "l123",
  "userId": "user123",
  "isCheckout": false,
  "createdAt": "",
  "updatedAt": ""
}

SizeQuantity

{
  "_id": "abc123",
  "productId": "nike123",
  "size": "40",
  "quantity": 50,
  "createdAt": "",
  "updatedAt": ""
}

Checkout

{
  "_id": "6354f63fdadc42808a40f60d",
  "address": "Jalan Raya",
  "carts": ["6354f63fdadc42808a40f60d"],
  "city": "Bandung",
  "createdAt": "2022-10-23T08:08:14.012Z",
  "name": "Agung",
  "phone": 8573947183201,
  "postalCode": 40291,
  "province": "Jawa Barat",
  "userId": "6353a32cdadc42808a40f59a"
}

User

{
  "_id": "abc123",
  "name": "First Last",
  "email": "[email protected]",
  "password": "sadw1231ceasdav4qwq",
  "createdAt": "",
  "updatedAt": ""
}
You might also like...

... a contemporary perspective on how to integrate B2C Commerce and the Salesforce Customer 360 Platform to power frictionless customer experiences in the B2C domain.

Salesforce B2C Commerce / Customer 360 Platform Integration Introduction Salesforce B2C Commerce / CRM Sync is an enablement solution designed by Sale

Dec 9, 2022

👜 Next-gen e-commerce built using Remix, Chakra UI, GraphQL and web3

👜 Future Store About Here at New Store, we have the best in women's, men's, bags, shoes, accessories and more. Unmissable discounts and installments.

Dec 26, 2022

E-Commerce solution for security of databases and transactions.

commerce_new_era AMAÇ Amacımız günümüzde E-Ticaret sitelerinde bulunan sahte ürünlerin ve mağduriyetlerin önüne geçmektir. Bunu yapmak için Blockchai

May 14, 2022

A wee E-Commerce website powered by Stripe, Auth0, Strapi and Next.js

This is a Next.js project bootstrapped with create-next-app. Getting Started First, run the development server: npm run dev # or yarn dev Open http://

Dec 19, 2022

It is a solo Project and In this repo I try to build a E-Commerce full-stack website with MERN stack technologies. For Practice purpose.

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: np

Aug 3, 2022

An E-commerce product page, responsive and dynamic

An E-commerce product page, responsive and dynamic

This is a solution to the E-commerce product page challenge on Frontend Mentor. Frontend Mentor challenges help you improve your coding skills by building realistic projects.

Jul 3, 2022

E-commerce website using Laravel, Tailwindcss and Alpine.js

About Laravel Laravel is a web application framework with expressive, elegant syntax. We believe development must be an enjoyable and creative experie

Dec 12, 2022

🔑 Keagate is an open-source, high-performance alternative to popular cryptocurrency payment gateways such as Coinbase Commerce, CoinGate, BitPay, NOWPayments, CoinRemitter, CoinsPaid and more.

🔑 Keagate is an open-source, high-performance alternative to popular cryptocurrency payment gateways such as Coinbase Commerce, CoinGate, BitPay, NOWPayments, CoinRemitter, CoinsPaid and more.

⛩️ Keagate – A High-Performance Cryptocurrency Payment Gateway 🚧 This project is actively in development 🚧 Table of Contents About the Project Purpo

Jan 3, 2023

A minimal e-commerce store using Gatsby, SANITY, Stripe, Use-Shopping-Cart and Netlify

🏪 Gatsby Starter Stripemart Like a supermarket but for Stripe. No ongoing monthly costs. Perfect for artists, creators and independent builders doing

Nov 14, 2022
Hemsida för personer i Sverige som kan och vill erbjuda boende till människor på flykt

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: np

null 4 May 3, 2022
Kurs-repo för kursen Webbserver och Databaser

Webbserver och databaser This repository is meant for CME students to access exercises and codealongs that happen throughout the course. I hope you wi

null 14 Jan 3, 2023
NewsStation is a news app which can be used to grab daily news bites. If you are interested in news whether politics, business, entertainment, general, health, science, sports and technology news NewsStation is for you!

This is a NewsStation WebApp Project Using News API NewsStation is a news app which can be used to grab daily news bites. If you are interested in new

Ravi Chauhan 2 Feb 7, 2022
Find a local sports match that fits your skill level. Built with NextJS and AWS.

MatchUp MatchUp Find local sport matches Beta walkthrough About The Project Looking for a fun and easy way to meet up and play sports with locals in y

MatchUp 7 Oct 27, 2022
Natura is a women-only gym that provides a safe, supportive environment for women of all shapes, sizes, and fitness levels

Natura is a women-only gym that provides a safe, supportive environment for women of all shapes, sizes, and fitness levels. Their goal is to help women feel confident and comfortable in their own skin, and to encourage them to lead healthy, active lifestyles.

Monique 9 Nov 30, 2022
Fitness Platform with authentication and more (still in development) 🏋️‍♂️🏋️

LB Fitness readme Fitness platform with authentication containing workout plans, diet and blogs. Explore the docs » View Demo Table of Contents About

Lucas Bendix Jolibois 10 Dec 19, 2022
A solution for highlights extraction for sports games by The Unknowns.

Sportlight by The Unknowns Next.js, Express.js, NLTK, symbl.ai Inspiration - Problem Statement #3 by Experion Technologies Publishing highlights after

Arjun Sivaraman 5 Apr 19, 2022
A dashboard for managing orders and inventory for a wordpress e-commerce site which has woo commerce plugin installed

WordPressWooCommerceDashboard - A dashboard for managing orders and inventory for a wordpress e-commerce site which has woo commerce plugin installed. This program provides shipping tracking for Delhivery.

Vikrama Reddy 1 Jan 3, 2022
Simple shopping cart prototype which shows how React components and Redux can be used to build a friendly user experience with instant visual updates and scalable code in e-commerce applications.

This simple shopping cart prototype shows how React components and Redux can be used to build a friendly user experience with instant visual updates a

Ivan Kuznietsov 3 Feb 8, 2022
👕 The project is an E-Commerce called DevShop that simulates a sales site which has men's and women's clothing, jewelry and electronics.

DEVSHOP • E-COMMERCE O projeto é um E-Commerce chamado DevShop que simula um site de vendas a qual possui roupas masculinas, femininas, joalherias e e

Kayke Alves Fujinaka 18 Sep 19, 2022