HOCO B2B
Team tasksAnis

WEB-02 — Reseller web — home, catalog, product, favorites

Home with banners, catalog with advanced sidebar filters (facets with counts), search, product detail, favorites — guest browsing without prices.

FieldDetails
Task codeWEB-02
PhaseP1 — V1 build & integration
Product scopeV1
StatusPlanned
StartMon 30 Nov 2026
DueTue 1 Dec 2026
ResponsibleAnis — Full-stack developer
Co-responsible—
Effort1 person-day(s) planned · 5 from scratch · size S
Area · appReseller web · web
Depends onWEB-01
UnblocksWEB-03
Milestones—

Summary

Home with banners, catalog with advanced sidebar filters (facets with counts), search, product detail, favorites — guest browsing without prices.

Description

Browsing is where resellers and guests spend most time (cahier §5, §5.1, §5.2; CAT-07…CAT-09, CAT-11, CAT-12, PRM-05, AUTH-10). This task delivers the web home (RW-02) with banners, the daily offer countdown, popular categories, recommended products and, when signed in, account tiles; the catalog with advanced sidebar filters (RW-03) — category and sub-category, brand, per-category attributes, availability, promotion, new arrivals and a price range for signed-in users — combinable, with counts from catalog.facets and synced to the URL; search with suggestions; the product detail (RW-04) with gallery, specifications and attributes, the reseller's own price or the guest lock « Créez un compte pour voir les prix », availability En stock / En rupture only, quantity rules and similar products; and favorites (RW-05). Public pages are server-rendered so they load fast and can be shared, without prices for guests. Out of scope: cart and checkout (WEB-03).

Subtasks

#SubtaskOwner
1RW-02 home from catalog.home: banners carousel, daily offer with countdown, popular categories, recommended products, account tiles (orders in progress, balance) when signed inAnis
2RW-03 sidebar filters: category/sub-category tree, brand, attribute filters rendered by type (list, number range with unit, yes/no), availability, promotion, new arrivals, price range (signed-in only)Anis
3Facet counts from catalog.facets with multi-select behaviour, active-filter chips, « Effacer les filtres », URL query sync, mobile filter drawerAnis
4Search box with catalog.products.suggest, results page with sort (pertinence, nouveautés, prix for signed-in), cursor pagination / infinite scrollAnis
5Product card and RW-04 detail: gallery, specs and attributes, description, price for the customer type or lock, availability pill, min/step/max quantity selector, add to cart, share linkAnis
6Similar products and RW-05 favorites (add/remove, list)Anis
7Server rendering and caching of public pages (guest data), metadata and Open Graph images for shared product linksAnis
8Design QA of RW-02 to RW-05 including the filter sidebarAkram

Deliverables

  • apps/web/src/app/[locale]/{page.tsx,catalog/page.tsx,catalog/[categorySlug]/page.tsx,products/[productId]/page.tsx,favorites/page.tsx,search/page.tsx}
  • apps/web/src/features/catalog/ (filter sidebar, facet chips, product card, quantity selector)

Acceptance criteria

  • A guest sees products, promotions and banners but no price anywhere, and the add-to-cart is replaced by the sign-up prompt (AUTH-10)
  • Combining sub-category, brand and two attribute filters returns the same results as the mobile app and shows updated counts (CAT-12)
  • Availability is shown only as En stock / En rupture; no quantity is displayed (STK-07)
  • A signed-in DEMI_GROS reseller sees the demi-gros price on cards and detail (PRC-02)
  • Search and filtered catalog pages render in under 3 seconds on a throttled 4G profile (CAT-07, NFR-01)
  • Filter state survives reload and can be shared by URL

Requirements covered

RequirementTitleRelease
CAT-07Catalog browsing and search by name, reference or brand, with sorting; results in under 3 secondsV1
CAT-08Product detail: gallery, specifications, description, prices, availability, quantity limits, similar/complementary products, shareV1
CAT-09FavoritesV1
CAT-11Home merchandising: popular categories and recommended products (rules-based)V1
PRM-05Home banners and daily offer carousel with countdownV1
CAT-12Advanced, combinable filters on web and mobile: price range, category and sub-category, brand, attributes (power, connector, cable length, colour…), availability, promotion, new arrivals — with result countsV1
AUTH-10Guest mode: the reseller app and web can be browsed without an account; prices stay hidden until the visitor signs up and declares a customer typeV1

Screens

ScreenNameApp
RW-02HomeRW
RW-03Catalog with advanced sidebar filters & searchRW
RW-04Product detailRW
RW-05FavoritesRW

API surface

Test measures

  • Playwright e2e: guest and signed-in runs of the same filter combination
  • Lighthouse performance check on home, catalog and product detail (mobile profile)
  • Component tests for attribute filter renderers

Risks

  • Caching public pages could leak a signed-in price into guest HTML — cache only guest renders and fetch prices client-side or per session

KPI

  • Delivered by Tue 1 Dec 2026 within 1 person-day(s).
  • Every acceptance criterion above demonstrated before hand-off; linked requirements' acceptance criteria pass.
  • Zero open critical defects, permission gaps or data-integrity regressions at sign-off.

Generated from content/plan/tasks.json by scripts/generate-team-tasks.mjs. Dates are computed by the scheduler (Sunday–Thursday weeks, holidays excluded) — change the plan, not this page.

On this page