How millipo14/sillage works
Sillage is a React/Redux fragrance-selection storefront. Shoppers browse and filter a perfume catalog, inspect a fragrance, add it to a cart, and proceed through ordering; the README also documents preference-based selection, subscriptions, accounts, reviews, and administration. src/App.jsx establishes the routes, while sampled components show dispatches into Redux thunks and slices for API-backed data. Several major feature implementations and the store setup were not sampled, so their internal wiring is intentionally left unspecified.
Main entry points: App.jsx Route application · PerfumePage.jsx Perfume detail · authSlice.js Authentication state · perfumeSlice.js Perfume data
Components 25
Application entry
- Route application
src/App.jsx - Shared page shell
src/routes/Root.jsx
Shopping and selection
- Catalog and filters
src/Components/Catalog/Catalog.jsx - Filter dialog
src/Components/FilterModal/FilterModal.jsx - Perfume cards
src/Components/Perfume/Perfume.jsx - Perfume detail
src/Components/PerfumePage/PerfumePage.jsx - Preference quiz
src/Components/QuizPage/QuizPage.jsx - Recommendations
src/Components/Recommendations/Recommendations.jsx - Sample selection
src/Components/SelectionSample/SelectionSample.jsx
Accounts and reviews
- Customer profile
src/Components/Profile/Profile.jsx - Login and registration
src/routes/AuthPage.jsx - Reviews
src/Components/Reviews/Reviews.jsx - Admin dashboard
src/Components/AdminPage/AdminPage.jsx
Orders and subscriptions
- Shopping cart
src/Components/Cart/Cart.jsx - Order history
src/Components/OrdersList/OrdersList.jsx - Subscriptions
src/Components/Subscription/Subscription.jsx
Redux state and API
- Perfume data
src/features/perfumeSlice.js - Cart state
src/features/cartSlice.js - Subscription state
src/features/subscriptionSlice.js - Authentication state
src/features/authSlice.js - Review state
src/features/reviewSlice.js - Admin analytics state
src/features/adminAnalyticsSlice.js
Other components
- Shopper
- REST API
- Browser local storage
Connections 27
- Shopper → Route application: opens
- Route application → Shared page shell: routes through
- Route application → Catalog and filters: routes to
- Route application → Perfume detail: routes to
- Route application → Shopping cart: routes to
- Route application → Preference quiz: routes to
- Route application → Recommendations: routes to
- Route application → Sample selection: routes to
- Route application → Subscriptions: routes to
- Route application → Customer profile: protects route
- Route application → Login and registration: routes to
- Route application → Admin dashboard: guards route
- Route application → Reviews: routes to
- Catalog and filters → Filter dialog: opens
- Filter dialog → Perfume data: dispatches filters
- Perfume cards → Cart state: adds item
- Perfume cards → Subscription state: adds sample
- Perfume detail → Perfume data: fetches fragrance
- Perfume detail → Cart state: adds item
- Perfume detail → Review state: fetches reviews
- Reviews → Review state: submits review
- Login and registration → Authentication state: authenticates
- Perfume data → REST API: requests data
- Review state → REST API: requests reviews
- Authentication state → REST API: requests account
- Admin analytics state → REST API: requests analytics
- Authentication state → Browser local storage: reads and writes