nova-marketplace

byUfaq Diaries

Build a full-stack vehicle wrecker parts marketplace similar to Jollys Auto Parts The system should allow users to: Search for car parts by vehicle View available vehicles in yard Find parts linked to those vehicles 🎯 Core Concept (IMPORTANT) This is NOT a normal eCommerce store. πŸ‘‰ The system is based on: Vehicles = inventory containers Parts belong to vehicles Users search vehicles β†’ then find parts πŸ‘₯ User Roles 1. Public Users Search parts Browse vehicles Request quotes / buy parts 2. Admin Add/edit vehicles Add/edit parts Manage inventory View orders 🧩 Data Structure πŸš— Vehicle id make (Toyota, Ford, BMW) model (Corolla, Ranger) year engine images (multiple) arrivalDate location (yard) status (available / dismantled) πŸ”§ Part id name (Alternator, Engine, Door) category vehicleId (relation) price status (available / sold / removed) images πŸ—‚οΈ Part Categories Use these exact categories: Engine & Drivetrain Electrical Body Parts Interior Suspension & Steering Cooling & AC Brakes Wheels & Tyres Lighting πŸ” Core Features 1. Smart Search System Search by: Make Model Year Part category Show matching vehicles first Then show parts linked to those vehicles 2. Vehicle Listing Page Each vehicle should show: Images Make / Model / Year Engine Arrival date Location List of available parts 3. Parts Listing Each part should show: Name Category Price Status Vehicle it belongs to 4. Admin Dashboard Admin must be able to: Add vehicles Upload images Add parts to vehicles Update stock status Delete listings 5. Inventory Logic (VERY IMPORTANT) When a part is sold β†’ mark as β€œsold” When vehicle is dismantled β†’ all parts inactive Vehicles constantly added/removed 6. Filters (Advanced) Make Model Year range Category Price range Location 7. Notifications β€œNotify me when part available” Email alerts 8. Multi-location Support Vehicles belong to different yards Filter by location 9. Authentication Admin login Role-based access 10. Payments (Optional but recommended) Stripe integration Cart + checkout 🎨 UI/UX Requirements Clean, modern automotive design Mobile responsive Fast search experience Homepage with: Search bar Featured vehicles Categories βš™οΈ Technical Requirements Full-stack web app REST API or GraphQL Scalable database Image upload support (Cloudinary or S3) Optimised for large inventory ⚠️ Constraints / Reality Requirements Ensure system includes: Secure authentication (JWT) Input validation Protection against XSS/CSRF Scalable search (Elasticsearch if possible) Pagination for large data πŸš€ Optional Advanced Features AI part compatibility suggestions VIN-based search Barcode inventory system Mobile app support βœ… Expected Output The system should generate: Frontend UI Backend API Database schema Admin panel Fully functional search + inventory system

LandingAdminVehiclesAdminOrdersLoginAdminParts
Landing

Comments (0)

No comments yet. Be the first!

System Requirements

System Requirement Document
Page 1 of 5

nova-marketplace System Requirements Document

1. Introduction

The nova-marketplace is a full-stack vehicle wrecker parts marketplace designed to streamline the process of finding and purchasing vehicle parts. Unlike traditional eCommerce stores, this platform treats vehicles as inventory containers, allowing users to search for vehicles and then find parts linked to those vehicles. This document outlines the system requirements for the nova-marketplace, ensuring a comprehensive launch with all features included.

2. System Overview

The nova-marketplace is designed to serve both public users and administrators. Public users can search for parts, browse vehicles, and request quotes or purchase parts. Administrators have the ability to manage inventory, including adding and editing vehicles and parts, and viewing orders. The system supports multi-location inventory management, advanced search capabilities, and optional payment integration.

Page 2 of 5

