A high-end minimalist, Japandi-inspired e‑commerce storefront prototype built with React and TypeScript, featuring localized state architecture and interactive checkout simulations.
Repository: AadhityaS-2124/La_Foret
Repo ID: 1279291272
Description: A high-end minimalist, Japandi-inspired e-commerce storefront prototype built with React and TypeScript, featuring localized state architecture and interactive checkout simulations.
Language composition:
| Language | Percentage |
|---|---|
| TypeScript | 85.2% |
| HTML | 12.3% |
| JavaScript | 2.0% |
| Other | 0.5% |
La Forêt is a polished storefront prototype that demonstrates a minimal, hard‑edge Japandi design language applied to an e‑commerce experience. It’s intended for designers and frontend engineers who want a reference implementation of an editorial storefront: responsive layouts, a componentized UI, design tokens in Tailwind, and lightweight, type‑safe React + TypeScript architecture.
- Languages: TypeScript (primary), HTML, JavaScript
- Framework / runtime: React 18 + Vite (TypeScript)
- Styling: Tailwind CSS + PostCSS (custom design tokens in tailwind.config.js)
- Notable libs / tooling: Vite, Tailwind CSS, TypeScript, React
La-For-t/
├── public/ static assets
├── src/ app source (components, views, utilities)
│ ├── components/ Header.tsx, Footer.tsx, shared UI
│ ├── views/ page-level view components (HomeView, ProductView, etc.)
│ ├── App.tsx app wiring, router & layout
│ └── main.tsx React entry (mount)
├── index.html HTML entry
├── code.html design / prototyping reference (previewable)
├── DESIGN.md full design system & tokens
├── tailwind.config.js Tailwind theme with La Forêt tokens
├── vite.config.ts Vite configuration
├── tsconfig*.json TypeScript config
├── package.json scripts & dependencies
└── README.md this file
- App entry (src/main.tsx) mounts the React tree.
- src/App.tsx configures routing and the main layout: Header, Footer, page Views (Home, Objects, Product details, About, Journal, checkout modals).
- Components are organized into reusable UI pieces (Header, Footer, CartModal, ProductCard, etc.). The design system tokens live in tailwind.config.js and DESIGN.md; code.html contains an HTML prototype of the design language.
- Tailwind builds the design tokens into utilities at runtime for development (cdn/dev) or during Vite production builds.
Prerequisites:
- Node.js 16+ (LTS recommended)
- npm (or yarn)
Install & run:
git clone https://github.com/AadhityaS-2124/La-For-t.git
cd La-For-t
npm install
npm run dev # starts Vite dev server (HMR) — default port 5173Build & preview production:
npm run build
npm run preview # serves the production build locallyLint:
npm run lint- npm run dev — start development server (vite)
- npm run build — compile TypeScript and build with Vite
- npm run preview — preview production build
- npm run lint — ESLint check (configured to treat warnings strictly)
- tailwind.config.js — full design tokens (colors, fonts, spacing, radius)
- DESIGN.md — comprehensive design spec (typography, palette, spacing, components)
- src/main.tsx — app bootstrap
- src/App.tsx — routing, layout composition and view mapping
- src/components/Header.tsx — site header/navigation (responsive, mobile menu)
- src/components/Footer.tsx — footer, newsletter form, links
- code.html — static prototype demonstrating the design system in a single file
- Grid unit: 4px (all spacing multiples of 4px)
- Max container width: 1440px
- Gutter: 24px
- Radius: 0px (sharp, rectilinear)
- Primary font: Playfair Display (headlines)
- Body font: Inter (light for airy UI)
- Accent color: muted sage (
#7A827A) used sparingly for CTAs or banners
Modify tokens in tailwind.config.js to adjust color, spacing, or typography across the site.
- Typography scales and color contrasts are tuned for legibility (DESIGN.md).
- No decorative depth (shadows/gradients) — depth via tonal layering and lines.
- Vite + modern bundling yields performant, quick HMR during development and small production bundles.
- Styles missing: confirm Tailwind content globs include
index.htmlandsrc/**/*.{ts,tsx}and that you restarted the dev server after config changes. - Port conflict:
npm run dev -- --port 3000 - TypeScript compile errors: run
npm run buildto see full type checks - Slow dev rebuilds: clear Vite cache (
rm -rf node_modules/.vite) and restart
- Colors / tokens: edit
tailwind.config.js→ rebuild dev server. - Fonts: replace Google Fonts lines in
index.htmland adjust fontFamily tokens in tailwind config. - Add new views: create a view under
src/views/, import intoApp.tsx, and add a route mapping.
- "Where is the header navigation logic (mobile menu + shipping banner) implemented?" — check
src/components/Header.tsx. - "How are design tokens defined and applied to components?" — inspect
tailwind.config.jsandDESIGN.md. - "How does the product detail → checkout flow demo work?" — review
src/views/ProductDetailView(entry inApp.tsx) and any Cart/Checkout modal components.
This repo is maintained as a personal/prototype project. If you’d like to propose changes:
- Open an issue describing the change or improvement.
- Fork → create a feature branch → make changes → submit a pull request with screenshots and a short rationale.
Reference / study use permitted. Please request permission for reuse of La Forêt branding or direct commercial use of the design assets.
Aadhitya S — https://github.com/AadhityaS-2124