3. Functional Requirements

  • As a Public User, I should be able to search for car parts by vehicle.
  • As a Public User, I should be able to view available vehicles in the yard.
  • As a Public User, I should be able to find parts linked to those vehicles.
  • As a Public User, I should be able to request quotes or buy parts.
  • As an Admin, I should be able to add/edit vehicles.
  • As an Admin, I should be able to add/edit parts.
  • As an Admin, I should be able to manage inventory.
  • As an Admin, I should be able to view orders.
  • As a User, I should be able to receive notifications when parts become available.
  • As a User, I should be able to filter vehicles and parts by location, make, model, year, category, and price range.
  • As a User, I should be able to authenticate securely.

4. User Personas

  1. Public Users

    • Can search parts, browse vehicles, and request quotes or buy parts.
  2. Admin

    • Can add/edit vehicles and parts, manage inventory, and view orders.
Page 3 of 5

5. Visuals Colors and Theme

  • primary: #1A3D6C (Deep Blue)
  • primary_light: #4A6FA5 (Light Blue)
  • secondary: #F28C28 (Amber)
  • accent: #E63946 (Vibrant Red)
  • highlight: #FFB703 (Gold)
  • bg: #F1F5F9 (Light Gray)
  • surface: rgba(255, 255, 255, 0.9)
  • text: #333333 (Dark Gray)
  • text_muted: #6B7280 (Muted Gray)
  • border: rgba(209, 213, 219, 0.5)

6. Signature Design Concept

The homepage of nova-marketplace will feature an interactive 3D garage environment where users can explore vehicles as if they are walking through a real yard. Using @react-three/fiber and @react-three/drei, users can click on vehicles to open detailed views, revealing parts available for purchase. As users hover over vehicles, subtle animations highlight parts that are in stock. The environment will dynamically adjust lighting and shadows to create a realistic and immersive experience. This interactive model not only enhances user engagement but also provides a unique way to visualize inventory.

Page 4 of 5

7. Interaction Model & Motion Direction

The landing page will utilize a "parallax" interaction model, creating a layered depth effect as users scroll. Decorative elements such as atmospheric lighting and vehicle silhouettes will move at different speeds, while the main content remains in the natural flow. This approach is ideal for creating a visually rich first impression. Internal pages like the admin dashboard and settings will adopt a "static" model for clarity and efficiency.

8. Non-Functional Requirements

  • Secure authentication using JWT.
  • Input validation to prevent errors and ensure data integrity.
  • Protection against XSS/CSRF attacks.
  • Scalable search capabilities, potentially using Elasticsearch.
  • Pagination for handling large datasets efficiently.

9. Tech Stack

  • Frontend: React for Web
  • Backend: Python, FastAPI
  • Database: MySQL or MariaDB, using alembic for migrations
  • Image Upload: Cloudinary or S3
  • Search: Elasticsearch (if possible)
  • Authentication: JWT
  • Optional Payments: Stripe integration
Page 5 of 5

10. Assumptions and Constraints

  • The system will support multi-location inventory management.
  • The platform must be optimized for large inventories.
  • The design will be mobile responsive to cater to a wide range of devices.
  • The system should be scalable to accommodate future growth.

11. Glossary

  • JWT: JSON Web Token, a compact, URL-safe means of representing claims to be transferred between two parties.
  • XSS: Cross-Site Scripting, a security vulnerability typically found in web applications.
  • CSRF: Cross-Site Request Forgery, a type of malicious exploit of a website.
  • Elasticsearch: A distributed, RESTful search and analytics engine capable of addressing a growing number of use cases.

This document provides a comprehensive overview of the nova-marketplace system requirements, ensuring a robust and feature-rich launch.

Landing design preview
Login: Sign In
AdminDashboard: View Overview
AdminVehicles: Manage Vehicles
AdminVehicles: Add Vehicle
AdminVehicles: Upload Images
AdminVehicles: Edit Vehicle
AdminParts: Manage Parts
AdminParts: Add Part
AdminParts: Update Stock Status
AdminOrders: View Orders
AdminOrders: Process Order
AdminInventory: Manage Locations